با سلام و احترام؛
در راستای ارتقای سطح امنیت سایبری کشور و حفاظت از زیرساختهای حیاتی سازمانها، هفتهنامه «SOC Hunt» بر آن است تا هر هفته به معرفی و تحلیل یکی از مهمترین آسیبپذیریهای روز دنیا بپردازد. در این مسیر، تمرکز ویژه ما بر روی محصولاتی است که در کشور عزیزمان ایران بیشترین کاربرد را دارند، تا تیمهای امنیتی و مراکز عملیات امنیت (SOC) بتوانند در کوتاهترین زمان ممکن نسبت به شناسایی، پیشگیری و واکنش مناسب اقدام نمایند.
در هفته دوم از این هفتهنامه، به بررسی آسیبپذیریCVE-2025-56383 بر روی محصول notpad++ ورژن v8.8.3 میپردازیم؛ این آسیب پذیری بشتر جنبه برسی dll hijacking برای عزیزان soc کار است تا بتوانند جلوی این اسیب پذیری را در محصولات مشابه بگیرند این اسیب پذیری با اسکور 8.4 و وکتور پایین ارائه شده است.

خلاصه مدیریتی (TL;DR)
CVE-2025-56383 یک آسیبپذیری DLL hijacking در Notepad++ نسخههای8.8.3 است که امکان اجرای کد دلخواه از طریق جایگزینی DLLهای پلاگین را فراهم میکند. بهرهبرداری در صورتی رخ میدهد که مسیر نصب یا پوشه پلاگینها قابل نوشتن توسط کاربران غیرمجاز باشد. خطر مدیریتی: اجرای کد محلی میتواند به تثبیت، گسترش در شبکه و سرقت اطلاعات منجر شود.
اقدام فوری: این حمله یکی از هزار حمله ای است که توسط dll hijacking انجام میشود پس بر اساس دستور عمل های این اپیزود اقدام به تهیه داشبورد مخصوص برای انواع این حملات کنید .
درباره محصول
Notepad++ یک ویرایشگر متن و کدنویسی سبک و پرکاربرد برای ویندوز است که توسعهدهندگان، مدیران سیستم و کاربران عادی برای ویرایش اسکریپتها، فایلهای پیکربندی، لاگها و یادداشتهای متنی از آن استفاده میکنند. این برنامه با پشتیبانی از پلاگینها قابلیتهای گستردهای مثل هایلایت سینتکس، اجرای ماکرو و ادغام با ابزارهای توسعه را فراهم میکند؛ بههمیندلیل پوشههای نصب و پلاگینها محل قرارگیری کدهای قابل اجرا (DLL) نیز هستند. بسیاری از کاربران Notepad++ را روی ایستگاههای کاری حساس و سرورها نیز نصب میکنند و گاهی در مسیرهای قابلنوشتن توسط کاربر نصب میشود که ریسک امنیتی را افزایش میدهد. در صورت وجود آسیبپذیریهایی مانند DLL hijacking، جایگزینی یا بارگذاری DLL مخرب میتواند منجر به اجرای کد با دسترسی کاربر یا ارتقاء سطح دسترسی، سرقت اطلاعات محلی و تثبیت حضور مهاجم در شبکه شود. از دید مدیریتی، چنین ضعفهایی بیشتر بهعنوان تهدید به سامانههای endpoint و گسترش اولیه در شبکه مطرحاند تا تهدید مستقیماً به سرویسهای مرکزی؛ اما تأثیر آن در محرمانگی و یکپارچگی دادههای حساس (فایلهای پیکربندی، اسکریپتها و کلیدهای محلی) میتواند قابلتوجه باشد. بنابراین ارزیابی نصبها، محدودسازی مجوزهای نوشتن پوشههای نصب، اعمال سیاستهای نصب تنها توسط ادمین و فعالسازی کنترلهای EDR/FIM از اقدامات کلیدی برای کاهش ریسک هستند.
درباره آسیب پذیری و توضیح اکسپولیت
برای تحلیل بهتر نحوه exploit این اسیب پذیری کافیست لینک زیر را مطالعه کنید .
https://t.me/GOTOCVE/2372
قسمت ویژه SOC تشخیص، هشدارها و Playbook واکنش
DLL hijacking یعنی بارگذاری یک ماژول (DLL) مخرب توسط یک برنامه قانونی بهجای ماژول صحیح، که معمولاً بهخاطر ترتیب جستجوی مسیرها، مجوزهای نادرست فایل/پوشه یا نبود کنترل صحت فایل رخ میدهد. نتیجه میتواند اجرای کد دلخواه با ست کردن توکن خاص به برنامه آسیبدیده، تثبیت دسترسی، سرقت اطلاعات و latral در شبکه باشد. در ادامه یک راهنمای کامل و کاربردی برای پیشگیری، کشف و پاسخ ارائه شده است.
چرا خطرناک است — پیامدهای اصلی
- (Local Code Execution) مهاجم میتواند کدی اجرا کند که با توکن های قربانی کار میکند (مثلاً کاربر یا سرویس).
- (Privilege Escalation & Persistence) اگر برنامه با سطح بالا تر اجرا شود (service, SYSTEM)، مهاجم میتواند پایداری و افزایش سطح دسترسی ایجاد کند.
- حرکت جانبی و سرقت داده : از طریق شبکه به سیستم های دیگه دسترسی پیدا کرده و ادامه حمله خودشان را انجام میدهند .
اصول کلی پیشگیری اولویتبندیشده
- Least Privilege کمترین سطح دسترسی: کاربران معمولی نباید برای نوشتن در مسیر نصب برنامهها مثلاً C:\Program Files\ یا دایرکتوریهای سیستم دسترسی داشته باشند.
- نصب در مسیر امن: برنامهها را در مسیرهای سیستمی امن نصب کنید (Program Files) نه در %APPDATA% یا دسکتاپ.
- قفلگذاری مجوزها (File/Folder ACL): پوشههای نصب و پوشههای پلاگین را طوری تنظیم کنید که فقط admin یا سرویسهای مجاز write داشته باشند.
- Code Signing / Binary Integrity: از نرمافزارهایی استفاده کنید که DLLها و باینریها را ساین میکنند؛ در صورت امکان سیاستهایی اجرا کنید که فقط ماژولهای signed پذیرفته شوند.
- Application Whitelisting / Code Integrity (WDAC / AppLocker) فعالسازی سیاستهای allow-listing برای جلوگیری از اجرای فایلها/ماژولهای غیرمجاز.
- Patch Management / Inventory لیست تمام نرمافزارها و نسخهها؛ بروز نگه داشتن برنامهها و پلاگینها.
- MDM / GPO برای کنترل نصب نرمافزار: جلوگیری از نصب محلی نرمافزارها توسط کاربران غیرمجاز.
پیشگیری فنی ویژه کنترلها و راهکارها
- File Integrity Monitoring (FIM) مانیتور و آلارم برای تغییر/ایجاد فایلهای .dll در مسیرهای نصب و پوشههای پلاگین.
- EDR با قابلیت Module/PE Load Inspection قوانین برای شناسایی بارگذاری ماژول از مسیرهای غیرمعمول (Users, Temp) یا DLLهای unsigned .
- Sysmon (Windows) — EventIDهای کلیدی:
- EventID 7 (Image Load) برای شناسایی بارگذاری ماژول، فیلتر روی ProcessName و ImageLoaded path .
- EventID 11/12/13 (FileCreate/FileDelete/FileModify) اگر نیاز دارید FileCreate نظارت شود.
- AppLocker/WDAC Policies تعریف rule برای اجازهدادن به DLLها فقط از مسیرهای معین یا با ساین معتبر.
- Hardened Installers در سیاست خرید/توزیع نرمافزار، اصرار بر نصب دستگاهها توسط تیم IT با مسیر امن و تنظیم مجوز صحیح.
- Sandboxing / Containerization برای نرمافزارهای پرریسک یا خارجی از محیطهای ایزوله استفاده کنید.
کشف و مانیتورینگ (Detection)
- چه چیز را مانیتور کنیم:
- ایجاد/تغییر DLL در پوشههای نصب و پوشههای پلاگین
- بارگذاری DLL در فرایندهای حساس (ProcessName match) — Sysmon ImageLoad
- ایجاد فرایندهای غیرمعمول که از آن DLLها منشأ میگیرند (powershell/cmd spawn)
- اتصال شبکه پس از بارگذاری ماژول (اتصالهای خارج از عادت برای آن میزبان)
- قواعد عمومی SIEM (seudocode):

