Network Security Channel – Telegram
Network Security Channel
2.54K subscribers
5.33K photos
3.42K videos
5.56K files
4.43K links
شروع از سال 1395
Security Operation Center (SOC)
Bug Bounty
Vulnerability
Pentest
Hardening
Linux
Reasearch
Security Network
Security Researcher
DevSecOps
Blue Team
Red Team
Download Telegram
Technology Debt_ Your Cyber Resilience Back Door & Risk.pdf
824.1 KB
از مقولات مدرن در معماری امنیت
🔹 Share & Support Us 🔹
📱 Channel : @Engineer_Computer
Please open Telegram to view this post
VIEW IN TELEGRAM
Network Security Channel
به زبان ساده Named Pipeچیست؟ یک Named Pipe یک روش برای ارتباط بین دو برنامه یا پردازش در ویندوز است، مثل یک کانال مخفی بین دو نفر که فقط خودشان می‌دانند از آن استفاده کنند. مثال: فرض کن یک برنامه‌ی چت داری که دو نفر از طریق آن پیام رد و بدل می‌کنند. اگر…
ادامه از قبلی

چگونه 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

🔹 Share & Support Us 🔹
📱 Channel : @Engineer_Computer
Please open Telegram to view this post
VIEW IN TELEGRAM
اخبار مهم روز

در نوامبر ۲۰۲۴، محققان امنیتی از کمپینی مخرب پرده برداشتند که وزارت امور خارجه یک کشور ناشناس در آمریکای جنوبی را هدف قرار داده بود. این کمپین که توسط Elastic Security Labs با نام REF7707 ردیابی می‌شود و شامل بدافزاری سفارشی است که دسترسی از راه دور به سیستم‌های آلوده را فراهم می‌کند. علاوه بر این، اهداف دیگری مانند یک شرکت مخابراتی و یک دانشگاه در جنوب شرقی آسیا نیز شناسایی شده‌اند.

اگرچه روش دقیق دسترسی اولیه در این حملات مشخص نیست، اما مشاهده شده است که مهاجمان از ابزار «certutil» مایکروسافت برای دانلود payloadهای اضافی از سروری مرتبط با وزارت امور خارجه استفاده کرده‌اند. دستورات certutil از طریق پلاگین Remote Shell مدیریت از راه دور ویندوز (WinrsHost.exe) از سیستمی ناشناخته در شبکه اجرا شده‌اند. این امر نشان می‌دهد که مهاجمان قبلاً به اعتبارنامه‌های شبکه دسترسی داشته و از آن‌ها برای حرکت جانبی از یک میزبان قبلاً آلوده در محیط استفاده کرده‌اند.

اولین فایل اجرایی، بدافزاری به نام PATHLOADER است که امکان اجرای shellcode رمزگذاری‌شده دریافتی از سرور خارجی را فراهم می‌کند. سپس، shellcode استخراج‌شده با نام FINALDRAFT به حافظه یک فرآیند جدید «mspaint.exe» تزریق می‌شود.

این FINALDRAFT، نوشته‌شده به زبان C++، یک ابزار مدیریت از راه دور کامل است که قابلیت اجرای ماژول‌های اضافی به‌صورت پویا را دارد و از سرویس ایمیل Outlook از طریق Microsoft Graph API برای فرمان و کنترل (C2) سوءاستفاده می‌کند. این بدافزار با تجزیه دستورات ذخیره‌شده در پوشه پیش‌نویس‌های صندوق پستی و نوشتن نتایج اجرا در ایمیل‌های پیش‌نویس جدید برای هر دستور، ارتباط برقرار می‌کند. FINALDRAFT دارای ۳۷ فرمان است که شامل تزریق فرآیند، دستکاری فایل و قابلیت‌های پروکسی شبکه می‌شود.

همچنین، این بدافزار به گونه‌ای طراحی شده است که فرآیندهای جدیدی را با استفاده از هش‌های NTLM سرقت‌شده شروع کرده و دستورات PowerShell را به‌گونه‌ای اجرا می‌کند که فایل اجرایی «powershell.exe» را فراخوانی نکند. در عوض، با پچ کردن چندین API برای دور زدن ردیابی رویداد برای ویندوز (ETW)، ابزار PowerPick را که بخشی از کیت ابزار پس از بهره‌برداری Empire است، راه‌اندازی می‌کند.

علاوه بر این، نمونه‌های باینری ELF که در VirusTotal از برزیل و ایالات متحده آپلود شده‌اند، نشان‌دهنده وجود نسخه لینوکس FINALDRAFT هستند که دارای عملکرد C2 مشابهی است. نسخه لینوکس می‌تواند دستورات شل را از طریق «popen» اجرا کرده و خود را از سیستم حذف کند.

کامل بودن ابزارها و سطح مهندسی درگیر نشان می‌دهد که توسعه‌دهندگان به‌خوبی سازمان‌دهی شده‌اند. مدت زمان طولانی عملیات و شواهد به‌دست‌آمده از تله‌متری نشان می‌دهد که احتمالاً این کمپین با هدف جاسوسی انجام شده است.

این کشف نشان‌دهنده پیچیدگی فزاینده تهدیدات سایبری و اهمیت اقدامات امنیتی قوی برای محافظت از سازمان‌ها در برابر چنین حملاتی است. سازمان‌ها باید به‌طور منظم سیستم‌های خود را به‌روزرسانی کرده، از ابزارهای امنیتی پیشرفته استفاده کنند و کارکنان خود را در مورد شیوه‌های امنیتی مناسب آموزش دهند تا خطر نقض امنیتی را به حداقل برسانند

