DriverSentinel: شکار درایورهای آسیبپذیر ویندوز
خلاصهٔ کاملتر
تو این مقاله (که در واقع صفحهٔ معرفی پروژه روی گیتهابه) با DriverSentinel آشنا میشیم؛ یه ابزار امنیتی متنباز که با زبان Go نوشته شده و کارش پیدا کردن درایورهای بدافزاری و آسیبپذیر روی سیستمهای ویندوزه. این ابزار فایلهای درایور سیستم رو با دیتابیس LOLDrivers.io مقایسه میکنه، که یه پروژهٔ جامعهمحوره و فهرستی از درایورهای شناختهشدهٔ خطرناک رو نگه میداره.
مشکلی که این ابزار حلش میکنه به حملهای به اسم BYOVD (مخفف Bring Your Own Vulnerable Driver) برمیگرده. تو این مدل حمله، مهاجم یه درایور قانونی و امضاشده ولی دارای باگ رو خودش روی سیستم قربانی نصب میکنه و بعد از همون باگ سوءاستفاده میکنه تا به دسترسی سطح کرنل و بالا بردن سطح دسترسی (Privilege Escalation) برسه. چون درایور امضای معتبر داره، خیلی از دفاعهای ویندوز بهش گیر نمیدن؛ برای همین داشتن یه اسکنر اختصاصی که این درایورها رو بشناسه ارزشمنده.
روش کار ابزار اینطوریه که موقع شروع، نسخهٔ دیتابیس LOLDrivers رو با ETag یا SHA256 چک میکنه و اگه آپدیتی باشه دانلودش میکنه؛ اگه هم اینترنت نباشه از نسخهٔ محلی استفاده میکنه. بعد دو تا ایندکس توی حافظه میسازه — یکی بر اساس هش SHA256 نمونههای شناختهشده و یکی بر اساس نام اصلی فایل — تا جستوجو سریع باشه. این ابزار فقط فایلهای با پسوند .sys یعنی درایورهای کرنل ویندوز رو بررسی میکنه.
برای هر فایل، اول نام فایل رو سریع چک میکنه و اگه تطبیقی پیدا شد، اونوقت هش SHA256 رو حساب میکنه و منطق تشخیص رو اعمال میکنه. نکتهٔ جالب، منطق دوسطحیشه: برای درایورهای دستهٔ malicious کافیه فقط نام فایل یا فقط هش بخوره تا هشدار بده (چون یه درایور بدافزاری ممکنه اسمش عوض شده باشه و باید در هر صورت لو بره)، ولی برای دستهٔ vulnerable driver باید هم نام فایل و هم هش با هم بخورن تا از هشدارهای اشتباه روی درایورهای قانونی با اسمهای عمومی جلوگیری بشه.
برای اجرا هم چند حالت داره: با گزینهٔ -common مسیرهای رایج درایور ویندوز رو خودکار اسکن میکنه (نیاز به دسترسی ادمین داره)، با -path یه پوشهٔ خاص رو میگرده و با -r بهصورت بازگشتی زیرپوشهها رو هم چک میکنه. خروجیش هم یه گزارش کامل میده شامل مسیر فایل، هش SHA256، نوع تطبیق (نام فایل، هش یا هر دو) و جزئیات درایور پیداشده.
به گفتهٔ نویسنده، این ابزار صرفاً برای اهداف آموزشی و امنیت دفاعیه و نباید برای کار خرابکارانه استفاده بشه. توی بخش بهبودهای آینده هم به چیزایی مثل اسکن موازی با goroutineها، خروجی گرفتن به فرمت JSON و CSV و HTML، رابط گرافیکی، حالت بیصدا برای اتوماسیون و یکپارچگی با SIEM اشاره شده.
نکات کلیدی:
- ابزار متنباز نوشتهشده با Go برای پیدا کردن درایورهای بدافزاری و آسیبپذیر ویندوز
- مقایسهٔ فایلهای .sys با دیتابیس جامعهمحور LOLDrivers.io بر اساس هش SHA256 و نام فایل
- مقابله با حملهٔ BYOVD که از یه درایور امضاشدهٔ آسیبپذیر برای دسترسی کرنل سوءاستفاده میکنه
- منطق تشخیص دوسطحی: نام یا هش برای درایور بدافزاری، نام و هش با هم برای درایور آسیبپذیر
- نیاز به دسترسی ادمین و فقط روی ویندوز ۱۰ و ۱۱ کار میکنه




