از تحلیل Attack Graph تا امنیت پیشبینانه (Predictive Security)
در بسیاری از حملات سایبری پیشرفته، مهاجم تنها با بهرهبرداری از یک آسیبپذیری موفق نمیشود. در اغلب موارد، حمله بهصورت زنجیرهای از چند مرحله انجام میشود که به آن Attack Path (مسیر حمله) گفته میشود. این مسیر ممکن است شامل مراحلی مانند Initial Access (دسترسی اولیه)، Privilege Escalation (افزایش سطح دسترسی)، Credential Theft (سرقت اعتبارنامه) و Lateral Movement (حرکت جانبی در شبکه) باشد.
در زیرساختهای سازمانی بزرگ که شامل صدها یا هزاران Host (میزبان)، Account (حساب کاربری)، Service (سرویس) و Application (برنامه کاربردی) هستند، روابط پیچیدهای میان اجزای مختلف وجود دارد. همین روابط میتوانند مسیرهایی ایجاد کنند که مهاجم از آنها برای حرکت در شبکه استفاده کند.
در چنین محیطهایی، شناسایی مسیرهای احتمالی حمله با روشهای سنتی بسیار دشوار است. به همین دلیل، در سالهای اخیر استفاده از روشهای Graph Analytics (تحلیل گراف) و بهویژه Graph Neural Networks – GNN (شبکههای عصبی گراف) بهعنوان یک رویکرد نوین برای تحلیل ساختار شبکه و پیشبینی رفتار مهاجم مورد توجه قرار گرفته است.
Attack Graph؛ مدلسازی ساختار حمله
برای تحلیل مسیرهای حمله، ابتدا باید زیرساخت سازمان در قالب یک Attack Graph (گراف حمله) مدلسازی شود.
Attack Graph نشان میدهد مهاجم از چه نقاط ورود، دسترسیها، آسیبپذیریها و روابط اعتماد میتواند استفاده کند و چگونه از یک وضعیت به وضعیت دیگر در شبکه حرکت کند.
بهطور کلی، Attack Graph را میتوان به دو شکل رایج مدلسازی کرد:
1) مدل مبتنی بر وضعیت یا دسترسی (State-Based)
در این رویکرد، گرهها لزوماً خودِ داراییها نیستند، بلکه بیشتر نمایندهی یک وضعیت امنیتی یا سطح دسترسی هستند.
برای مثال، یک گره میتواند یکی از حالتهای زیر را نشان دهد:
• مهاجم به یک Workstation دسترسی کاربری دارد
• مهاجم میتواند یک سرویس خاص روی Database Server را هدف قرار دهد
• مهاجم روی یک Server به سطح Local Admin رسیده است
• مهاجم به Domain Controller دسترسی مدیریتی پیدا کرده است
در این مدل، یالها معمولاً نشاندهندهی عملی است که باعث میشود مهاجم از یک وضعیت به وضعیت دیگر برسد، مانند:
• Vulnerability Exploitation (بهرهبرداری از یک آسیبپذیری)
• Use of Stolen Credentials (استفاده از حسابهای کاربری سرقتشده یا درز کرده)
• Privilege Escalation (افزایش سطح دسترسی)
• Lateral Movement (حرکت جانبی در شبکه)
2) مدل مبتنی بر دارایی (Asset-Centric)
در برخی پیادهسازیهای عملی و ابزارهای تجاری، Attack Graph به شکل سادهتری نمایش داده میشود.
در این حالت، گرهها نمایندهی داراییها یا موجودیتهای اصلی هستند، مانند:
• Server (سرور)
• Workstation (ایستگاه کاری)
• User Account (حساب کاربری)
• Database (پایگاه داده)
• Cloud Resource (منبع ابری)
در این مدل، یالها معمولاً روابط یا امکان حرکت میان این داراییها را نشان میدهند، از جمله:
• Network Connectivity (اتصال شبکه)
• Trust Relationship (رابطه اعتماد)
• Credential Access (دسترسی به اعتبارنامه)
• Service Dependency (وابستگی سرویسها)
این نوع مدلسازی برای تحلیل عملیاتی و نمایش سادهتر مسیرهای حمله مفید است، اما در مقایسه با مدل state-based معمولاً جزئیات کمتری از وضعیت دقیق مهاجم نشان میدهد.
بهطور کلی، Attack Graph مشخص میکند که مهاجم چگونه میتواند از یک نقطه در شبکه به نقاط حساستر برسد. برای مثال:
Workstation → File Server → Domain Controller
در چنین سناریویی، مهاجم ممکن است ابتدا یک Workstation را compromise (بهخطر انداختن یک سیستم) کند، سپس از طریق سوءاستفاده از Credentials (اعتبارنامهها)، دسترسیهای موجود، روابط اعتماد یا آسیبپذیریهای قابل بهرهبرداری به File Server برسد و در ادامه خود را به Domain Controller نزدیک کند.
بنابراین، Attack Graph صرفاً فهرستی از آسیبپذیریها نیست، بلکه زنجیرهی ممکنِ پیشروی مهاجم در زیرساخت را نمایش میدهد.
محدودیت روشهای سنتی تحلیل Attack Path
روشهای سنتی تحلیل Attack Graph و Attack Path معمولاً بر پایه رویکردهای زیر هستند:
• Rule-Based Analysis (تحلیل مبتنی بر قانون)
• Static Risk Scoring (امتیازدهی ایستای ریسک)
• Vulnerability Correlation (همبستگی آسیبپذیریها)
اگرچه این رویکردها در بسیاری از ابزارهای Vulnerability Management (مدیریت آسیبپذیری) و Attack Surface Analysis (تحلیل سطح حمله) استفاده میشوند، اما محدودیتهای مهمی دارند.
از جمله مهمترین این محدودیتها میتوان به موارد زیر اشاره کرد:
• دشواری تحلیل در شبکههای بزرگ و پیچیده
• ناتوانی در مدلسازی روابط غیرمستقیم و چندمرحلهای بین سیستمها
• وابستگی زیاد به قوانین از پیش تعریفشده
• دشواری در بهروزرسانی سریع با تغییرات زیرساخت
• ناتوانی در برآورد احتمالپذیری یا مطلوبیت مسیرها برای مهاجم
به بیان دیگر، این روشها معمولاً مسیرهای ممکن را نشان میدهند، اما لزوماً مشخص نمیکنند کدام مسیرها محتملتر، کمهزینهتر یا خطرناکتر هستند.
به همین دلیل، در سالهای اخیر پژوهشگران و توسعهدهندگان ابزارهای امنیتی به سمت استفاده از روشهای Machine Learning (یادگیری ماشین) و Deep Learning (یادگیری عمیق)، بهویژه مدلهای گرافمحور، حرکت کردهاند تا بتوانند علاوه بر نمایش ساختار حمله، اولویت، احتمال و الگوی حرکت مهاجم را نیز بهتر تحلیل کنند.
گردآورنده و ویراستار: مهندس رضا بنائی و مهندس امیرعلی محتشم
ناظر فنی محتوا: مهندس حاجب