https://thehackernews.com/2025/02/finaldraft-malware-exploits-microsoft.html?m=1

🔹 Share & Support Us 🔹
📱 Channel : @Engineer_Computer
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍1🔥1👏1
مقایسه‌ای از نمره قبولی در دانشگاه‌های آمریکا و ایران
◾️چند وقتی هست که با خودم فکر می‌کنم چرا در ایران نمره‌ی ۱۰ معیاری قرار گرفته برای پاس کردن دروس، آن هم در دوره مهم کارشناسی که باید مفاهیم تخصصی بصورت بنیادی آموزش داده شود. چرا اگر دانشجو صرفا ۵۰٪ از انتظارات را برآورده کرده باشد نظام آموزشی ما آن را قابل قبول می‌داند؟ مقداری جستجو کردم ولی دلیلی پیدا نکردم غیر از اینکه بعضی کشورهای دیگر مثل هند، پاکستان و البته انگلیس از معیار مشابهی استفاده می‌کنند. این برای من خصوصا جالب است چون که در آمریکا، اگرچه سیستم یکپارچه‌ای وجود ندارد، اما نمره‌ی قبولی در دوره کارشناسی برای دروس تخصصی عموما -C است و اگرچه اساتید در تعریف درصدها تا حدی اختیار دارند، اغلب ۷۰٪ بعنوان -C در نظر گرفته می‌شود. دانشجو اگر‌ نمره F بگیرید، که معمولا عملکرد زیر ۶۰٪ است، نمره صفر در کارنامه دریافت می‌کند!
◾️در نظر گرفتن ۵۰٪ بجای ۷۰٪ بعنوان شاخص قبولی مزایایی دارد از جمله آنکه فشار و استرس را بر دانشجو کمتر می‌کند. اما آیا این مساله تاثیری فراتر از نظام آموزشی ندارد؟ سوالی که برای من ایجاد شده این است که آیا در بلندمدت این باعث نشده تعریف ما از موفقیت و روش‌های سنجش آن متفاوت باشد و در کارهای شخصی، روابط اجتماعی و حتی پروژه‌های تخصصی و فنی هم بر این باور باشیم که اگر نصف مسیر را طی کنیم همچنان قابل قبول است؟ آیا این باعث نمی‌شود متخصص ما از نیمه راه جای پای خود را سفت ببیند در حالی که متخصص آمریکایی با تعریف متفاوتی از موفقیت آموزش دیده است؟
◾️من راجع به سوالات بالا قطعیتی ندارم اما فکر می‌کنم ما حتی اگر روزی زیرساخت‌های مدرن آموزش عالی را داشته باشیم، حتی اگر همه‌ی کارهایمان سر و شکل اصولی بگیرد، باز هم باید وقت بگذاريم و به جزئیات با دقت فکر کنیم. یک کل منسجم و کارآمد از جزئیات فکر شده می‌آید و شاید همین مسائل بسیار کوچک و بظاهر کم اهمیت سبب بخشی از تفاوت ما در کارآیی و بازدهی شده باشد.


✍️دکتر مسعود قدرت آبادی
ساکرامنتو - کالیفرنیا

🔹 Share & Support Us 🔹
📱 Channel : @Engineer_Computer
Please open Telegram to view this post
VIEW IN TELEGRAM
👏52👍1🤩1
شرکت فناوری سایپا ارتباط(فسا) به عنوان شرکت تخصصی در حوزه فناوری اطلاعات در گروه خودرو سازی سایپا, اقدام به جذب نیروهای متخصص در حوزه های ذیل می نماید:

کارشناس SOC Tier 1
کارشناس SOC Tier 2
کارشناس و طراح پسیو
نیروی اداری واحد IT
کارشناس شبکه
کارشناس تست نفوذ وب

خواهشمند است واجدین شرایط رزومه خود را به آدرس b.akbari@fasatech.ir ارسال نمایند.

@Engineer_Computer
1👎1🔥1👨‍💻1
🚨ابزار روز

KrbRelayEx is a tool designed for performing Man-in-the-Middle (MitM) attacks by relaying Kerberos AP-REQ tickets. It listens for incoming SMB connections and forwards the AP-REQ to the target host, enabling access to SMB shares or HTTP ADCS (Active Directory Certificate Services) endpoints on behalf of the targeted identity.

شرح مساله :

تیکت AP-REQ ‌که در ابزار نفوذ فوق بدان اشاره شده است ؛در پروتکل احراز هویت Kerberos بخشی از فرایند احراز هویت سرویس‌گیرنده به سرویس موردنظر است. این تیکت شامل اطلاعاتی است که به سرور مقصد اجازه می‌دهد هویت کلاینت را تأیید کند.
فرایند صدور و استفاده از AP-REQ

دریافت تیکت TGS (تیکت سرویس) از TGS
کلاینت پس از احراز هویت اولیه، از Ticket Granting Server (TGS) یک تیکت برای دسترسی به سرویس خاصی دریافت می‌کند.
این تیکت با کلید سرویس رمزگذاری شده است، بنابراین فقط سرور مقصد می‌تواند آن را باز کند.

ارسال AP-REQ به سرور سرویس
کلاینت هنگام درخواست دسترسی به یک سرویس (مانند SMB یا HTTP)، تیکت TGS را به همراه یک Authenticator به سرور مقصد ارسال می‌کند.
این مجموعه به عنوان AP-REQ (Authentication Protocol Request) شناخته می‌شود.

اعتبارسنجی توسط سرور سرویس
سرور سرویس تیکت TGS را رمزگشایی می‌کند و اعتبار کلاینت را بررسی می‌نماید.
در صورت معتبر بودن تیکت و زمان آن، کلاینت احراز هویت شده و به سرویس موردنظر دسترسی می‌یابد.

