اعتماد به کنترل های امنیتی جایز نیست و باید با تست مشکلات آنها را پیدا کرد و برای مقاوم سازی راهکاری اندیشید. در اینجا تجربه یک تست عملیاتی همراه با راهکار مقاوم سازی برای EDR را ارایه میکنم تا بدانیم اعتماد حد و مرزی دارد و دائم باید کنترل ها را بررسی و مانیتور کرد. این تجربه همراه با بررسی جوانب و موارد تاریخی و بازنویسی همراه شده تا برای خواننده درک بهتری ایجاد کند . طبعا در تستها از تکنیک های اختصاصی هم استفاده میشود که بنا به مسایل حفظ مالکیت معنوی و اصول اخلاقیات هک ، ارایه آنها ممکن نیست. لذا این مقاله صد درصد کار انجام شده نمیباشد ولی تا حدود 90 درصد تمام مطالب و دستورات همان هستند که در تست عملیاتی مورد استفاده قرار گرفتند.
مقدمه
در سالهای اخیر، معماری EDRها بهگونهای طراحی شده که رفتار برنامهها را در لایههای مختلف سیستم- از User-mode تا Kernel-mode-رصد کند. بااینحال، یکی از خطرناکترین و پیچیدهترین روشهای دورزدن EDR، استفاده از درایورهای آسیبپذیر و امضاشده (Vulnerable Signed Drivers) است. این تکنیک که با نام BYOVD = Bring Your Own Vulnerable Driver شناخته میشود، امکان دسترسی به Ring 0 را در اختیار مهاجم قرار میدهد؛ سطحی از دسترسی که EDR نمیتواند از آن بالاتر برود.
این مقاله از پایهترین مفاهیم تا پیشرفتهترین جزئیات، این حمله را بررسی میکند.
بخش اول: معماری امنیت سیستمعامل و علت ضعف EDR در برابر Kernel-mode
Ring Levels چیست؟
پردازندههای x86 چهار حلقه حفاظت دارند:
Ring 3 : User Mode
Ring 0 : Kernel Mode
برنامههای معمولی، مرورگرها، برنامه های کاربردی و حتی EDR Agent عمدتاً در User Mode فعالیت میکنند.
اما:
درایورها و سیستمعامل و کنترلکنندههای سختافزار در Kernel Mode (Ring 0) اجرا میشوند.
✔ سیستمعامل به هر چیز در Kernel Mode اعتماد کامل دارد.
وقتی یک درایور آسیبپذیر در Ring 0 لود شود:
میتواند حافظه Kernel را بخواند/بنویسد
میتواند Callbackهای امنیتی را غیرفعال کند
میتواند Hookهای EDR را حذف کند
میتواند Processها و Threadها را مخفی کند (DKOM)
میتواند PatchGuard را دور بزند
EDR در این حالت ناتوان است چون نمیتواند به سطح بالاتری از Kernel دسترسی داشته باشد.
بخش دوم: چرا درایورهای آسیبپذیر خطرناکاند؟
در گذشته، ویندوز شرطی داشت:
فقط درایورهای امضاشده مایکروسافت لود شوند.
اما مشکل اینجاست:
✔ درایور آسیبپذیرِ قدیمی که امضای معتبر داشته باشند ویندوز آن را معتبر میداند حتی اگر حفرههای خطرناک داشته باشد مهاجم دقیقاً از همین سوءاستفاده میکند.
مهمترین خطرات درایور آسیبپذیر:
Arbitrary Read/Write در Kernel memory
IOCTLهای بدون کنترل
Mapping مستقیم Physical memory
Patch کردن SSDT
Patch کردن Ntoskrnl
غیرفعال کردن Driver Signing Enforcement
غیرفعال کردن ETW Providerها
این قابلیتها برای مهاجم بسیار قدرتمند هستند.

