اگر یک 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 استفاده میکنند، مثل:
📌 برای پیدا کردن این موارد در Splunk: index=windows EventCode=17 OR EventCode=18 | search PipeName IN ("\\.\pipe\mspipe", "\\.\pipe\remcom", "\\.\pipe\postex") | table _time, Host, PipeName, Image