ساختار AP-REQ

توضیح Authenticator: شامل اطلاعات زمانی و کلید نشست است تا از حملات بازپخش جلوگیری شود.
توضیح Ticket: شامل اطلاعات رمزگذاری‌شده از جمله نام کاربری و مدت اعتبار است.

نقاط ضعف احتمالی

حمله Relay Attack: مهاجمان می‌توانند AP-REQ را رهگیری و به سرور دیگری رله کنند، که یکی از پایه‌های حملات Kerberos Relay مانند حمله KrbRelayEx است.
حمله Pass-the-Ticket (PtT): در این حمله، مهاجم می‌تواند تیکت را سرقت کرده و از آن برای دسترسی غیرمجاز استفاده کند.

به همین دلیل، پروتکل‌های امنیتی مانند SMB Signing و Channel Binding برای کاهش این تهدیدات پیشنهاد می‌شوند.

https://github.com/decoder-it/KrbRelayEx

🔹 Share & Support Us 🔹
📱 Channel : @Engineer_Computer
Please open Telegram to view this post
VIEW IN TELEGRAM
بررسی استفاده از ابزار Performance Monitor (PerfMon) در تشخیص حملات مرتبط با Active Directory

نویسنده با تأکید بر اهمیت نظارت بر رویدادهای Active Directory، نشان می‌دهد که چگونه می‌توان با استفاده از PerfMon، حملاتی مانند Kerberoasting و AS-REP Roasting را شناسایی کرد.
در این مقاله، با استفاده از مجموعهٔ پیش‌فرض داده‌های تشخیصی Active Directory در PerfMon، رویدادهای مربوط به درخواست‌های Ticket Granting Service (TGS) که نشان‌دهندهٔ حملات Kerberoasting هستند، مورد بررسی قرار می‌گیرند. نویسنده با ارائهٔ تصاویری از نتایج به‌دست‌آمده، نشان می‌دهد که چگونه می‌توان با مشاهدهٔ تعداد زیاد درخواست‌های TGS توسط یک حساب کاربری، به وجود چنین حملاتی پی برد.

همچنین، مقاله به منابعی مانند «Kerberosity Killed the Domain: An Offensive Kerberos Overview» اشاره می‌کند که برای درک بهتر مفاهیم مرتبط با این نوع حملات مفید هستند.
در مجموع، این مقاله نشان می‌دهد که چگونه می‌توان از PerfMon برای نظارت بر رویدادهای Active Directory و شناسایی فعالیت‌های مشکوک مرتبط با حملات Kerberos استفاده کرد.

https://www.huntress.com/blog/perfmon-what-is-it-good-for

🔹 Share & Support Us 🔹
📱 Channel : @Engineer_Computer
Please open Telegram to view this post
VIEW IN TELEGRAM
Network Security Channel
بررسی استفاده از ابزار Performance Monitor (PerfMon) در تشخیص حملات مرتبط با Active Directory نویسنده با تأکید بر اهمیت نظارت بر رویدادهای Active Directory، نشان می‌دهد که چگونه می‌توان با استفاده از PerfMon، حملاتی مانند Kerberoasting و AS-REP Roasting…
توضیحی بر مقاله ی فوق
و تمرین


بررسی ابزار  PerfMon برای کشف حمله کربروستینگ
فرای رویداد های  4768 و  4769

تکنیک Kerberoasting یکی از تکنیک‌های محبوب حمله در محیط‌های Active Directory (AD) است که مهاجمان از آن برای سرقت هش بلیط‌های سرویس (TGS) و کرک کردن رمزهای عبور حساب‌های سرویس استفاده می‌کنند. شناسایی این نوع حمله با ابزار Performance Monitor می‌تواند در کشف و جلوگیری از تهدیدات کمک کند.

1. مروری بر حمله Kerberoasting

مهاجم از یک حساب کاربری دامنه احراز هویت‌شده استفاده کرده و درخواست بلیط سرویس (TGS) را برای یک حساب سرویس که از رمز عبور ضعیف استفاده می‌کند، ارسال می‌کند. این بلیط سپس از حافظه استخراج و برای کرک شدن به ابزارهایی مانند Hashcat یا John the Ripper داده می‌شود.

2. چرا PerfMon برای شناسایی مفید است؟

این ابزار یک ابزار داخلی ویندوز است که داده‌های عملکردی سیستم را جمع‌آوری و نمایش می‌دهد. با استفاده از PerfMon می‌توان شاخص‌های غیرعادی مربوط به درخواست‌های TGS را نظارت کرده و فعالیت‌های مشکوک را شناسایی کرد.

3. پیکربندی PerfMon برای شناسایی Kerberoasting

3.1. اجرای Performance Monitor

3.2. ایجاد یک Data Collector Set سفارشی

در بخش Data Collector Sets، روی User Defined کلیک راست کرده و New > Data Collector Set را انتخاب کنید.

یک نام مانند Kerberoasting Detection وارد کنید و گزینه Create manually (Advanced) را انتخاب کنید.

روی Performance Counter کلیک کرده و گزینه Add را بزنید.

3.3. افزودن کانترهای مرتبط

افزودن کانترهای زیر به تشخیص رفتار مشکوک کمک می‌کند:

Security System-Wide Statistics > Ticket Granting Service Requests

Security System-Wide Statistics > Kerberos Authentications

3.4. تنظیم Alert برای فعالیت غیرعادی

در Performance Monitor، به Alerts بروید