بخش سوم: روند واقعی حمله BYOVD (قدمبهقدم)
۱) مهاجم ابتدا به دسترسی Admin یا SYSTEM میرسد
درایور نیاز به Privilege بالا دارد.
این دسترسی معمولاً با روشهای زیر بهدست میآید:
Exploit
Password dump
Phishing
Token impersonation
۲) مهاجم یک درایور آسیبپذیر اما امضاشده را به سیستم وارد میکند
معمولاً درایورها از منابع زیر هستند:
نرمافزارهای قدیمی MSI Afterburner
GIGABYTE
ASUS GPU Tweak
Dell BIOS Update
LOADERهای چیت بازیها
سرورهای آلوده
پروژههای GitHub قدیمی
این درایورها اغلب آسیبپذیریهایی از جنس IOCTL Arbitrary Write دارند.
۳) مهاجم درایور را با Service Control Manager لود میکند
مثال:
sc create vulnDrv type= kernel binPath= "C:\temp\vuln.sys"
sc start vulnDrv
ویندوز بدون مشکلی، آن را لود میکند.
۴) از IOCTL آسیبپذیر برای نوشتن در حافظه Kernel استفاده میشود
در این مرحله مهاجم:
Hookهای امنیتی EDR را پاک میکند و Callbacks امنیتی را Null میکند وساختارهای EPROCESS را Patch میکند وخود را از Process list حذف میکند وETW را میکُشد
مثال یک IOCTL واقعی:
DeviceIoControl(hDriver, IOCTL_ARBITRARY_WRITE, &input, sizeof(input), NULL, 0, &bytes, NULL);
۵) EDR کور میشود و دیگر هیچ رفتار مخربی را نمیبیند
EDRهای زیر همگی در برابر این حمله آسیبپذیرند اگر Blocklist فعال نباشد.
CrowdStrike
Defender for Endpoint
SentinelOne
Sophos
CarbonBlack
Trellix
۶) مهاجم کارهای Post-Exploitation را بدون Detection انجام میدهد
کارهایی مثل:
LSASS dump
Credential theft
Mimikatz in kernel
Unhooking syscalls
Process injection
Dropping ransomware
و EDR هیچکدام را نمیبیند.
بخش چهارم: مثالهای واقعی از حمله BYOVD
1- بررسی MSI Afterburner (RTCore64.sys)
یکی از مشهورترین درایورهای سوءاستفادهشده.
Arbitrary write
RW به physical memory
حذف Hookهای EDR
گروههای حمله: Lazarus، Conti، BlackCat، LockBit
2- گرافیک GIGABYTE (CVE-2018-19320)
درایور امضاشده با IOCTLهای بدون محدودیت.
3- Zemana AntiMalware Driver
مهاجمان با آن:
SSDT را patch و EDR callbacks را حذف و EDR را blind کردند.
4- Avast AntiRootkit Driver
یک آنتیویروس، خود عامل آسیبپذیر بود.
بخش پنجم: تکنیکهای دقیق مهاجمان
1- DKOM (Direct Kernel Object Manipulation)
مهاجم EPROCESS را اصلاح میکند:
حذف process از Active Process Links و غیرقابل مشاهده برای EDR و Task Manager و امکان اجرای stealthy malware
2- Unhooking EDR
EDRها اغلب: Syscallها و APIها و SSDT و Inline functions را Hook میکنند.
مهاجم با یک درایور:
Hookها را Clean میکند وsyscallها را Restore میکند وEDR را کاملاً بیاثر میکند
3- Callback Nullification
EDR از Callbackهای kernel استفاده میکند:
PsSetCreateProcessNotifyRoutine
PsSetCreateThreadNotifyRoutine
PsSetLoadImageNotifyRoutine
ObRegisterCallbacks
مهاجم:
آدرس جدول Callbacks را Null میکند و EDR دیگر هیچ رویدادی نمیبیند
4- PatchGuard Bypass
برخی درایورها امکان تزریق shellcode به Kernel و کشته شدن PatchGuard و نگهداشتن rootkit را فراهم میکنند.
بخش 6: دفاع در برابر BYOVD
1- فعالسازی Microsoft Vulnerable Driver Blocklist
مهمترین دفاع.
ویندوز ۱۱
Defender : Core Isolation : Memory Integrity
ویندوز سرور HVCI فعال شود.
2- استفاده از EDRهای Kernel-mode Telemetry
فقط برخی EDRها:
Kernel Callbacks Integrity
Driver load monitoring
Syscall integrity check
دارند.
3- بلاکلیست اختصاصی درایورها :در شرکتهای بزرگ ۱۰۰ تا ۴۰۰ درایور باید بلاک شوند.
4- بررسی Driver Signature Enforcement: مطمئن شوید DSE غیرفعال نشده.
5- جلوگیری از Privilege Escalation اولیه: چون تا Admin/SYSTEM نباشد، درایور قابل نصب نیست.
6- SIEM-based Detection Rules
IOCها:
ایجاد سرویس درایور
ایجاد کلیدهای Registry در:
HKLM\SYSTEM\CurrentControlSet\Services\*
فایلهای جدید .sys در مسیر:
C:\Windows\System32\drivers\
7- جلوگیری از Load مستقیم درایور از طریق Group Policy
Policy:
Block installation of devices that match any of these device IDs
بخش هفتم : رفتارشناسی IOCها و Artifactهای BYOVD
IOCهای مهم:
ایجاد سرویسهای Kernel Mode جدید
ایجاد فایل در مسیر drivers
DeviceIoControl calls به یک درایور ناشناخته
unhook شدن ناگهانی APIهای مهم
کاهش Eventهای EDR
سایهرویداد (Shadow Event) در SIEM
ناپدید شدن پروسسهای فعال (DKOM)
بخش هشتم: چرا این حمله در سال 2024–2025 افزایش یافته است؟
رشد Ransomware-as-a-Service و تبدیل MSI Afterburner به Exploit عمومی و موجود بودن ۱۰۰ها درایور امضاشده آسیبپذیر وتاخیر سازمانها در فعالسازی HVCI و هزینهٔ بالا برای معماری کامل Zero Trust
جمعبندی نهایی
درایورهای آسیبپذیر یک دروازهٔ مستقیم به قلب سیستمعامل هستند.و بهترین EDR ها نمیتواند بالاتر از سطح Kernel نظارت کند. مهاجم اگر بتواند یک درایور امضاشده اما آسیبپذیر را لود کند:
EDR را کور میکند
Telemetry را قطع میکند
Processها را مخفی میکند
امنیت سیستم را از پایه نابود میکند
حملات در سطح Kernel انجام میدهد
این یکی از پیشرفتهترین، خطرناکترین و رایجترین تکنیکهای دفاعگریزی حال حاضر است.