Skip to content

คู่มือปฏิบัติงาน SOC Tier 1

รหัสเอกสาร: RB-T1-001
เวอร์ชัน: 2.0
อัปเดตล่าสุด: 2026-02-16
เจ้าของ: SOC Manager
กลุ่มเป้าหมาย: Tier 1 / SOC Analyst มือใหม่


🆕 วันแรกของคุณ — Checklist เตรียมตัว

ก่อนจะเริ่มดู alert แรก ต้องเตรียมสิ่งนี้ให้ครบ:

□ SIEM access (read + search) — Splunk / Elastic / Sentinel
□ EDR console access (read-only ขั้นต่ำ)
□ ระบบ Ticket (สร้าง + อัปเดต)
□ เข้าห้อง chat SOC แล้ว (Slack/Teams #soc-alerts, #soc-general)
□ VPN + jump box ตั้งค่าแล้ว
□ Bookmark เก็บแล้ว:
    - VirusTotal, AbuseIPDB, URLhaus, Shodan
    - Wiki ภายใน / FP runbook
    - Runbook นี้ (เปิดไว้ตลอด!)
□ ดูปฏิทินกะแล้ว — รู้เวลาและ rotation
□ เบอร์ติดต่อฉุกเฉินบันทึกแล้ว (T2 Lead, IR Lead, SOC Manager)
□ อ่านแล้ว: IR Framework, Severity Matrix, Escalation Matrix
□ Shadow analyst รุ่นพี่อย่างน้อย 1 กะเต็ม

ขั้นตอนการทำงานประจำวัน

08:00  เริ่มกะ → อ่าน handoff notes → เช็ค dashboard
08:15  ตรวจสอบ alert queue → จัดลำดับตามความรุนแรง
08:30  เริ่ม process alerts (เป้าหมาย: 12–15 alerts/ชม.)
       ↓ วนซ้ำ ↓
       Triage → สืบสวน → Escalate หรือ Close
12:00  Review กลางวันกับ T2 lead
16:00  เตรียม handoff notes
16:30  ส่งมอบกะ
graph LR
    Start["🕗 เริ่มกะ"] --> Handoff["📋 อ่าน Handoff"]
    Handoff --> Dashboard["📊 เช็ค Dashboard"]
    Dashboard --> Queue["📥 Alert Queue"]
    Queue --> Triage["⚡ Triage"]
    Triage --> Investigate["🔍 สืบสวน"]
    Investigate --> Decision{TP หรือ FP?}
    Decision -->|TP| Escalate["🚨 Escalate T2"]
    Decision -->|FP| Close["✅ ปิด + บันทึก"]
    Escalate --> Queue
    Close --> Queue
    Queue --> EOD["🕓 จบกะ → Handoff"]

Alert Triage — 5 นาทีแรก

ขั้นที่ 1: อ่าน Alert

ตรวจอะไร มองหาอะไร
แหล่ง เครื่องมือไหนแจ้ง? (EDR, SIEM, IDS, email gateway)
ความรุนแรง ระบบจัดลำดับอย่างไร? (Critical/High/Medium/Low)
ระบบ เครื่องไหนโดน? (server, workstation, cloud)
ผู้ใช้ ใครเกี่ยวข้อง? (พนักงาน, service account, admin)
เวลา เกิดขึ้นเมื่อไร? (ในเวลางาน? วันหยุด?)

ขั้นที่ 2: ตรวจบริบท (2 นาที)

□ เป็น false positive ที่รู้จักไหม? → เช็ค FP runbook
□ ระบบอยู่ในช่วง maintenance ไหม? → เช็คปฏิทินเปลี่ยนแปลง
□ user/host นี้เคยมี alert คล้ายกันหรือเปล่า? → ดูย้อน 7 วัน
□ ซ้ำกับ incident ที่เปิดอยู่ไหม? → เช็ค ticket

ขั้นที่ 3: ตัดสินใจ

graph TD
    Alert["🚨 Alert ใหม่"] --> Read["อ่านรายละเอียด Alert"]
    Read --> Known{"เป็น FP ที่รู้จัก?"}
    Known -->|ใช่| CloseFP["❌ ปิดเป็น FP + บันทึก"]
    Known -->|ไม่แน่ใจ| Enrich["Enrich IOCs"]
    Enrich --> IOCMatch{"IOC ตรงกับ TI feed?"}
    IOCMatch -->|ใช่| TP["✅ True Positive → Escalate T2"]
    IOCMatch -->|ไม่| Context{"บริบทผิดปกติ?"}
    Context -->|"นอกเวลา / VIP / Lateral"| TP
    Context -->|พฤติกรรมปกติ| FP["❌ False Positive → ปิด + Tune"]
    Alert --> Severity{"เป็น P1/Critical?"}
    Severity -->|ใช่| Immediate["🔴 ESCALATE ทันที"]
ตัดสินใจ ทำอะไร เวลา
True Positive สร้าง ticket → Escalate T2 15 นาที
⚠️ ต้องสืบเพิ่ม Enrich IOC → Pivot → ตัดสินใจ 30 นาที
False Positive บันทึกเหตุผล → Close → อัปเดต tuning list 5 นาที
🔴 P1 วิกฤต Escalate ทันที ไป T2/IR Lead 0 นาที

🚨 ต้อง Escalate เสมอ เมื่อเจอ:

  • สัญญาณ Ransomware (เข้ารหัสไฟล์, ลบ shadow copy)
  • ข้อมูลกำลังรั่ว (upload ขนาดใหญ่ไป IP นอก)
  • บัญชีผู้บริหารถูกยึด
  • หลายเครื่องโดนพร้อมกัน
  • Production server ถูกบุกรุก
  • Malware ทำงานสำเร็จ
  • Alert จาก OT/ICS
  • ตรวจพบ C2 beaconing
  • เจอเครื่องมือขโมย credential (Mimikatz, secretsdump)
  • ไม่เข้าใจ alert หลังจาก 30 นาที

Escalation Flow

graph TD
    T1["👤 Tier 1 Analyst"] -->|"P3/P4 Alert"| Self["จัดการ + ปิด"]
    T1 -->|"P2 หรือไม่แน่ใจหลัง 30 นาที"| T2["👥 Tier 2 Analyst"]
    T1 -->|"P1 วิกฤต"| IRLead["🚨 IR Lead"]
    T2 -->|"ยืนยัน incident"| IRLead
    T2 -->|"Advanced threat / APT"| T3["🔬 Tier 3 / Threat Hunter"]
    IRLead -->|"ยืนยันข้อมูลรั่ว"| Legal["⚖️ Legal + PDPA"]
    IRLead -->|"Insider threat"| HR["👔 HR"]
    IRLead -->|"กระทบ Infra"| IT["🖥️ IT Ops"]
    IRLead -->|"กระทบธุรกิจ"| CISO["🛡️ CISO / ผู้บริหาร"]

    style T1 fill:#4CAF50,color:#fff
    style T2 fill:#FF9800,color:#fff
    style IRLead fill:#f44336,color:#fff
    style T3 fill:#9C27B0,color:#fff

Alert ที่พบบ่อย & วิธีจัดการ

🎣 Phishing → PB-01

1. ห้ามคลิก link/เปิดไฟล์แนบ
2. ตรวจ email header → ปลอมแปลงไหม? (SPF/DKIM fail?)
3. ตรวจ URL → VirusTotal, URLhaus
4. ค้นหาว่าคนอื่นได้ email เดียวกันไหม
5. ถ้าอันตราย → Block sender + URL → Escalate T2

🔐 Failed Login (Brute Force) → PB-04

1. IP มาจากไหน? — ภายในหรือภายนอก?
2. นับจำนวนครั้งและช่วงเวลา
3. มี login สำเร็จหลังจาก fail หรือเปล่า?
4. ถ้า external + >10 ครั้ง → Block IP
5. ถ้า login สำเร็จหลัง fail → อาจถูก compromise → Escalate

🦠 Malware / EDR → PB-03

1. ตรวจชื่อ detection → malware ประเภทใด?
2. ถูก block หรือทำงานสำเร็จ?
3. ดู process tree → อะไร launch มัน?
4. ถ้า EXECUTE สำเร็จ → Escalate ทันที
5. ถ้า BLOCK → ยืนยัน quarantine → หาเครื่องอื่น

🌐 Web Attack / WAF → PB-10

1. ประเภทโจมตี → SQLi, XSS, RCE?
2. Response code → 200 (อาจสำเร็จ) vs 403 (WAF block)
3. IP ต้นทาง → scanner ทั่วไป หรือโจมตีเฉพาะเจาะจง?
4. ถ้า response=200 + payload ดูสำเร็จ → Escalate T2
5. ถ้า block → Log + monitor

☁️ Cloud Alert (AWS/Azure) → PB-16

1. action อะไรที่ trigger alert?
2. IAM user/role ไหน?
3. จาก IP/region ใด?
4. เป็น admin action ที่รู้จักไหม?
5. ถ้า region ผิดปกติ + privileged action → Escalate T2

💀 Ransomware → PB-02

1. ไฟล์ถูกเข้ารหัสไหม? ตรวจนามสกุลไฟล์
2. Shadow copy ถูกลบ? (vssadmin delete shadows)
3. มี ransom note ไหม?
4. ESCALATE ทันที — อย่ารอ
5. Isolate เครื่องถ้าทำได้ผ่าน EDR

🔀 Lateral Movement → PB-12

1. เครื่องที่โดนกำลังเชื่อมต่อเครื่องอื่นไหม?
2. ตรวจ PsExec, WMI, RDP จากต้นทางผิดปกติ
3. Service account ถูกใช้แบบ interactive ไหม?
4. หลายเครื่อง + IOC เดียวกัน = Escalate ทันที
5. บันทึกเครื่องทั้งหมดที่โดนให้ T2

📤 Data Exfiltration → PB-08

1. ข้อมูลออกปริมาณเท่าไร? ไปที่ไหน?
2. ปลายทางเป็น cloud backup ที่รู้จัก หรือ IP แปลก?
3. เกิดระหว่างเวลาทำงานโดย user ปกติไหม?
4. ตรวจ DLP alert สำหรับ data classification
5. ถ้าข้อมูลสำคัญ + ออกภายนอก → Escalate ทันที

👤 Insider Threat → PB-14

1. พฤติกรรมผิดปกติ — นอกเวลา, ปริมาณมาก
2. เข้าถึงข้อมูลนอกหน้าที่ไหม?
3. ใช้ USB/external storage ไหม?
4. ห้ามแจ้งผู้ต้องสงสัย
5. Escalate T2 + แจ้ง SOC Manager (อาจต้องเกี่ยว HR)

🌊 DDoS → PB-09

1. Service กระทบจริงไหม? ตรวจ uptime monitoring
2. Traffic volume — เกิน baseline เท่าไร?
3. มาจาก IP เดียว หรือกระจาย?
4. แจ้ง NOC/Network team ทันที
5. Escalate T2 เพื่อประสานงาน

วิธีแยก False Positive (FP Cheat Sheet)

เรียนรู้ pattern FP ที่พบบ่อย:

Alert Type FP ที่พบบ่อย วิธียืนยัน
Brute force Helpdesk reset password IP + user ตรงกับ helpdesk
Malware AV flag admin tools ปกติ ตรวจ approved tool list
C2 beaconing Heartbeat ไป SaaS/CDN ตรวจ domain: Akamai, Cloudflare
Data exfil Backup job, cloud sync ตรวจ scheduled task + ปลายทาง
Impossible travel VPN + cloud login ตรวจ VPN session
Web attack Security scanner (Qualys, Nessus) ตรวจ IP กับรายการ scanner
Priv escalation Admin maintenance ปกติ ตรวจ change calendar
Failed login Service account rotation ตรวจ rotation schedule

Template บันทึก FP

เหตุผล FP: [ทำไมเป็น false positive]
Pattern: [อธิบาย pattern ที่เจอซ้ำ]
แนะนำ: □ Tune alert  □ เพิ่ม exclusion  □ Accept risk
อนุมัติโดย: [ชื่อ T2 analyst]

ตัวอย่าง Query SIEM

Splunk

# หา alert ทั้งหมดของ host (24 ชม.ล่าสุด)
index=alerts host="HOSTNAME" earliest=-24h | stats count by alert_name, severity

# Failed login จาก IP เฉพาะ
index=auth action=failure src_ip="X.X.X.X" earliest=-7d
| stats count by user, dest, _time | sort -count

# ปริมาณ traffic ขาออกตามปลายทาง
index=network direction=outbound src_ip="INTERNAL_IP" earliest=-24h
| stats sum(bytes_out) as total_bytes by dest_ip
| sort -total_bytes | head 20

# Process ที่รันบน endpoint
index=edr host="HOSTNAME" earliest=-48h
| stats count by process_name, parent_process, user | sort -count

# ค้น email — คนอื่นได้ phishing เดียวกันไหม?
index=email subject="*SUSPICIOUS SUBJECT*" earliest=-7d
| stats count by recipient, src_sender, action

Elastic (KQL)

# Alert สำหรับ host
event.kind: "alert" AND host.name: "HOSTNAME"

# Failed login
event.outcome: "failure" AND event.category: "authentication"
  AND source.ip: "X.X.X.X"

# Transfer ขนาดใหญ่
network.direction: "outbound" AND source.bytes > 100000000

# Process execution
event.category: "process" AND host.name: "HOSTNAME"
  AND process.name: ("powershell.exe" OR "cmd.exe" OR "wscript.exe")

IOC Enrichment

ประเภท IOC ตรวจอะไร เครื่องมือฟรี
IP Address Reputation, Geolocation, ASN VirusTotal, AbuseIPDB, Shodan
Domain WHOIS, DNS, Reputation VirusTotal, URLhaus, DomainTools
File Hash Malware database VirusTotal, MalwareBazaar, Hybrid Analysis
URL Reputation, Redirect chain VirusTotal, URLScan.io, URLhaus
Email Breach databases, reputation Have I Been Pwned, EmailRep

VirusTotal Quick Check

IP:   https://www.virustotal.com/gui/ip-address/{IP}
Hash: https://www.virustotal.com/gui/file/{HASH}
URL:  https://www.virustotal.com/gui/url/{URL}

คำสั่ง CLI ตรวจ IOC

# VirusTotal IP lookup
curl -s "https://www.virustotal.com/api/v3/ip_addresses/{IP}" \
  -H "x-apikey: $VT_API_KEY" | jq '.data.attributes.last_analysis_stats'

# AbuseIPDB check
curl -s "https://api.abuseipdb.com/api/v2/check?ipAddress={IP}" \
  -H "Key: $ABUSEIPDB_KEY" | jq '.data.abuseConfidenceScore'

# Quick WHOIS
whois {DOMAIN} | grep -E "Registrar|Creation|Name Server"

ตาราง Log Source

ดู log อะไร ตอบคำถามอะไร?

คำถาม Log Source อยู่ที่ไหน
ใครเข้าระบบ? เมื่อไร? Authentication logs AD/Azure AD/Okta
Process อะไรรัน? EDR telemetry CrowdStrike/Defender/SentinelOne
เข้าเว็บอะไร? Proxy/DNS logs Web proxy, DNS server
ดาวน์โหลดไฟล์อะไร? Proxy + EDR Web proxy + endpoint
ข้อมูลรั่วออกไหม? Firewall/DLP Firewall, DLP gateway
รับ email อะไร? Email gateway Exchange/O365/Proofpoint
มีอะไรเปลี่ยนบน server? Windows Event Log Event ID 4688, 4624, 4625
API อะไรถูกเรียก? Cloud audit log CloudTrail/Azure Activity/GCP
Rule อะไร trigger? IDS/IPS Suricata/Snort/Palo Alto
ช่องโหว่ถูกโจมตีไหม? WAF + App logs WAF, application server

Windows Event ID สำคัญ

Event ID ความหมาย
4624 Login สำเร็จ
4625 Login ไม่สำเร็จ
4648 Login ด้วย explicit credentials
4688 Process ใหม่ถูกสร้าง
4720 สร้าง user account ใหม่
4732 เพิ่ม user เข้า security group
7045 ติดตั้ง service ใหม่
1102 Audit log ถูกล้าง ⚠️

Template บันทึก Ticket

ทุก alert ที่ดูต้องบันทึก:

## สรุป Alert
- Alert ID: [จาก SIEM]
- เวลา: [alert เกิดเมื่อไร]
- เครื่องมือ: [EDR/SIEM/IDS/อื่นๆ]
- ระบบที่โดน: [hostname/IP]
- ผู้ใช้: [username]
- ประเภท: [phishing/malware/brute-force/อื่นๆ]

## ขั้นตอนสืบสวน
1. [ตรวจอะไรก่อน]
2. [พบอะไร]
3. [บริบทเพิ่มเติม]

## IOC
- IP: x.x.x.x (VT: X/90)
- Hash: abc123... (VT: X/70)
- Domain: evil.com (จดเมื่อวาน)

## ตัดสินใจ
- [x] True Positive → Escalate T2 (ticket #XXX)
- [ ] False Positive → ปิด (เหตุผล: scanner ที่รู้จัก)
- [ ] ต้องสืบเพิ่ม

## สิ่งที่ทำ
- Block IP ที่ firewall
- Quarantine file บน endpoint
- แจ้งผู้ใช้

SLA ตาม Severity

Severity Response Time Triage Time Escalation Deadline
🔴 Critical (P1) ≤ 5 นาที ≤ 15 นาที ทันที
🟠 High (P2) ≤ 10 นาที ≤ 30 นาที ≤ 1 ชม.
🟡 Medium (P3) ≤ 30 นาที ≤ 60 นาที ≤ 4 ชม.
🟢 Low (P4) ≤ 60 นาที ≤ 4 ชม. กะถัดไป

Alert Source → Severity Mapping

Alert Source Severity เริ่มต้น ทำอะไรก่อน
EDR — Malware execute 🔴 Critical Isolate + Escalate
EDR — Malware blocked 🟡 Medium ยืนยัน quarantine
SIEM — Failed logins (>10) 🟡 Medium ตรวจ user + Lock
DLP — ข้อมูลสำคัญรั่ว 🔴 Critical Block + Escalate
Firewall — Port scan 🟢 Low Monitor + Log
IDS — Exploit attempt 🟠 High Block IP + สืบสวน
Email — Phishing detected 🟡 Medium เช็คขอบเขต + Block
Cloud — Root/admin action 🟠 High ยืนยันตัวตน + action

ตัวชี้วัดประสิทธิภาพ (KPIs)

Metric เป้าหมาย วิธีปรับปรุง
Alert ที่ดู/ชม. 12–15 ใช้ keyboard shortcuts, bookmark tools
Mean Time to Triage ≤ 10 นาที ทำตาม 5-minute checklist
False Positive Rate < 30% ศึกษา FP cheat sheet
Escalation Accuracy > 90% ไม่แน่ใจ → escalate
Ticket Documentation 100% ใช้ template — ทุกครั้ง
SLA Compliance > 95% ดู severity → ตั้งนาฬิกา
Shift Handoff Completion 100% ใช้ handoff template

Shift Handoff Checklist

ก่อนจบกะ:

□ Triage alert ครบ (ไม่มี alert ค้าง >30 นาที)
□ Incident ที่เปิดอยู่ อัปเดตสถานะล่าสุด
□ Escalated items ยืนยันว่า T2 รับแล้ว
□ Handoff notes เขียนแล้ว:
  - จำนวน alert ที่ดูไป
  - Incident ที่ยังดำเนินอยู่
  - สิ่งผิดปกติหรือน่ากังวล
  - ระบบที่กระทบ
□ Screenshot dashboard ถ้าเจอ anomaly

Handoff Notes Template

=== Shift Handoff: [วันที่] [กะ] ===
Analyst: [ชื่อ]

✅ ปิดแล้ว: [N] alerts
⏳ ค้าง:   [N] tickets
🔴 Incident ที่กำลังดำเนินอยู่: [รายการ หรือ "ไม่มี"]

📝 สิ่งสำคัญ:
  - [สิ่งที่กะถัดไปต้องรู้]
  - [ระบบที่กระทบ / scan ที่กำลังรัน]

⚠️ ระวัง:
  - [alert ที่คาดว่าจะเกิดซ้ำ]
  - [escalation ที่รอ response]

สิ่งที่ควรทำ / ไม่ควรทำ

✅ ควรทำ ❌ ไม่ควรทำ
ถามเมื่อไม่แน่ใจ ปล่อย alert ค้าง >30 นาที
บันทึกทุกอย่าง ปิด alert โดยไม่เขียน note
Escalate ทันทีถ้าเป็น P1 พยายามจัดการ P1 คนเดียว
ตรวจ alert ที่เกี่ยวข้อง ดู alert แบบแยกส่วน
ใช้ playbook พึ่งแต่ความจำ
อัปเดต status สม่ำเสมอ เงียบหายระหว่าง incident
จำกัดเวลาสืบสวน ใช้เวลา 2 ชม.กับ alert Low
ยืนยัน IOC หลายแหล่ง เชื่อ VT score ตัวเดียว
แจ้ง FP ซ้ำเพื่อ tuning ปิด FP เดิมซ้ำทุกวัน

รายชื่อติดต่อ

บทบาท ติดต่อเมื่อ
T2 Analyst alert ที่แก้ไม่ได้ใน 30 นาที
IR Lead Incident P1/P2 ที่ยืนยันแล้ว
SOC Manager ปัญหา operational, tool ล่ม
IT Ops ปัญหา server/network ระหว่างสืบสวน
HR กรณี insider threat
Legal ยืนยัน data breach, ต้องแจ้ง PDPA

เอกสารที่เกี่ยวข้อง