مقدار آستانه  را برای TGS Requests روی مقدار غیرمعمول بالا تنظیم کنید (مثلاً بیش از 100 در یک دقیقه).

یک Action تعریف کنید که در صورت عبور از این مقدار، هشدار ارسال شود.

4. تحلیل نتایج و تشخیص فعالیت‌های مشکوک

بعد از اجرای PerfMon، تیم امنیتی می‌تواند گزارش‌های ذخیره‌شده را تجزیه‌وتحلیل کند:

افزایش درخواست‌های TGS: اگر تعداد درخواست‌ها افزایش پیدا کند، ممکن است نشانه‌ای از حمله باشد.

درخواست‌های زیاد از یک حساب کاربری خاص: اگر یک حساب معمولی (نه حساب سرویس) تعداد زیادی درخواست TGS ارسال کند، احتمال حمله افزایش می‌یابد.

درخواست‌های متعدد برای بلیط‌های حساب‌های حساس: مهاجمان اغلب به دنبال حساب‌های سطح بالا یا سرویس‌های حیاتی هستند.

5. اقدامات اصلاحی در برابر این حمله

در صورت شناسایی رفتار مشکوک، مراحل زیر را انجام دهید:

بررسی لاگ‌های امنیتی در Event Viewer: به مسیر Windows Logs > Security رفته و Event ID 4769 را بررسی کنید.

فعال کردن حسابرسی Kerberos در Group Policy: مسیر Computer Configuration > Windows Settings > Security Settings > Advanced Audit Policy Configuration را باز کنید و گزینه Audit Kerberos Authentication Service را فعال کنید.

استفاده از رمزهای عبور قوی برای سرویسها: از حساب‌های مدیریت‌شده (gMSA) استفاده کنید تا رمزهای عبور به‌طور خودکار تغییر کنند.

محدود کردن استفاده از حساب‌های دارای SPN: آنها که نیازی به SPN ندارند را بررسی کرده و حذف کنید.

نصب ابزارهای امنیتی مکمل:  SIEM و EDR

🔹 Share & Support Us 🔹
📱 Channel : @Engineer_Computer
Please open Telegram to view this post
VIEW IN TELEGRAM
در SOC استفاده کنید: Measured Boot
کشف نفوذ در عمق🔴


این Measured Boot چیست و چگونه جلوی نفوذ را می‌گیرد؟
این موضوع یکی از قابلیت‌های امنیتی در TPM 2.0 است که به سیستم‌عامل و ابزارهای امنیتی مانند EDR/XDR یا SIEM (مثل Splunk) کمک می‌کند تا تغییرات در فرآیند بوت را شناسایی کنند.

عملکرد Measured Boot:

هر مرحله از بوت توسط TPM هش شده و در PCR (Platform Configuration Registers) ذخیره می‌شود.
این مقادیر هش در SIEM یا EDR/XDR ارسال می‌شوند و بررسی می‌شود که آیا تغییری رخ داده است یا خیر.
اگر مقدار هش با مقدار مورد انتظار تطابق نداشته باشد، یعنی یک Bootkit، Rootkit، یا تغییر غیرمجاز در Bootloader یا کرنل رخ داده است.

🔹 نکته مهم:Measured Boot نمی‌تواند جلوی نفوذ را بگیرد، اما آن را شناسایی کرده و به SIEM/EDR هشدار می‌دهد.
🔹 در ترکیب با Secure Boot و TPM Attestation، می‌تواند جلوی اجرای بوت‌لودرهای غیرمجاز را هم بگیرد.


❇️استفاده از Measured Boot در Splunk برای کشف نفوذ

هدف: بررسی لاگ‌های Measured Boot در Splunk و تشخیص Bootkits یا Rootkits.

1. فعال‌سازی لاگ‌های Measured Boot در ویندوز

مطمئن شوید که TPM و Secure Boot فعال هستند.
این Windows Event Logging را برای Measured Boot فعال کنید:

Group Policy Editor را باز کنید:

Computer Configuration -> Administrative Templates -> System -> Trusted Platform Module Services

گزینه Turn on TPM Services Logging را فعال کنید.
و Reboot کنید تا تنظیمات اعمال شوند.

2. ارسال لاگ‌های Measured Boot به Splunk

این Splunk می‌تواند لاگ‌های مربوط به TPM و Measured Boot را جمع‌آوری کند.

منبع لاگ‌ها در ویندوز:

Windows Logs -> Security -> Event ID 4912 (Measured Boot Logs)

منبع لاگ‌ها در لینوکس:

/sys/kernel/security/tpm0/binary_bios_measurements

💡 اضافه کردن این لاگ‌ها به Splunk:

پیکربندی Universal Forwarder در Splunk:

splunk add monitor "C:\Windows\System32\winevt\Logs\Security.evtx" -sourcetype winlog

استفاده از Windows Event Collector (WEC) برای دریافت لاگ‌های Measured Boot:

wevtutil qe Security /q:"*[System[(EventID=4912)]]" /f:text

پیکربندی Input در Splunk (inputs.conf):

