الفرق الزرقاء — الدفاعأساسي75mL17

SOC Analyst Day-1 — تتعمل إزاي أول يوم

الـ shift و triage و tickets و التسليم لزميلك

#SOC#Triage#SIEM#Tier 1#Handoff

إيه اللي بيعمله محلل الـ SOC فعلاً؟

الـ SOC شغال 24/7. خد بالك..

- طب أنا أول يوم في الشغل، هوقف الهاكرز يعني؟؟

يا نجم الجيل.. متوقّع كالعادة. شغلتك أول يوم مش "أوقف الهاكرز". مش "كل alert تجيب الفريق كله". ولا "تكتب detections جديدة". شغلتك تفرز. ده حقيقي ولا لأ؟ شفناه قبل كده؟ يستاهل إن Tier-2 يصحى من نومه الساعة 3 الصبح؟ وبعدها توثّق اللي شفته و إزاي.

تشبيه — شرح مبسط
طوارئ المستشفى. الممرض على الباب مش بيعمل عمليات — بيقرر مين يدخل دلوقتي، مين يستنى، ومين يتحوّل لمستشفى تاني. ده بالظبط Tier-1.
Target 2013 — قصة بتتدرّس
FireEye طبّ Target بـ alert في 30 نوفمبر 2013 إن في malware اسمه "trojan.POSRAM" بيشتغل على point-of-sale terminals. الـ analyst بصّ على الـ alert.. وقفله. بعد 19 يوم اتسرّبت بيانات 40 مليون كارت. الـ alert اللي اتقفل بكسل = 200 مليون دولار خسائر مباشرة + الـ CEO اتفصل. الـ alert كان صح. اللي قفله ما عملش الـ 5W+H. نقطة.

هرم الأدوار في الـ SOC

Tier-1 — Triage
بيستقبل الـ alerts من SIEM/EDR. بيقرر: false positive, benign, escalate. متوسط 5-15 دقيقة لكل تذكرة. ممكن 50-200 تذكرة في المناوبة. شغل وش.
Tier-2 — Investigation
بياخد اللي رفعه Tier-1 و يدخل في التفاصيل: قراءة logs، شجرة العمليات، رسم timeline. هو اللي بيقول "حادث ولا لأ".
Tier-3 — IR / Hunt
Incident Response و Threat Hunting. بيقود الحوادث الحقيقية، يكتب detections جديدة، و يشتغل مع CTI و forensics.
SOC Manager + Engineers
الـ Engineers بيبنوا الـ detections و بيضبطوا الأدوات. الـ Manager ماسك الـ SLAs، تقارير الإدارة، و التعامل مع باقي الفرق (Legal, IT, Product).

المناوبة — أول 8 ساعات شغل

نموذج تشغيل محترم
  1. 15 دقيقة قبل ما تبدأ — اقرا الـ handoff من المناوبة اللي قبلك. إيه المفتوح؟ إيه اللي محتاج متابعة؟
  2. بص على الـ dashboards — صحة المصادر (SIEM ingestion، EDR coverage)، الـ alerts المفتوحة، أي Major Incident شغال.
  3. راجع الـ threat intel اليومي — فيه حملة جديدة بتضرب القطاع بتاعك؟ IOCs جديدة؟
  4. اشتغل في الـ queue — مرتب بالأولوية. متختارش الأسهل عشان تخلص بدري.
  5. وثّق كل حاجة — كل query، كل ملاحظة، كل قرار. القاعدة: لو مشيت دلوقتي، زميلك يقدر يكمّل ولا لأ؟
  6. قبل ما تخلص — اكتب handoff واضح: قفلت إيه، فاضل إيه، إيه محتاج متابعة.

منهجية الفرز — 5W+H قبل أي قرار

أي alert لازم يرد على الأسئلة دي قبل ما تقرر تقفله أو ترفعه:

  • What — أنهي rule طنّت؟ معناها إيه؟
  • Who — أنهي يوزر/جهاز/IP؟ ده طبيعي منه ولا غريب؟
  • When — التوقيت بالظبط. في ساعات الشغل؟ النمط ده شفناه قبل كده؟
  • Where — أنهي شبكة، أنهي نظام، أنهي subnet؟
  • Why — فيه سبب مشروع؟ change ticket؟ نشاط يوزر معروف؟
  • How — المؤشر وصل ازاي؟ السلسلة بدأت منين؟
قاعدة دهبية
"True positive لحد ما يثبت العكس" أحسن بكتير من "false positive لحد ما يثبت العكس". متقفلش تذكرة من الكسل — اقفلها بدليل بس.

SIEM Queries بتستخدمها كل يوم — ابدأ بدول

Splunk SPL

splunk
# تسجيل دخول فاشل متكرر ثم ناجح من نفس IP (brute force ناجح)
index=windows EventCode=4625 OR EventCode=4624
| transaction src_ip startswith="EventCode=4625" endswith="EventCode=4624" maxspan=10m
| where eventcount > 5
| table _time src_ip user host

# تنفيذ PowerShell مع تشفير base64
index=sysmon EventCode=1 CommandLine="*-EncodedCommand*" OR CommandLine="*-enc *"
| eval decoded=tostring(base64decode(replace(CommandLine, ".*-[Ee]nc(?:odedCommand)?\s+(\S+).*", "\1")))
| table _time host user CommandLine decoded

Microsoft Sentinel KQL

kql
// تواصل مع IP في threat intel feed
let badIPs = externaldata(IP:string) [@"https://feed.example.com/bad-ips.txt"];
DeviceNetworkEvents
| where TimeGenerated > ago(24h)
| where RemoteIP in (badIPs)
| project TimeGenerated, DeviceName, InitiatingProcessFileName, RemoteIP, RemotePort