- تشخیص دانلود فایلهای PE (MZ header) یا آپلود/انتقال فایلهای DLL روی HTTP/SMB شبکه بهتنهایی همیشه کافی نیست چون حمله از لوکال رخ میدهد .
Splunk (SPL) 1.
فایل DLL جدید/تغییر یافته در مسیرهای نصب یا پلاگین

برای هر پراسز عمومی میتوانید از Sysmon ImageLoad استفاده کنید :

Correlation: FileCreate (DLL) + ImageLoad (same path within 5m) -> Hig

Process spawn by notepad++ (suspicious post-load behavior)

- Elasticsearch / Kibana (KQL + DSL)
توضیح: فیلدها را با mapping خود تطبیق دهید مثلاً file.path, process.name, event.type
- فایل DLL جدید در مسیر پلاگین

- Image load توسط پراسز خاص

- DSL — Correlation (File create then image_load within 5min)

- Sysmon-based detection (EventID=7 ImageLoad + EventID=11 FileCreate)
توضیح: اینها برای تبدیل به queries در SIEM یا اضافه به Sysmon config هستند.

- Suricata / IDS signatures
توضیح: شبکه تنها گاهی کمککننده است تشخیص دانلود/آپلود PE یا انتقال فایل .dll. تیون به محیط لازم است.
A) HTTP response contains PE header (possible DLL/EXE download)

B) HTTP POST with .dll filename (upload)

C) SMB create of .dll (basic)

Quick-to-deploy dashboards / widgets
- تعداد DLLهای جدید در مسیرهای نصب در 24h (time-series)
- Top hosts by ImageLoad from user-writable paths
- Recent notepad++ (or critical apps) parent->child suspicious process creations
- Correlated incidents matching FileCreate+ImageLoad+ProcessSpawn