[WinEventLog://Security]
disabled = 0
index = security
sourcetype = WinEventLog:Security

3. تحلیل لاگ‌های Measured Boot در Splunk

جستجوی تغییرات غیرمجاز در PCR (Platform Configuration Registers)

index=security sourcetype=WinEventLog:Security EventID=4912
| eval PCR_Values = mvjoin(PCR_Values, ",")
| table _time host PCR_Values

📌 اگر مقدار PCR در بوت‌های مختلف تغییر کند، یعنی تغییری در Bootloader یا کرنل رخ داده است.

شناسایی سیستم‌هایی که Measured Boot آن‌ها ناموفق بوده است:

index=security sourcetype=WinEventLog:Security EventID=4912 Status!="Success"
| table _time host Status

📌 اگر مقدار Status چیزی غیر از "Success" باشد، احتمال دارد که سیستم مورد حمله قرار گرفته باشد.

مقایسه مقادیر Measured Boot بین بوت‌های مختلف:

index=security sourcetype=WinEventLog:Security EventID=4912
| stats values(PCR_Values) by host

📌 اگر مقدار PCR_Values بین بوت‌های مختلف تغییر کرده باشد، احتمالا یک Bootkit فعال شده است.
4. تنظیم هشدار (Alert) در Splunk

اگر تغییری در PCR Values شناسایی شود، باید یک هشدار در Splunk تنظیم کنیم:

ساختن هشدار در Splunk برای تغییر در PCR Values

به Splunk Alert Manager بروید.
جستجوی زیر را به عنوان شرط هشدار تنظیم کنید:

index=security sourcetype=WinEventLog:Security EventID=4912
| stats count by PCR_Values
| where count > 1

در Trigger Actions، ارسال ایمیل یا اجرای اسکریپت برای بررسی سیستم را فعال کنید.

🔹 Share & Support Us 🔹
📱 Channel : @Engineer_Computer
Please open Telegram to view this post
VIEW IN TELEGRAM
حمله زنجیره‌ تامین محتمل است؛
ادمین های لینوکس مواظب باشند

بررسی امضای دیجیتال بسته‌های نرم‌افزاری توسط ادمین‌های سیستم می‌تواند از حملات زنجیره تأمین جلوگیری کند تا بدافزارها در سیستم های ما تزریق نشوند.

در ادامه روش‌های بررسی امضای بسته‌ها در APT (Debian/Ubuntu)، YUM و DNF (RHEL/CentOS)، و Snap آورده شده است.
1. بررسی امضای دیجیتال در APT (Debian/Ubuntu)

در APT از GPG keys برای امضای بسته‌ها استفاده می‌شود
الف) بررسی کلیدهای مخزن

ادمین‌ها باید ابتدا کلیدهای مورداعتماد را تأیید کنند:

apt-key list

یا برای سیستم‌های جدیدتر:

gpg --list-keys --keyring /etc/apt/trusted.gpg

اگر کلید جدیدی به مخزن اضافه شده است، باید اطمینان حاصل کنید که از منبع معتبری آمده است.
ب) بررسی امضای بسته‌ها

برای بررسی امضای یک بسته قبل از نصب:

apt-cache policy <package-name>

مثال:

apt-cache policy openssh-server

اگر در خروجی "500" یا "100" مشاهده شد، یعنی از یک مخزن رسمی دریافت می‌شود.
ج) بررسی صحت بسته‌های دانلود شده

پس از دانلود:

dpkg-sig --verify package.deb

همچنین، می‌توان از debsig-verify استفاده کرد:

debsig-verify package.deb

2. بررسی امضای دیجیتال در YUM و DNF (RHEL/CentOS)

YUM و DNF از GPG keys برای اعتبارسنجی استفاده می‌کنند.
الف) بررسی کلیدهای GPG

لیست کلیدهای نصب‌شده را بررسی کنید:

rpm -q gpg-pubkey --qf "%{NAME}-%{VERSION}-%{RELEASE}\n"

ب) بررسی امضای بسته‌ها قبل از نصب

yum list <package-name>
dnf repoquery --info <package-name>

اگر Signature : RSA/SHA256, Key ID نمایش داده شود، یعنی بسته معتبر است.
ج) بررسی امضای یک بسته RPM

پس از دانلود بسته:

rpm --checksig -v package.rpm

مثال:

rpm --checksig -v httpd-2.4.6-97.el7.centos.x86_64.rpm

اگر نتیجه gpg OK باشد، یعنی امضا معتبر است.
3. بررسی امضای دیجیتال در Snap

Snap از امضای دیجیتال Canonical برای تضمین امنیت بسته‌ها استفاده می‌کند.
الف) بررسی امضای بسته Snap

قبل از نصب:

snap info <package-name>

مثال:

snap info vlc

اطمینان حاصل کنید که نام Publisher همان ناشر رسمی بسته است.
ب) بررسی تأییدیه GPG برای Snap

برای بررسی صحت امضای مخزن:

snap known account-key

این دستور کلیدهای عمومی امضاکننده را نشان می‌دهد.


**هشدار : همانطور که مسبوق به سابقه است امضا ها هم جعل شده اند. پس مسوولان امنیت کشور و تیم امنیت سازمان باید فکری کند.
راهکار اول اطلاعات هوش تهدید

🔹 Share & Support Us 🔹
📱 Channel : @Engineer_Computer
Please open Telegram to view this post
VIEW IN TELEGRAM
فکر میکنم این کار جالبیه

https://docs.google.com/spreadsheets/u/0/d/1E5SDC5cwXWz36rPP_TXhhAvTvqz2RGnMYXieu4ZHx64/htmlview?pli=1#gid=0

🔹 Share & Support Us 🔹
📱 Channel : @Engineer_Computer
Please open Telegram to view this post
VIEW IN TELEGRAM
🚨کدام به‌روش ها برای پیاده سازی DLP مناسب هستند چون برخی پروژه ها به شکست می‌خورند

پیاده‌سازی موفق DLP به یک رویکرد جامع نیاز دارد، زیرا بسیاری از پروژه‌های Data Loss Prevention (DLP) به دلیل عدم برنامه‌ریزی مناسب، پیچیدگی فنی، و مقاومت کاربران شکست می‌خورند. در ادامه، بهترین روش‌ها (Best Practices) برای پیاده‌سازی موفق Symantec DLP آورده شده است:
1. تعریف اهداف و استراتژی DLP