// تسجيل دخول مستحيل (impossible travel)
SigninLogs
| where ResultType == 0
| summarize Locations = make_set(LocationDetails.countryOrRegion), Count=count() by UserPrincipalName, bin(TimeGenerated, 1h)
| where array_length(Locations) > 1

EDR — إزاي تقرا الـ Process Tree

الـ EDR (CrowdStrike, Defender, SentinelOne) بيديك شجرة العمليات. اقراها من الجذر مش من تحت:

text
explorer.exe (PID 4321)                    ← parent شرعي
  └─ outlook.exe (PID 5678)                ← شرعي
      └─ winword.exe (PID 6789)            ← فتح مرفق Word
          └─ cmd.exe (PID 7890)            ← !! Word لا يجب أن يفتح cmd !!
              └─ powershell.exe -enc ...   ← !!! base64 → تنفيذ
علامات حمرا كلاسيكية
  • Office app بيفتح cmd/powershell/wscript. ده مش طبيعي خالص.
  • svchost.exe من مكان غير C:\Windows\System32.
  • rundll32.exe من غير arguments، أو DLL من AppData/Temp.
  • PowerShell بـ -EncodedCommand، -WindowStyle Hidden، أو DownloadString.
  • schtasks.exe بيعمل مهمة بأسماء عشوائية.
  • net.exe بيضيف يوزر لـ Administrators.

التذاكر — قواعد التوثيق

التذكرة الكويسة بتتقرى بعد سنة و فاهم منها كل حاجة. الهيكل القياسي:

markdown
## Summary
[سطر واحد] What happened, who, where, when

## Timeline (UTC)
- 14:23 Alert fired: [rule name]
- 14:25 Began investigation
- 14:31 Identified [process X] on [host Y]
- 14:42 Checked [user Z] activity — confirmed/denied legitimate
- 14:55 Closed as [True Positive | False Positive | Benign]

## Evidence
- Splunk query: [paste]
- Process tree: [screenshot/paste]
- IOCs extracted: hash=..., ip=..., domain=...

## Decision
[Closed/Escalated] because [reason]. If escalated: assigned to [Tier-2 name].

## Follow-up
- [ ] Add IOC to block list
- [ ] Open detection-engineering ticket if rule needs tuning

Escalation — تصعّد إمتى و إزاي

صعّد على طول لو
  • Domain admin أو حساب مهم متورط.
  • أكتر من host واحد متضرب.
  • فيه دليل على exfiltration (داتا بتطلع برة).
  • Ransomware (تشفير ملفات، ransom notes).
  • Persistence اتكشف (scheduled task جديد، service جديد).
  • إنت لسه مش متأكد بعد 30 دقيقة شغل جد.

صيغة التصعيد المثالية: "شفت X. شكله Y. محتاج Z." متخليش Tier-2 يخمّن — ده بيوحرق وقت الكل.

مهارات لازم تتقنها من أول أسبوع

  • Splunk SPL أو KQL — حسب اللي شركتك بتستخدمه. ذاكر top-10 commands في أسبوع.
  • regex أساسي — كل yara/sigma/grep قايم عليه.
  • JSON parsing — اللوجز الحديثة كلها JSON. اتعلم jq.
  • VirusTotal Intelligence — البحث المتقدم، مش بس رفع ملف.
  • MITRE ATT&CK Navigator — اربط كل observation بـ technique.
  • Markdown للتوثيق السريع.

فخاخ Tier-1 — اوعى تقع فيها من أول يوم

  • اوعى تقفل من غير توثيق. تذكرة من غير evidence ملهاش لازمة في الـ audit.
  • اوعى تماطل في التصعيد. "هنشوفها كده" بتبقى ساعتين. عند الشك، صعّد بعد 30 دقيقة. خلاص.
  • اوعى تشغل أوامر على الـ endpoint. متشغّلش حاجة على جهاز ضحية من غير إذن Tier-2/IR. ممكن تحرق الـ evidence.
  • اوعى تنشر تفاصيل حادث في chat عام. استخدم القناة المخصصة. الحوادث حساسة.
  • اوعى تعتمد على Google بس. اسأل زميلك. سؤال واحد بيوفر ساعات.
ثقافة الفريق
الـ SOC الكويس مش بيعاقب على false positive — بيعاقب على false negative مش متوثق. وثّق قرارك و الدليل بتاعه دايماً.

الخلاصة الناشفة

الـ Tier-1 الكويس مش اللي بيقفل أكتر تذاكر. اللي بيوثّق أحسن ويصعّد في الوقت المناسب.

الـ alert اللي اتقفل غلط = breach. نقطة.

الـ alert اللي اتصعّد بدليل واضح = الفرق ضحّى ساعة، بس وفّر الشركة.

اكتبها على ظهر إيدك أول يوم: "شفت X. شكله Y. محتاج Z." الـ tier اللي فوقك مش بيقرا أفكار. خلاص.

معجم لازم تكون عارفه

  • IOC — Indicator of Compromise (hash, IP, domain).
  • TTP — Tactics, Techniques, Procedures (مستوى أعلى من الـ IOC).
  • MTTD / MTTR — Mean Time To Detect / Respond.
  • SLA — اتفاقية مستوى الخدمة (مثلاً Tier-1 يرد في 15 دقيقة).
  • Runbook / Playbook — خطوات قياسية لحالة معينة.
  • Triage — الفرز.
  • EDR / XDR — Endpoint / Extended Detection & Response.
  • SOAR — Orchestration & Automated Response (أتمتة الـ playbook).
  • UEBA — User & Entity Behavior Analytics.
  • HVA — High-Value Asset (الكنوز اللي بتتحرس).