Playbook: การตอบสนอง SIM Swap / SIM Hijacking
ID: PB-46
ความรุนแรง: วิกฤต | ประเภท: Credential Access / Social Engineering
MITRE ATT&CK: T1111 (MFA Interception), T1078 (Valid Accounts)
Trigger: User รายงาน (โทรศัพท์ไม่มีสัญญาณ), MFA SMS ล้มเหลว, carrier แจ้งเตือนฉ้อโกง, account takeover หลังโอนหมายเลขโทรศัพท์
⚠️ วิกฤต: SIM swap bypass SMS-based MFA ทั้งหมด ผู้โจมตีเอาหมายเลขโทรศัพท์ไป รับ OTPs ทั้งหมด และเข้าควบคุม email, ธนาคาร, และ crypto
SIM Swap Attack Chain
graph LR
A["1️⃣ OSINT/สังคม\nรวบรวมข้อมูลเหยื่อ"] --> B["2️⃣ ติดต่อ Carrier\nปลอมเป็นเหยื่อ"]
B --> C["3️⃣ โอน SIM\nหมายเลขอยู่บน SIM ใหม่"]
C --> D["4️⃣ ดัก MFA\nรับ SMS OTPs ทั้งหมด"]
D --> E["5️⃣ Account Takeover\nEmail, ธนาคาร, crypto"]
E --> F["6️⃣ ขโมยเงิน\nWire transfer, crypto drain"]
style A fill:#ffcc00,color:#000
style C fill:#ff6600,color:#fff
style E fill:#ff4444,color:#fff
style F fill:#660000,color:#fff
แผนผังผลกระทบ SIM Swap
graph TD
SIM["📱 SIM Swap สำเร็จ"] --> SMS["รับ SMS ทั้งหมด\nOTPs, verification codes"]
SMS --> Email["เข้าควบคุม Email\nReset password ผ่าน SMS"]
SMS --> Bank["เข้าถึงธนาคาร\nOTP สำหรับ wire transfers"]
SMS --> Crypto["Crypto Wallet\nBypass SMS 2FA"]
SMS --> Social["Social Media\nAccount hijacking"]
Email --> Chain["🔴 Chain Attack\nEmail → reset ทุกบัญชี"]
Bank --> Loss["💀 สูญเสียเงิน\nขโมยโดยตรง"]
Crypto --> Loss
style SIM fill:#ff4444,color:#fff
style Chain fill:#cc0000,color:#fff
style Loss fill:#660000,color:#fff
Decision Flow
graph TD
Alert["🚨 สงสัย SIM Swap"] --> Indicator{"ตัวบ่งชี้?"}
Indicator -->|"โทรศัพท์ไม่มีสัญญาณ"| Phone["User รายงาน:\nโทรไม่ได้ ส่ง SMS ไม่ได้"]
Indicator -->|"MFA ล้มเหลว"| MFA["SMS OTPs ไม่มาถึง\nReset password ที่ไม่คาดคิด"]
Indicator -->|"Account lockout"| Lockout["หลายบัญชี\npassword ถูกเปลี่ยน"]
Phone --> Verify["📞 ติดต่อ carrier\nยืนยัน SIM transfer"]
MFA --> Verify
Lockout --> Verify
Verify --> Confirmed{"SIM ถูกย้าย?"}
Confirmed -->|ใช่| Emergency["🔴 ฉุกเฉิน\nล็อกทุกบัญชีทันที"]
Confirmed -->|"ไม่ — ปัญหาเครือข่าย"| Network["แก้ไขปัญหาการเชื่อมต่อ"]
Emergency --> Carrier["โทร carrier:\nFreeze + reverse swap"]
Carrier --> Accounts["ล็อกทุกบัญชีที่เชื่อมโยง\nเปลี่ยน password, revoke sessions"]
style Alert fill:#ff4444,color:#fff
style Emergency fill:#cc0000,color:#fff
การประสานงานตอบสนอง
sequenceDiagram
participant User
participant SOC as SOC/IT Security
participant Carrier as Mobile Carrier
participant IAM as IAM Team
participant Bank as Banking/Finance
User->>SOC: 🚨 โทรศัพท์ไม่มีสัญญาณ บัญชีถูกล็อก
SOC->>Carrier: ยืนยัน SIM swap — เป็นที่ได้รับอนุญาตหรือไม่?
Carrier->>SOC: ยืนยัน SIM swap ที่ไม่ได้รับอนุญาต
SOC->>Carrier: Emergency freeze + reverse swap
SOC->>IAM: ล็อกทุกบัญชีที่เชื่อมกับหมายเลขโทรศัพท์
IAM->>IAM: ปิด SMS MFA, เปลี่ยนเป็น FIDO2/app
SOC->>Bank: แจ้ง — อาจมีการขโมยเงิน/crypto
Bank->>Bank: Freeze transactions, flag account
SOC->>User: ให้วิธี MFA ใหม่ที่ปลอดภัย
เปรียบเทียบความเสี่ยง MFA
graph TD
subgraph "🔴 เสี่ยงต่อ SIM Swap"
SMS["SMS OTP"]
Voice["Voice call OTP"]
end
subgraph "🟡 ป้องกันบางส่วน"
TOTP["Authenticator App\n(TOTP)"]
Push["Push Notification\n(ถ้าโทรศัพท์ถูกขโมย)"]
end
subgraph "🟢 ทนทานต่อ SIM Swap"
FIDO["FIDO2/WebAuthn\nHardware key"]
Passkey["Passkeys\nDevice-bound"]
end
style SMS fill:#cc0000,color:#fff
style Voice fill:#cc0000,color:#fff
style FIDO fill:#00aa00,color:#fff
style Passkey fill:#00aa00,color:#fff
Timeline
gantt
title SIM Swap Response Timeline
dateFormat HH:mm
axisFormat %H:%M
section Detection
User รายงานปัญหา :a1, 00:00, 5min
ยืนยันกับ carrier :a2, after a1, 15min
section Containment
Freeze หมายเลขโทรศัพท์ :a3, after a2, 10min
ล็อกทุกบัญชี :a4, after a3, 15min
section Recovery
Reverse SIM swap :a5, after a4, 30min
Reset passwords ทั้งหมด :a6, after a5, 60min
เปลี่ยน MFA เป็น FIDO2 :a7, after a6, 30min
section Investigation
ประเมินความเสียหายทางเงิน :a8, after a7, 120min
1. การดำเนินการทันที (15 นาทีแรก)
| # |
การดำเนินการ |
ผู้รับผิดชอบ |
| 1 |
ติดต่อ mobile carrier — ยืนยัน SIM swap ที่ไม่ได้รับอนุญาต |
User / SOC |
| 2 |
ขอ carrier freeze หมายเลขและ reverse swap |
SOC |
| 3 |
ล็อกทุกบัญชีที่ใช้หมายเลขโทรศัพท์สำหรับ MFA |
IAM Team |
| 4 |
ตรวจ email สำหรับ password reset notifications |
SOC T1 |
| 5 |
แจ้งธนาคาร/การเงินสำหรับ potential fraud |
Finance |
| 6 |
เปลี่ยน passwords บนทุกบัญชีสำคัญ |
User / IAM |
2. รายการตรวจสอบ
สืบสวนผ่าน Carrier
ประเมินผลกระทบบัญชี
3. การควบคุม (Containment)
| ขอบเขต |
การดำเนินการ |
| หมายเลขโทรศัพท์ |
Carrier freeze + reverse swap |
| Email |
เปลี่ยน password + revoke sessions |
| ธนาคาร |
Freeze account + รายงาน fraud |
| Crypto |
โอนไป cold wallet ถ้ายังเข้าถึงได้ |
| MFA |
เปลี่ยนทุกบัญชีจาก SMS เป็น FIDO2/app |
4. หลังเหตุการณ์ (Post-Incident)
| คำถาม |
คำตอบ |
| ผู้โจมตีได้ข้อมูลเหยื่ออย่างไร? |
[OSINT/phishing/breach] |
| การยืนยันตัวตนของ carrier เพียงพอหรือไม่? |
[ประเมิน] |
| บัญชีไหนถูกโจมตี? |
[รายการ] |
| สูญเสียเงินเท่าไหร่? |
[จำนวน] |
| SMS MFA ถูกเลิกใช้หรือยัง? |
[สถานะ] |
6. Detection Rules (Sigma)
title: Multiple MFA SMS Delivery Failures
logsource:
product: iam
service: authentication
detection:
selection:
event_type: 'mfa_sms_delivery_failed'
timeframe: 15m
condition: selection | count(target_user) > 3
level: high
เอกสารที่เกี่ยวข้อง
References