قبل از پیاده‌سازی باید به سؤالات زیر پاسخ دهید:
چه داده‌هایی باید محافظت شوند؟ (اطلاعات مالی، مشتریان، داده‌های محرمانه)
چه تهدیداتی وجود دارند؟ (نشت داده از طریق ایمیل، USB، کپی در Cloud و غیره)
کدام بخش‌ها بیشترین خطر را دارند؟ (مالی، منابع انسانی، IT)

🔹 راهکار: استفاده از Data Classification برای اولویت‌بندی داده‌های حساس.
2. شناخت و طبقه‌بندی داده‌ها

راهکار: ابتدا یک Discovery Scan اجرا کنید تا بدانید داده‌های حساس کجا ذخیره شده‌اند و سپس Policyهای مناسب را تنظیم کنید.

💡 اشتباه رایج: تنظیم سیاست‌های خیلی سختگیرانه بدون شناخت صحیح داده‌ها، که باعث هشدارهای کاذب (False Positive) و نارضایتی کاربران می‌شود.
3. شروع با مانیتورینگ (Monitor Mode) و نه بلاک کردن

راهکار: ابتدا سیاست‌ها را در حالت Monitor تنظیم کنید تا تأثیر آن‌ها روی سیستم بررسی شود.
💡 دلیل: اگر سیاست‌ها مستقیماً در حالت Block باشند، ممکن است عملیات تجاری دچار اختلال شود و مقاومت کاربران افزایش یابد.
4. اجرای سیاست‌ها به‌صورت مرحله‌ای (Phased Approach)

راهکار: سیاست‌های DLP را مرحله‌به‌مرحله اجرا کنید، نه به‌صورت یکجا.
🔹 مثال:

فاز ۱: نظارت بر ایمیل‌های خروجی
فاز ۲: نظارت بر داده‌های USB و Cloud
فاز ۳: اجرای سیاست‌های بلاکینگ

💡 چرا؟ اجرای ناگهانی تمام سیاست‌ها باعث نارضایتی کارمندان و مشکلات عملکردی می‌شود.
5. ایجاد فرآیندهای پاسخگویی (Incident Response Plan)

راهکار: قبل از اجرای سیاست‌های DLP، مشخص کنید که در صورت نقض قوانین، چه اقدامی انجام خواهد شد.
🔹 مثال:

ارسال هشدار به کاربر و تیم امنیت
بررسی دستی و تأیید تخلفات
مسدود کردن خودکار انتقال داده

💡 اشتباه رایج: نداشتن برنامه مشخص، که باعث تأخیر در واکنش به تهدیدها می‌شود.
6. تعامل با کاربران و آموزش آن‌ها

راهکار: کارمندان باید بدانند که DLP برای کمک به امنیت سازمان است، نه صرفاً برای کنترل آن‌ها.
🔹 اقدامات:

برگزاری جلسات آموزشی درباره سیاست‌های DLP
اطلاع‌رسانی درباره دلایل مسدود شدن برخی فعالیت‌ها
ارائه راهکارهای جایگزین (مانند استفاده از VPN یا Secure File Transfer برای ارسال داده‌های حساس)

💡 دلیل شکست: مقاومت کاربران به دلیل اطلاع نداشتن از هدف پروژه DLP.
7. استفاده از Context-Aware Policies

راهکار: به جای مسدود کردن تمام فعالیت‌ها، از سیاست‌های هوشمند و مبتنی بر محتوا (Content-Aware) استفاده کنید.
🔹 مثال:

ارسال فایل‌های اکسل حاوی شماره کارت بانکی مسدود شود، ولی ارسال سایر فایل‌ها مجاز باشد.
مدیران سطح بالا اجازه انتقال برخی داده‌های حساس را داشته باشند، ولی کارمندان معمولی نه.

💡 دلیل شکست: تنظیم قوانین سفت‌وسخت که عملکرد کسب‌وکار را مختل می‌کند.
8. نظارت و بهینه‌سازی مداوم (Continuous Tuning & Optimization)

راهکار: تنظیمات و سیاست‌های DLP را به‌صورت دوره‌ای بازبینی کنید و بر اساس گزارش‌ها و وقایع امنیتی بهینه‌سازی کنید.
🔹 ابزارها:

تحلیل False Positive و تنظیم قوانین برای کاهش آن
بررسی عملکرد سیستم و بهینه‌سازی سیاست‌ها برای جلوگیری از کاهش کارایی

💡 اشتباه رایج: تنظیم یک‌باره‌ی DLP و عدم بررسی مداوم، که باعث هشدارهای زیاد و ناکارآمدی سیاست‌ها می‌شود.
9. استفاده از یک تیم متخصص و همکاری با مدیران سازمان

راهکار:

تیمی متشکل از امنیت اطلاعات، شبکه، حقوقی و منابع انسانی تشکیل دهید.
مدیران سازمان را در جریان بگذارید تا از اجرای سیاست‌های DLP حمایت کنند.

💡 دلیل شکست: عدم حمایت مدیران و نادیده گرفتن نیازهای بخش‌های مختلف سازمان.
جمع‌بندی: چرا پروژه‌های DLP شکست می‌خورند؟

سیاست‌های خیلی سختگیرانه بدون شناخت دقیق داده‌ها
عدم تعامل و آموزش کاربران
اجرای ناگهانی و بدون برنامه‌ریزی
تنظیم نکردن فرآیندهای پاسخگویی
عدم بررسی و بهینه‌سازی مداوم

