ادامه از قبلی

چگونه Named Pipe را در SOC پایش کنیم؟

۱. فعال کردن Sysmon برای لاگ کردن Pipe‌های مشکوک

Event ID 17: ایجاد Named Pipe
Event ID 18: اتصال به Named Pipe
Event ID 3: فعالیت شبکه‌ای مرتبط با Pipe

✅ مثال از لاگ Sysmon:

Event ID: 17
Pipe Name: \\.\pipe\malicious_pipe
Process: C:\Windows\Temp\malware.exe

۲. بررسی Sessionهای غیرمعمول

اگر یک Pipe خارج از Session 0 اجرا شد، بررسی کنید که چرا!
دستورquser را در PowerShell اجرا کن تا ببینی Pipe در چه Sessionی باز شده است.

۳. مقایسه Pipeهای جدید با لیست Pipeهای مجاز

این Pipeهای سیستمی مجاز را لیست کن و Pipeهای جدید را بررسی کنید

۴. نظارت بر ارتباطات غیرعادی بین پردازش‌ها

مثلا، اگر Explorer.exe به Named Pipe یک پردازش مشکوک متصل شود، باید بررسی شود.

جمع‌بندی: Named Pipe، یک تونل مخفی برای مهاجمان

✅ مهاجمان از Named Pipe برای اجرای کد از راه دور، مخفی کردن ارتباطات، دور زدن آنتی‌ویروس و افزایش دسترسی استفاده می‌کنند.
✅ اگر در SOC کار می‌کنید، باید Named Pipe را لاگ و بررسی کنید، چون یک تکنیک محبوب در بدافزارها و حملات APT است.

کوئری اسپلانک

index=windows EventCode=17 OR EventCode=18
| eval pipe_name=lower(PipeName)
| search NOT pipe_name IN ("\\.\pipe\spoolss", "\\.\pipe\lsass", "\\.\pipe\netlogon")
| table _time, Host, ProcessID, Image, PipeName, EventCode
| sort - _time


🔍 این کوئری چه کار می‌کند؟
✔ لاگ‌های ایجاد یا اتصال Named Pipe را فیلتر می‌کند.
✔این Pipeهای سیستمی قانونی را حذف می‌کند (مثل \spoolss و \lsass).
✔ نتایج را به‌صورت جدول زمانی مرتب‌شده نمایش می‌دهد.
شناسایی استفاده مشکوک از Named Pipe در شبکه

اگر مهاجم با PsExec یا Cobalt Strike از Named Pipe استفاده کند، معمولاً Pipeهای ناشناخته و غیرمعمول ایجاد می‌شوند. با این کوئری می‌توانید Pipeهایی که بین دو سیستم به کار رفته را پیدا کنید :
index=windows EventCode=3 (Protocol=NamedPipe)
| stats count by PipeName, SourceHost, DestinationHost
| sort - count

✔ این کوئری Pipeهایی که بین دو کامپیوتر استفاده شده‌اند را نمایش می‌دهد.
✔ اگر Pipe ناشناخته‌ای بین دو سیستم مهم بانکی باشد، بررسی دقیق لازم است!

برخی بدافزارهای معروف از نام‌های خاصی برای Pipe استفاده می‌کنند، مثل:

\\.\pipe\mspipe (Cobalt Strike)
\\.\pipe\remcom (PsExec)
\\.\pipe\postex (Meterpreter)

📌 برای پیدا کردن این موارد در Splunk:
index=windows EventCode=17 OR EventCode=18
| search PipeName IN ("\\.\pipe\mspipe", "\\.\pipe\remcom", "\\.\pipe\postex")
| table _time, Host, PipeName, Image





#من_آموزش_میدهم
#آکادمی_روزبه

1 comment

ممنون بابت نکات فنی خیلی خوب و آموزنده ارائه شده، تصور می‌کنم ایندکس سیسمون مدنظر بوده و اشتباه سهوی پیش اومده توی کوئری ها