یک روز عادی در SOC، ناگهان آلارم SIEM به صدا درمیآید: کاربری با دسترسی Admin به سیستم لاگین کرده، اما هیچکس در تیم آن را نمیشناسد. اولین قدم چیست؟ بررسی لاگهای ویندوز.
اگر سراغ Event Viewer بروید، خیلی زود متوجه میشوید که کار با آن طاقتفرساست. سرعت پایین، فیلترهای محدود و رابط کاربری پیچیده. اینجاست که به سراغ ابزار حرفهای Event Log Explorer می رویم. سریع، دقیق و طراحیشده برای تحلیلگران امنیتی و تیمهای DFIR .
Event Log Explorer چیست؟
Event Log Explorer یک نرمافزار حرفهای برای مشاهده و تحلیل لاگهای ویندوز است که بهعنوان جایگزین پیشرفتهی Event Viewer عمل میکند. این ابزار توسط شرکت FSPro Labs توسعه داده شده و امکانات زیر را در اختیار تحلیلگران امنیت و تیمهای DFIR قرار میدهد:
✔️ بارگذاری سریع لاگهای حجیم (Security, System, Application, Sysmon و EVTX آفلاین)
✔️ فیلتر و جستجوی پیشرفته با شرطهای ترکیبی
✔️ نمایش جزئیات کامل Event IDها با قابلیت Pivot روی فیلدهای کلیدی
✔️ خروجیگیری به فرمتهای CSV, HTML, Excel برای مستندسازی
✔️ پشتیبانی از تحلیل لاگهای محلی و ریموت (سیستمهای دامنه یا شبکه)
درواقع اگر Event Viewer را بهعنوان یک ابزار عمومی در نظر بگیریم، Event Log Explorer نسخهی Forensic-Friendly آن است.
شروع کار با Event Log Explorer
برای استفاده از Event Log Explorer لازم نیست کار پیچیدهای انجام بدهید. کافی است ابتدا نسخهی رایگان یا تجاری آن را از سایت رسمی دانلود کنید. روند نصب بسیار ساده است. فقط به یاد داشته باشید که حتماً برنامه را با دسترسی Administrator اجرا کنید تا بتوانید لاگهای مهم مثل Security و System را ببینید.
بعد از نصب، نوبت به اضافه کردن منابع لاگ میرسد. Event Log Explorer انعطاف زیادی در این بخش دارد:
✔️ اگر میخواهید لاگهای همان سیستمی را بررسی کنید که روی آن نصب شده، کافی است Local Logs را باز کنید.
✔️ اگر قصد دارید لاگهای یک سیستم دیگر در شبکه یا دامین را بررسی کنید، میتوانید از گزینهی Remote Logs کمک بگیرید.
✔️ و در نهایت اگر فایلهای لاگ را از قبل ذخیره کردهاید (با فرمت EVTX) خیلی راحت میتوانید آنها را بارگذاری کنید و به صورت آفلاین مورد بررسی قرار دهید؛ این ویژگی بهویژه در بررسی رخدادها یا حوادث امنیتی گذشته بسیار کاربردی است.
ساختار لاگهای ویندوز
ویندوز لاگهای خود را در کانالهای مختلف نگهداری میکند و هر کدام از این کانالها کارکرد متفاوتی دارند. مهمترینشان عبارتند از:
✔️ Security : اینجا تمام رویدادهای مربوط به ورود، خروج و دسترسی کاربران ثبت میشود. برای تحلیل امنیتی، این کانال معمولاً اولین جاییست که به سراغش میرویم، چون شامل رویدادهایی مثل لاگین موفق یا ناموفق، تغییر سطح دسترسی و ایجاد یا حذف حساب کاربری می باشد.
✔️ System : این کانال بیشتر به تغییرات و پیامهای مربوط به خود سیستمعامل مربوط است. مثلاً خطاهای درایورها، راهاندازی یا توقف سرویسها و رخدادهای سطح کرنل.
✔️ Application : اگر برنامهها و نرمافزارهای نصبشده روی ویندوز با خطا یا هشدار روبهرو بشوند، پیامهایشان اینجا ذخیره می شوند. معمولاً برای عیبیابی اپلیکیشنها کاربرد دارند.
✔️ Applications and Services Logs : این بخش تخصصیتر و شامل لاگهای سرویسها و برنامههای خاص می شود. یکی از پرکاربردترین نمونههای آن، لاگهای Sysmon هست که در شکار تهدید و تحلیلهای امنیتی خیلی ارزشمندند.
نکته مهم اینه که همهی این لاگها در قالب EVTX ذخیره می شوند. فرمت بومی ویندوز که مبتنی بر XML طراحی شده و همین باعث می شود بتوان آنها را به راحتی فیلتر و پردازش کرد.
گامهای کلیدی در تحلیل لاگ با Event Log Explorer
یکی از مزیتهای اصلی Event Log Explorer این است که فرآیند تحلیل لاگ را برای تحلیلگران سادهتر و منظمتر میکند. در ادامه، چهار گام کلیدی که تقریباً در هر بررسی امنیتی مورد استفاده قرار میگیرند را مرور میکنیم:
۱. فیلتر و ایجاد نمای سفارشی (Custom View)
اولین اقدام معمولاً محدود کردن دادهها به بخش مرتبط است. برای این کار میتوان کانال Security را باز کرد و با تعیین یک بازهی زمانی مشخص، تنها لاگهای مربوط به همان دوره را بررسی نمود. سپس لازم است Event ID های حیاتی را انتخاب کنیم.
📌 مهمترین Event ID های ویندوز برای مانیتورینگ امنیتی و DFIR
در فرآیند تحلیل لاگهای ویندوز، انتخاب Event ID های حیاتی (Critical Event IDs) اهمیت ویژهای دارد. این رویدادها همان نقاط کلیدی هستند که مهاجم در طول حمله به آنها دست میزند و تحلیلگر امنیتی باید همیشه زیر نظرشان داشته باشد.
🟢 دستهبندی اصلی Event ID ها
برای حفظ ترتیب بیشتر، Event ID ها را در پنج دسته مهم بررسی میکنیم:
- احراز هویت و ورود کاربران (Authentication & Logon Events)
- فرآیندها و اجرای برنامهها (Process Creation & Execution)
- مدیریت حسابها و گروهها (Account & Group Management)
- سرویسها و تغییرات سیستمی (System & Service Changes)
- دسترسیهای ویژه و سیاستهای امنیتی (Privileges & Audit Policy)
1️.احراز هویت و ورود کاربران (Authentication & Logon Events)
این دسته مهمترین بخش برای شناسایی لاگینهای مشکوک، Brute Force و حرکت جانبی (Lateral Movement) است:
✔️ 4624 – Successful Logon
ثبت ورود موفق کاربر. باید بررسی شود LogonType چیست (مثلاً 2=Interactive, 3=Network, 10=RemoteDesktop). لاگین از IP ناشناس نشانهی حرکت جانبی یا نفوذ است.
✔️ 4625 – Failed Logon
ثبت ورود ناموفق. تعداد زیاد این لاگ معمولاً نشانهی حملات Brute Force یا پسورد حدسی است.
✔️ 4648 – Logon with Explicit Credentials
ورود با دسترسی مشخص (مثلاً استفاده از RunAs). اغلب در حرکت جانبی استفاده میشود.
✔️ 4675 – SIDs History
تغییر در تاریخچهی SID حسابها. ممکن است برای جعل هویت (SID History Injection) توسط مهاجم استفاده شود.
✔️ 4634 – Logoff
ثبت خروج کاربر. کمک میکند تایملاین فعالیتها کاملتر شود.
2️. فرآیندها و اجرای برنامهها (Process Creation & Execution)
✔️ 4688 – Process Creation
هر بار که یک processاجرا میشود ثبت میگردد. برای شکار اجرای مشکوک (مثل powershell.exe –enc) حیاتی است. تحلیل ParentImage و CommandLine ضروری است.
✔️ 4689 – Process Termination
پایان یک process. برای تکمیل زنجیره فعالیتها کاربرد دارد.
✔️ 4697 – Service Installed ( مرتبط با 7045)
مهاجمان اغلب با ایجاد سرویسهای جدید، دسترسی دائمی (Persistence) ایجاد میکنند.
✔️ 7045 – A Service Was Installed
در لاگ System ثبت میشود. اگر سرویس در مسیرهای غیرمعمول(%TEMP% یا %APPDATA%) باشد، احتمال بدافزار بسیار زیاد است.
3️.مدیریت حسابها و گروهها (Account & Group Management)
✔️ 4720 – A User Account Was Created
ایجاد حساب کاربری جدید. مهاجمان گاهی یک Local User با دسترسی Admin ایجاد میکنند.
✔️ 4726 – A User Account Was Deleted
حذف حساب کاربری. ممکن است برای پاکسازی ردپا انجام شود.
✔️ 4722 – A User Account Was Enabled
فعالسازی دوباره یک حساب کاربری غیرفعال. میتواند نشانهی سوءاستفاده از حساب Dormant باشد.
✔️ 4723 – Password Change Attempt
تغییر پسورد کاربری. در صورت مشاهده روی حسابهای حساس باید بررسی شود.
✔️ 4732 – Member Added to Local Group
اضافه شدن کاربر به گروههای مهم )مثل Administrators یا .( Remote Desktop Usersیکی از تکنیکهای افزایش دسترسی است.
✔️ 4733 – Member Removed from Local Group
حذف کاربر از گروهها. گاهی مهاجم برای مخفیکاری استفاده میکند.
4️. سرویسها و تغییرات سیستمی (System & Service Changes)
✔️ 1102 – Audit Log Cleared
پاک شدن لاگهای امنیتی. تقریباً همیشه نشانهی فعالیت مهاجم برای پوشاندن ردپاست.
✔️ 4719 – System Audit Policy Changed
تغییر در تنظیمات Audit Policy. مهاجم میتواند لاگبرداری را غیرفعال کند.
✔️ 4698 – Scheduled Task Created
ایجاد یک Task جدید. از روشهای رایج Persistence و اجرای بدافزار.
✔️ 4699 – Scheduled Task Deleted
حذف Task. گاهی بعد از اجرای یکبار مصرف حمله استفاده میشود.
5️.دسترسیهای ویژه و سیاستهای امنیتی (Privileges & Audit Policy)
✔️ 4672 – Special Privileges Assigned
وقتی کاربری با دسترسی ادمین (SeDebugPrivilege, SeTcbPrivilege, …) وارد میشود ثبت میشود. این لاگ باید همیشه زیر نظر باشد.
✔️ 4670 – Permissions on Object Changed
تغییر در دسترسی فایلها/کلیدهای رجیستری حساس.
✔️ 4656 – Handle to an Object Requested
وقتی process سعی میکند به فایل/رجیستری دسترسی بگیرد. میتواند برای شناسایی تلاش مهاجم در سرقت LSASS استفاده شود.
این Event IDها ستون فقرات شکار تهدید و تحلیل Forensic در ویندوز هستند.
تحلیلگرها میتوانند با مانیتورینگ و فیلتر روی این لاگها، فعالیتهای حیاتی مهاجم را ردیابی کرده و حمله را زودتر شناسایی کنند.
طبق مستندات رسمی مایکروسافت، این رویدادها در ردیف مهمترین نقاط پایش امنیتی قرار میگیرند و معمولاً پایهی بسیاری از سناریوهای شکار تهدید هستند.
۲. جستجوی پیشرفته (Advanced Find)
وقتی به دنبال شواهد خاصی هستیم، جستجوی پیشرفته ابزار بسیار مفیدی است. بهعنوان مثال:
✔️ جستجوی عبارت "powershell -enc"
در میان رویدادهای 4688 میتواند نشانهای از اجرای اسکریپتهای رمزگذاریشدهی PowerShell باشد؛ یکی از روشهای رایج مهاجمان برای پنهانسازی فعالیت خود.
Get-WinEvent -FilterHashtable @{LogName='Security';ID=4688} |
Where-Object {$_.Message -like '*powershell -enc*'}
✔️ بررسی مقادیر LogonType در رویداد 4624 کمک میکند تا ورودهای غیرعادی مانند Remote Interactive یا Network از یک IP ناشناس شناسایی شوند.
۳. نشانهگذاری (Bookmark) و تحلیل ارتباطی (Pivot)
در حین بررسی، ممکن است به لاگهایی برخورد کنیم که نشانهای از فعالیت مشکوک دارند. در این موارد میتوان آنها را بهعنوان Bookmark ذخیره کرد تا در ادامهی تحلیل به راحتی به آنها رجوع کنیم.
همچنین امکان Pivot روی فیلدهای کلیدی مانند TargetUserName، LogonId یا ProcessId وجود دارد. این کار به تحلیلگر اجازه میدهد زنجیرهی زمانی رویدادها را بازسازی کرده و تصویری کاملتر از فعالیت کاربر یا فرآیند مشکوک به دست آورد.
مثال PowerShell برای فیلتر Pivot :
$logs = Get-WinEvent -FilterHashtable @{LogName='Security';ID=4688}
$logs | Group-Object -Property ProcessId | Select-Object Name, Count
۴. خروجی و گزارشدهی
در نهایت، هر تحلیل امنیتی نیازمند مستندسازی است. Event Log Explorer این امکان را فراهم میکند که لاگهای انتخابی به فرمتهای CSV یا HTML خروجی گرفته شوند. این فایلها هم برای بررسیهای تکمیلی در ابزارهایی مانند Excel و هم برای بارگذاری در پلتفرمهایی نظیر Timesketch یا ELK قابل استفادهاند. علاوه بر این، خروجیها میتوانند بهعنوان ضمیمهی رسمی در گزارشهای Incident Response مورد استفاده قرار گیرند.
مثال سادهی خروجی گرفتن به CSV از Event Log :
Get-WinEvent -FilterHashtable @{LogName='Security';ID=4624} |
Export-Csv -Path "C:\Logs\SecurityLog_4624.csv" -NoTypeInformation
پلیبوکهای شکار تهدید (Threat Hunting Playbooks)
یکی از کاربردهای مهم Event Log Explorer در حوزه امنیت، اجرای شکار تهدید (Threat Hunting) است. با استفاده از Event IDهای حیاتی و تحلیل دقیق، میتوان فعالیتهای مشکوک را شناسایی و روند رخدادها را بازسازی کرد. در ادامه چند سناریوی کلیدی را بررسی میکنیم:
🔎 شکار اجرای مشکوک (Suspicious Process Execution)
رویداد 4688 نشاندهندهی اجرای یک فرآیند جدید است. تحلیلگران امنیتی معمولاً ParentImage و CommandLine را بررسی میکنند تا مشخص شود فرآیند توسط کدام برنامه یا کاربر ایجاد شده است. برخی الگوهای رایج که میتوانند نشانه حمله باشند عبارتند از: rundll32
، mshta
و regsvr32 /s /n /u /i
.
شناسایی چنین الگوهایی میتواند اولین نشانه از اجرای مخرب PowerShell یا اسکریپتهای ناشناس باشد.
مثال snippet برای شناسایی پروسسهای مشکوک با ParentImage
Get-WinEvent -FilterHashtable @{LogName='Security';ID=4688} |
Where-Object {$_.Properties[5].Value -like '*rundll32*'}
🛑 شناسایی سرویسهای مخرب (Malicious Services)
Event ID 7045 مربوط به نصب سرویس جدید است. تحلیل دقیق مسیر اجرایی سرویس میتواند فعالیتهای مشکوک را نشان دهد. بهطور مثال، سرویسهایی که در مسیرهای %TEMP%
یا %APPDATA%
قرار دارند، اغلب نشانهای از بدافزار یا اسکریپت خودکار هستند. همچنین اگر StartType سرویس روی Auto تنظیم شده باشد، یعنی این سرویس با هر بار راهاندازی سیستم به صورت خودکار اجرا میشود که اهمیت بررسی را افزایش میدهد.
🌐 شناسایی حرکت جانبی (Lateral Movement)
یکی دیگر از سناریوهای رایج شکار تهدید، حرکت جانبی مهاجم در شبکه است. در این حالت Event ID 4624 با LogonType=3 (ورود شبکهای) از یک IP ناشناس بررسی میشود. ترکیب این اطلاعات با رویدادهای 4648 (Explicit Logon) و 4672 (Privilege Assignment) به تحلیلگر کمک میکند مسیر مهاجم و حسابهای درگیر در حرکت جانبی را شناسایی کند.
ترفندها و قابلیتهای پیشرفته
Event Log Explorer امکاناتی فراتر از مشاهده ساده لاگها ارائه میدهد:
✔️ Filter Builder : امکان ایجاد فیلترهای پیچیده با شرطهای AND و OR
✔️ Regex Search : امکان جستجوی الگوهای خاص مانند Base64 یا PowerShell
✔️ Merge Views : ادغام چند کانال مختلف (مثلاً Security و Sysmon) برای تحلیل جامعتر
✔️ Template Filters : ذخیره و اشتراک فیلترها بین اعضای تیم برای یک استاندارد تحلیل یکنواخت
ادغام با ابزارهای دیگر
برای افزایش کارایی تحلیل، Event Log Explorer میتواند با سایر ابزارهای امنیتی ترکیب شود:
✔️ APT-Hunter : می توانید خروجی EVTX از Event Log Explorer را وارد APT-Hunter کنید تا تحلیل خودکار IOCها و TTPهای حمله انجام شود.
✔️ Sysmon : افزودن لاگهای Sysmon به Event Log Explorer دید عمیقتری روی پروسسها و ارتباطات شبکهای فراهم میکند و امکان شناسایی رفتارهای مخرب پیچیده را افزایش میدهد.
چکلیست نهایی تحلیل
قبل از اتمام بررسی لاگها، خوب است یک بار همه مراحل کلیدی را مرور کنیم تا مطمئن شویم هیچ نکتهای از قلم نیفتاده است. این چکلیست به تحلیلگر کمک میکند روند کار منظم و کامل باشد و هیچ شواهد مهمی جا نماند.
✅ Audit Policy فعال است؟ AuditPol /get /category:*
✅ Event IDهای حیاتی در فیلتر هستند؟
✅ خروجی CSV ذخیره شده؟
✅ لاگهای مرتبط Bookmark و Pivot شدهاند؟
✅ Artefactهای دیگر (Prefetch, Registry, Tasks) بررسی شدهاند؟
این آموزش فقط قدم اول در تحلیل لاگ ویندوز بود. در مقالهی بعدی یاد میگیریم چگونه با APT-Hunter همین لاگها را بهصورت خودکار تحلیل کنیم و نشانههای حملات APT را کشف کنیم.
🔗 مقاله بعدی: آموزش APT-Hunter برای شناسایی حملات در لاگ ویندوز