راهکارهای موفقیت:
1️⃣ اجرای اسکن‌های اولیه برای شناخت داده‌ها
2️⃣ شروع با مانیتورینگ و اجرای سیاست‌ها به‌صورت تدریجی
3️⃣ تعامل و آموزش کاربران برای کاهش مقاومت
4️⃣ تنظیم سیاست‌های هوشمند و انعطاف‌پذیر
5️⃣ بررسی مداوم و بهینه‌سازی سیاست‌های DLP

🔹 Share & Support Us 🔹
📱 Channel : @Engineer_Computer
Please open Telegram to view this post
VIEW IN TELEGRAM
Risk.pdf
860.8 KB
ریسک رو چطور انجام دادید ؟

اونو ارزیابی کنید
🔹 Share & Support Us 🔹
📱 Channel : @Engineer_Computer
Please open Telegram to view this post
VIEW IN TELEGRAM
💫 مقایسه TLSH و ssdeep در تحلیل بدافزار و فیشینگ

در دنیای امنیت سایبری، شناسایی فایل‌های مخرب و حملات فیشینگ یکی از چالش‌های مهم است. روش‌های سنتی هشینگ مانند MD5 و SHA-256 برای شناسایی دقیق یک فایل خاص مفید هستند، اما در برابر تغییرات جزئی در فایل‌ها کارایی ندارند یعنی هکر با تغییر کوچکی در بدافزار ؛ امضا (هش)آنرا تغییر داده و ما را دور میزند. .
برای حل این مشکل، روش‌های هشینگ فازی مانند TLSH (Trend Locality Sensitive Hashing) و ssdeep توسعه یافته‌اند. این روش‌ها امکان شناسایی شباهت‌های ساختاری بین فایل‌ها را فراهم می‌کنند، حتی اگر تغییراتی در محتوا رخ داده باشد. در این اینجا ، به بررسی این دو روش و کاربردهای آن‌ها در امنیت سایبری می‌پردازم.

🟧معرفی ssdeep

این ssdeep یک ابزار هشینگ فازی است که از Context Triggered Piecewise Hashing (CTPH) استفاده می‌کند. این روش فایل را به بلوک‌های کوچکتر تقسیم کرده و برای هر بلوک یک مقدار هش تولید می‌کند. سپس این هش‌ها ترکیب شده و مقدار نهایی هشینگ فازی را تشکیل می‌دهند. تفاوت اصلی ssdeep با روش‌های هشینگ سنتی این است که امکان مقایسه درصدی دو فایل را فراهم می‌کند، به طوری که فایل‌هایی که تغییرات اندکی دارند، همچنان به عنوان فایل‌های مشابه شناخته می‌شوند.

✔️از جمله کاربردهای ssdeep می‌توان به موارد زیر اشاره کرد:

تحلیل بدافزارها: شناسایی نمونه‌های مشابه از بدافزارها، حتی اگر تغییرات جزئی در آن‌ها ایجاد شده باشد.
تشخیص فیشینگ: مقایسه محتوای HTML سایت‌های فیشینگ برای یافتن الگوهای مشابه.
مدیریت داده‌های بزرگ: شناسایی فایل‌های مشابه در حجم‌های عظیم داده.

با این حال، ssdeep دارای محدودیت‌هایی نیز هست. برای مثال، اگر تغییرات در فایل به صورت پراکنده باشد، دقت شناسایی کاهش می‌یابد.

🔴معرفی TLSH

این TLSH یک روش هشینگ فازی توسعه‌یافته توسط Trend Micro است که بر خلاف ssdeep، از رویکرد متفاوتی برای شناسایی شباهت‌ها استفاده می‌کند. TLSH ساختار کلی فایل را با استفاده از تجزیه و تحلیل الگوی بایتی آن بررسی کرده و یک هش خاص تولید می‌کند. این هش‌ها قابلیت مقایسه عددی دارند، به طوری که امتیازات پایین‌تر نشان‌دهنده شباهت بیشتر بین فایل‌ها هستند.

❇️مزایای TLSH عبارتند از:

دقت بالاتر در مقایسه فایل‌ها: برخلاف ssdeep، این روش به تغییرات جزئی حساسیت کمتری دارد.
کارایی بالا در تحلیل بدافزار: قابلیت تشخیص نمونه‌های تغییر یافته از یک بدافزار با دقت بیشتر.
عدم نیاز به اندازه ثابت فایل‌ها: برخلاف ssdeep که به فایل‌های بزرگ وابسته است، TLSH روی فایل‌های کوچک‌تر نیز موثر عمل می‌کند.

یکی از نقاط ضعف TLSH این است که به اندازه ssdeep در تشخیص تغییرات محلی حساس نیست، زیرا تمرکز آن بر ساختار کلی فایل است.


👌به طور کلی، اگر نیاز به تشخیص تغییرات جزئی در یک فایل باشد، ssdeep انتخاب بهتری است. اما اگر هدف، تحلیل ساختاری کلی فایل باشد، TLSH عملکرد بهتری دارد.


هشینگ فازی یک ابزار قدرتمند برای شناسایی بدافزارها و حملات فیشینگ است. هر دو روش ssdeep و TLSH در امنیت سایبری کاربردهای فراوانی دارند، اما بسته به نیاز، یکی ممکن است بر دیگری برتری داشته باشد. ترکیب این دو روش می‌تواند به تحلیل‌گران امنیتی کمک کند تا تهدیدات جدید را سریع‌تر و دقیق‌تر شناسایی کنند.

