مقوله WSL (Windows Subsystem for Linux) یک محیط برای اجرای توزیعهای لینوکس در ویندوز است که اخیراً به دلیل قابلیتها و انعطافپذیری آن، توجه هکرها و تحلیلگران امنیت سایبری را به خود جلب کرده است. در زمینه فارنزیک، WSL به عنوان یک چالش جدید دیده میشود چون بسیاری از ابزارهای فارنزیک سنتی نمیتوانند به طور مؤثر دادههای WSL را تحلیل کنند. در ادامه به جنبههای مهم فارنزیک در WSL نگاهی میاندازم:
1. چرا فارنزیک در WSL اهمیت پیدا کرده است؟
مخفی بودن فعالیتها: استفاده از محیط لینوکس در ویندوز به مهاجمان اجازه میدهد تا فعالیتهای مخرب خود را دور از نظارت ابزارهای سنتی امنیتی ویندوز اجرا کنند. بازیابی دادهها: فضاهای ذخیرهسازی و فایلسیستم WSL (مانند استانداردهای لینوکس مثل Ext4) با ابزارهای فارنزیک ویندوز سازگار نیستند و این باعث کاهش قابلیت شناسایی میشود. ترکیب سیستمها: مهاجمان میتوانند از قابلیتهای ویندوز و لینوکس به طور ترکیبی استفاده کنند تا قابلیتهای مخرب را افزایش دهند.
2. موضوع Artifactهای کلیدی در WSL
در فارنزیک، Artifact به هر داده یا منطقی گفته میشود که بتواند اطلاعات مفیدی درباره یک فعالیت مخرب یا مجرمانه ارائه دهد. در WSL، Artifactها شامل موارد زیر هستند:
مسیر ذخیرهسازی فایلها در WSL: نسخه 1: مسیر ذخیرهسازی در ویندوز (مانند C:\Users\Username\AppData\Local\lxss). نسخه 2: WSL از یک ماشین مجازی سبک با فایلسیستم Ext4 استفاده میکند. فایلهای لینوکس در یک فایل vhd قرار میگیرند (مانند C:\Users\Username\AppData\Local\Packages\...). مهاجمان ممکن است فایلهای اجرایی مخرب (مثل اسکریپتهای Bash یا فایلهای رمزگذاریشده) را در این مسیرها ذخیره کنند.
ب)فایلهای Log و تنظیمات:
فایلهای کانفیگ: فایلهایی مثل wsl.conf یا فایلهای محیطی سیستم لینوکس. سشنها و لاگها: مسیرهای ذخیره لاگها و فعالیتهای کاربر در محیط لینوکس یا ویندوز که شامل تاریخچه ترمینال لینوکس (مانند .bash_history) میشود. پروسهها: پروسههای فعال در محیط WSL که در Task Manager ویندوز قابل مشاهده نیستند.
ج) شبکه و C2 ارتباطات:
این WSL میتواند با شبکه ویندوز به اشتراک بپردازد، که مهاجمان از آن برای ارتباط با سرورهای C2 استفاده میکنند.
د) ماشین مجازی:
چون WSL2 از ماشین مجازی بهره میگیرد، بررسی حافظه (Memory Dump) آن میتواند اطلاعات ارزشمندی درباره فعالیتهای مخرب به دست دهد.
#آکادمی_روزبه مرکز تخصصی CISSP
پی نوشت : مقوله WSL 1 در واقع یک لایه سازگاری است که syscall های لینوکس را مستقیماً به syscall های ویندوز ترجمه میکند. در این معماری، فایلهای لینوکس مستقیماً در فایلسیستم ویندوز (معمولاً در پوشه AppData\Local\lxss) ذخیره میشوند.
اما WSL 2 از یک ماشین مجازی سبک (lightweight utility virtual machine) استفاده میکند که یک هسته لینوکس واقعی را اجرا میکند. در این معماری، فایلهای لینوکس در یک فایل دیسک مجازی (VHD) با فایلسیستم Ext4 ذخیره میشوند. به همین دلیل، تحلیل حافظه (Memory Dump) ماشین مجازی WSL 2 میتواند اطلاعات مربوط به پروسهها، حافظه استفاده شده توسط هسته لینوکس و سایر فعالیتهای درون محیط WSL 2 را فراهم کند، که در WSL 1 به این شکل قابل دسترسی نیست.