🔹 Share & Support Us 🔹
📱 Channel : @Engineer_Computer
Please open Telegram to view this post
VIEW IN TELEGRAM
جلوگیری از شناسایی VM هنگام تحلیل بدافزار

بدافزار ها را معمولا در یک vm اجرا می‌کنیم تا رفتار آنرا ببینیم. بدافزارها هم تلاش دارند محیط vm را شناسایی کنند و اقدامات لازم را انجام دهند.
حال ما چه میکنیم ؟
🔆بطور خلاصه یکسری ایده :

✔️استفاده از دیباگر (x64dbg) و تغییر مقدار APIها در حافظه.
✔️ویرایش رجیستری برای حذف نام‌های مربوط به VMware و VirtualBox.
✔️انجام Hook کردن APIها در سطح کد (DLL Injection) برای تغییر مقدار برگشتی.
✔️استفاده از ابزارهای آماده مثل ScyllaHide برای مخفی کردن محیط مجازی.

🔴شرح موضوع

برای جلوگیری از شناسایی محیط مجازی، می‌توانیم APIهایی که بدافزار برای تشخیص VM استفاده می‌کند را Patch کنیم یا مقادیر جعلی برگردانیم. این کار را می‌توان از طریق Hook کردن APIها، ویرایش کد اسمبلی، یا استفاده از ابزارهای آماده انجام داد.
روش ۱: Hook کردن APIها در دیباگر (x64dbg / OllyDbg)
مثال: Patch کردن NtQuerySystemInformation

یکی از رایج‌ترین روش‌های تشخیص VM، استفاده از NtQuerySystemInformation است. این API مقدار SystemFirmwareTableInformation یا SystemManufacturer را بررسی می‌کند. اگر مقادیر مربوط به VMware یا VirtualBox باشند، بدافزار متوجه محیط مجازی خواهد شد.
مراحل Patch کردن در دیباگر (x64dbg)

بدافزار را در x64dbg اجرا کنید.
به منوی Symbols بروید و ntdll.dll را انتخاب کنید.
تابع NtQuerySystemInformation را پیدا کنید.
روی آن Breakpoint (BP) بگذارید تا ببینید چه مقدار برمی‌گرداند.
مقدار برگشتی را با مقدار یک سیستم فیزیکی جایگزین کنید. (مثلاً "DELL" یا "HP" برای سازنده‌ی سیستم)
در اسمبلی، مقدار EAX را به عدد 0 تغییر دهید (که یعنی تابع موفق اجرا شده ولی مقدار VM را برنمی‌گرداند).

mov eax, 0
ret

روش ۲: تغییر مقادیر رجیستری برای جلوگیری از تشخیص VM

اگر بدافزار مستقیماً از رجیستری ویندوز مقدار را می‌خواند، می‌توانیم آن را تغییر دهیم. برخی کلیدهای مهم:
ویرایش مقدار SystemBiosVersion در رجیستری

regedit را باز کنید.
به مسیر زیر بروید:

HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System

مقدار SystemBiosVersion را تغییر دهید و مثلاً "DELL BIOS" را جایگزین کنید.

حذف اطلاعات مربوط به VMware از رجیستری

به مسیرهای زیر بروید و مقدار آن‌ها را پاک کنید:

HKEY_LOCAL_MACHINE\SOFTWARE\VMware, Inc.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VBoxGuest

روش ۳: Hook کردن APIها در سطح کد (با DLL Injection)

✴️می‌توان با نوشتن یک DLL و تزریق آن در پروسه‌ی بدافزار، مقدار خروجی API را تغییر داد.
مثال: Hook کردن CPUID برای جلوگیری از شناسایی VMware
۱. کد C++ برای تغییر خروجی CPUID

#include <windows.h>
#include <detours.h>
#include <intrin.h>

typedef void (WINAPI* CPUID_t)(int[4], int);
CPUID_t Real_CPUID = (CPUID_t)__cpuid;

void WINAPI Fake_CPUID(int CPUInfo[4], int InfoType) {
Real_CPUID(CPUInfo, InfoType);

if (InfoType == 0) {
// تغییر مقدار برگشتی برای جلوگیری از شناسایی VM
CPUInfo[1] = 'Genu'; // تغییر به پردازنده Intel
CPUInfo[2] = 'ineI';
CPUInfo[3] = 'ntel';
}
}


void HookAPI() {
DetourTransactionBegin();
DetourUpdateThread(GetCurrentThread());
DetourAttach(&(PVOID&)Real_CPUID, Fake_CPUID);
DetourTransactionCommit();
}

۲. کامپایل کد و تزریق آن در بدافزار

این کد مقدار CPUID را تغییر می‌دهد تا سیستم به‌عنوان Intel واقعی شناسایی شود و نه ماشین مجازی.
برای اجرای آن، باید از DLL Injection استفاده کنید.

روش ۴: استفاده از ابزارهای آماده برای مخفی کردن VM
ScyllaHide (برای دور زدن Anti-Debug و VM Detection)

این ScyllaHide یک پلاگین برای x64dbg است که به‌صورت خودکار مقدار APIها را تغییر می‌دهد تا سیستم، فیزیکی به نظر برسد.
مراحل استفاده از ScyllaHide

پلاگین ScyllaHide را در x64dbg نصب کنید.
به مسیر Plugins > ScyllaHide بروید.
گزینه‌های VM Detection Bypass و Anti-Debug Protection را فعال کنید.
اجرای بدافزار را تست کنید تا ببینید آیا همچنان محیط را به عنوان VM تشخیص می‌دهد یا نه.

🔹 Share & Support Us 🔹
📱 Channel : @Engineer_Computer
Please open Telegram to view this post
VIEW IN TELEGRAM