آسیب‌پذیری امنیت سایبری بلاگ

Living off the Land|وقتی ابزارهای خود سیستم علیه ما استفاده می‌شوند

Living off the Land | وقتی ابزارهای خود سیستم علیه ما استفاده می‌شوند

در بسیاری از حملات سایبری، مهاجم برای اجرای عملیات خود لزوماً به بدافزارهای پیچیده یا ابزارهای ناشناخته نیاز ندارد. گاهی کافی است از همان ابزارهایی استفاده کند که از قبل روی سیستم قربانی نصب شده‌اند. ابزارهایی مانند PowerShell، Windows Management Instrumentation (WMI)، Command Prompt، Task Scheduler، Rundll32  و حتی ابزارهای مدیریتی سیستم.

این رویکرد که با عنوان Living off the Land (LotL)  شناخته می‌شود، یکی از چالش‌های مهم در شناسایی حملات مدرن است. دلیل اصلی این موضوع ساده است: وقتی مهاجم از ابزارهای قانونی و مورد اعتماد سیستم استفاده می‌کند، تشخیص فعالیت مخرب از فعالیت عادی بسیار دشوارتر می‌شود.

در این مقاله از سلام دیجی بررسی می‌کنیم Living off the Land  چیست، مهاجمان چگونه از ابزارهای داخلی سیستم سوءاستفاده می‌کنند، چرا تشخیص آن دشوار است و تیم‌های امنیتی چگونه می‌توانند فعالیت‌های LotL را شناسایی و محدود کنند.

Living off the Land  یا به اختصار LotL  به تکنیک‌هایی گفته می‌شود که مهاجم در آن‌ها به‌جای استفاده از ابزارها و بدافزارهای اختصاصی، از ابزارها، قابلیت‌ها و سرویس‌های قانونی و موجود در سیستم قربانی برای اجرای فعالیت‌های مخرب استفاده می‌کند.

به زبان ساده:

مهاجم به‌جای اینکه ابزار حمله را وارد سیستم کند، از ابزارهایی که سیستم از قبل در اختیارش گذاشته استفاده می‌کند.

برای مثال، فرض کنید مهاجم به یک سیستم Windows دسترسی اولیه پیدا کرده است. او می‌تواند برای اجرای دستورات، جمع‌آوری اطلاعات، حرکت جانبی یا ایجاد Persistence از ابزارهایی مانند PowerShell یا WMI استفاده کند، بدون اینکه الزاماً یک فایل اجرایی ناشناخته روی دیسک قرار دهد.

این ویژگی باعث می‌شود LotL در بسیاری از حملات هدفمند، APTها، حملات باج‌افزاری و عملیات Post-Exploitation مورد توجه مهاجمان قرار بگیرد.

مشکل اصلی LotL این نیست که ابزارهای مورد استفاده ذاتاً مخرب هستند، بلکه مشکل این است که همان ابزارها برای فعالیت‌های کاملاً قانونی نیز استفاده می‌شوند.

برای مثال PowerShell ممکن است توسطAdministratorn  ،تیم IT ، ابزارهای مدیریت سیستم ، اسکریپت‌های اتوماسیون و نرم‌افزارهای سازمانی استفاده شود.

بنابراین مشاهده اجرای powershell.exe  به‌تنهایی نمی‌تواند نشان‌دهنده حمله باشد.

آنچه اهمیت دارد Context  است. تیم امنیتی باید بپرسد:

  • چه پردازشی PowerShell را اجرا کرده است؟
  • چه کاربری آن را اجرا کرده؟
  • Command Line چه بوده است؟
  • PowerShell به چه مقصدی متصل شده؟
  • آیا اجرای آن با رفتار معمول آن کاربر مطابقت دارد؟
  • آیا قبل از آن یک فایل Office یا Browser فعالیت مشکوکی داشته است؟
  • آیا اجرای PowerShell با ایجاد Persistence همراه بوده است؟

در واقع، در تشخیص LotL باید از Binary-based Detection  به سمت Behavior-based Detection  حرکت کرد.

یکی از مهم‌ترین بخش‌های تحلیل LotL، شناخت ابزارهایی است که مهاجمان می‌توانند از آن‌ها سوءاستفاده کنند.

PowerShell  یکی از شناخته‌شده‌ترین ابزارهای مورد استفاده در حملات LotL است.

PowerShell به دلیل قابلیت‌هایی مانند:

  • اجرای Script
  • دسترسی به APIهای Windows
  • مدیریت سیستم
  • Network Communication
  • دسترسی به Registry
  • تعامل با WMI
  • اجرای Remote Command

برای مهاجمان جذاب است.

از دید دفاعی، مواردی مانند PowerShell با Encoded Command، اجرای غیرمعمول Script، ارتباط شبکه‌ای غیرمنتظره و Parent Process مشکوک می‌توانند ارزش بررسی داشته باشند.

WMI  یکی دیگر از قابلیت‌های داخلی Windows است که هم برای مدیریت قانونی سیستم و هم برای عملیات مخرب قابل استفاده است.

مهاجم می‌تواند از WMI برای فعالیت‌هایی مانند اجرای Remote Command ، اجرای Process ، جمع‌آوری اطلاعات سیستم، Remote Execution و Persistence  استفاده کند.

یکی از چالش‌های WMI این است که فعالیت آن ممکن است در نگاه اول شبیه فعالیت مدیریتی عادی به نظر برسد.

به همین دلیل، بررسی چه کسی، از کجا، روی چه سیستمی و با چه دستوری از WMI استفاده کرده اهمیت زیادی دارد.

cmd.exe  شاید ساده‌ترین ابزار این فهرست باشد، اما همچنان در بسیاری از سناریوهای حمله کاربرد دارد.

مهاجم می‌تواند از Command Shell برای اجرای زنجیره‌ای از دستورات استفاده کند یا ابزارهای داخلی دیگر را فراخوانی کند.

برای مثال، اجرای زنجیره‌ای مانند:

Office Application → cmd.exe → PowerShell

می‌تواند بسیار مهم‌تر از مشاهده PowerShell به‌تنهایی باشد.

rundll32.exe  یک Windows Binary قانونی است که برای اجرای Exportهای DLL استفاده می‌شود.

مهاجمان می‌توانند از آن برای اجرای کد یا سوءاستفاده از DLLها استفاده کنند.

بنابراین صرفاً بررسی نام فایل کافی نیست. تیم SOC باید Command Line، DLL مقصد و Parent Process را نیز بررسی کند.

regsvr32.exe  نیز یکی دیگر از Binaryهای قانونی Windows است که می‌تواند در حملات مورد سوءاستفاده قرار بگیرد.

این ابزار به‌خصوص در سناریوهایی که مهاجم تلاش می‌کند از Trust موجود در ابزارهای سیستمی استفاده کند، اهمیت پیدا می‌کند.

certutil.exe  ابزار قانونی Windows برای مدیریت Certificateهاست، اما قابلیت‌های آن می‌توانند در برخی سناریوهای حمله مورد سوءاستفاده قرار بگیرند.

به همین دلیل، استفاده از ابزارهای قانونی باید همیشه در Context  مناسب تحلیل شود.

Background Intelligent Transfer Service (BITS)  یکی دیگر از قابلیت‌های Windows است که می‌تواند برای انتقال فایل یا اجرای فعالیت‌هایی در پس‌زمینه مورد سوءاستفاده قرار بگیرد.

در محیط‌های Enterprise، مشاهده Jobهای غیرعادی BITS می‌تواند یک Signal قابل بررسی برای Threat Hunting باشد.

اگرچه بخش زیادی از مثال‌های LotL مربوط به Windows است، این مفهوم محدود به Windows نیست.

در سیستم‌های Linux و Unix نیز مهاجمان می‌توانند از ابزارهای موجود روی سیستم استفاده کنند.

ابزارهایی مانند:

bash

sh

curl

wget

python

perl

ssh

cron

systemctl

در صورت سوءاستفاده مهاجم می‌توانند بخشی از یک زنجیره LotL باشند.

بنابراین Living off the Land  را باید به‌عنوان یک رویکرد حمله در نظر گرفت، نه مجموعه‌ای محدود از ابزارهای Windows

این دو مفهوم بسیار به یکدیگر نزدیک هستند اما یکسان نیستند.

Fileless Malware  معمولاً به تکنیک‌هایی اشاره دارد که در آن مهاجم تلاش می‌کند کد یا Payload را بدون ایجاد فایل معمولی روی Disk اجرا کند. اما Living off the Land  مفهوم گسترده‌تری دارد.

در LotL، مهاجم ممکن است از یک ابزار قانونی سیستم برای اجرای عملیات استفاده کند، این عملیات می‌تواند حتی شامل اجرای یک فایل روی Disk نیز باشد.

بنابراین این دو با هم یکی نیستند اما یک حمله می‌تواند هم‌زمان از هر دو تکنیک استفاده کند.

LotL  معمولاً یک تکنیک منفرد نیست، بلکه می‌تواند در چند مرحله از زنجیره حمله استفاده شود.

برای مثال یک سناریوی فرضیInitial Access:

مهاجم از طریق یک حساب کاربری Compromised وارد محیط می‌شود.

Execution

از PowerShell یا Command Shell برای اجرای دستورات استفاده می‌کند.

Discovery

اطلاعات مربوط به سیستم، کاربران، شبکه و Domain را جمع‌آوری می‌کند.

Credential Access

به دنبال Credentialهای قابل دسترس می‌گردد.

Lateral Movement

از WMI، SMB یا Remote Management برای حرکت به سیستم‌های دیگر استفاده می‌کند.

Persistence

با استفاده از قابلیت‌هایی مانند Scheduled Task یا سرویس‌های سیستم Persistence ایجاد می‌کند.

Collection / Exfiltration

اطلاعات موردنظر را جمع‌آوری و از مسیرهای مجاز سیستم منتقل می‌کند.

نکته مهم این است که در تمام این مراحل ممکن است تعداد بسیار کمی فایل ناشناخته یا Malware Signature مشاهده شود.

مدل‌های سنتی Detection که بیشتر بر اساس Signature  کار می‌کنند، در برابر LotL با چالش مواجه می‌شوند.

اگر فایل مخربی روی سیستم وجود داشته باشد، تشخیص آن نسبتاً ساده‌تر است.

اما در LotL ممکن است چیزی شبیه این اتفاق بیفتد:

Malicious Intent + Legitimate Binary = Difficult Detection

برای مثال:

powershell.exe به‌خودی‌خود یک فایل مخرب نیست. اما اگر توسط یک Process غیرعادی اجرا شود، Command Line  مشکوک داشته باشد و هم‌زمان یک ارتباط خارجی ایجاد کند، شرایط کاملاً متفاوت می‌شود.

بنابراین دفاع در برابر LotL نیازمند ترکیب چند منبع اطلاعاتی است.

EDR  یکی از مهم‌ترین ابزارها برای مقابله با LotL است. دلیل آن این است که EDR به‌جای تمرکز صرف بر فایل، رفتار Process ها و ارتباط میان آن‌ها را بررسی می‌کند.

برای مثال:

winword.exe → powershell.exe → cmd.exe → rundll32.exe

چنین Process Chainای می‌تواند بسیار ارزشمندتر از بررسی جداگانه هر Binary باشد.

تیم SOC باید به مواردی مانند این‌ها توجه کند:

  • Parent/Child Process Relationship
  • Command Line
  • User Context
  • Process Integrity Level
  • Network Connection
  • File Creation
  • Registry Modification
  • Persistence Mechanisms
  • Authentication Events

برای شناسایی LotL نباید منتظر Alert ماند. Threat Hunter  می‌تواند به‌صورت Proactive رفتار ابزارهای داخلی سیستم را بررسی کند.

چند سؤال مناسب برای Hunting :

PowerShell

  • چه کاربرانی PowerShell را اجرا می‌کنند؟
  • چه سیستم‌هایی بیشترین PowerShell Activity را دارند؟
  • PowerShell از چه Parent Processهایی اجرا شده است؟
  • آیا Command Lineهای غیرعادی وجود دارد؟

WMI

  • چه سیستم‌هایی WMI Remote Execution دارند؟
  • چه حساب‌هایی از WMI استفاده می‌کنند؟
  • آیا ارتباط WMI بین سیستم‌هایی مشاهده می‌شود که معمولاً با هم ارتباط ندارند؟

Scheduled Task

  • چه Taskهای جدیدی ایجاد شده‌اند؟
  • چه Userی آن‌ها را ایجاد کرده؟
  • Task چه Binary یا Scriptی را اجرا می‌کند؟

این نوع Hunting می‌تواند رفتار مهاجم را حتی قبل از ایجاد یک Alert مشخص آشکار کند.

Visibility  مناسب یکی از مهم‌ترین الزامات دفاع در برابر Living off the Land است.

در محیط Windows، بررسی منابعی مانند موارد زیر می‌تواند مفید باشد:

  • Windows Security Logs
  • PowerShell Operational Logs
  • Sysmon
  • Windows Event Logs
  • WMI Logs
  • Task Scheduler Logs
  • EDR Telemetry
  • DNS Logs
  • Proxy Logs
  • Firewall Logs
  • Authentication Logs

خصوصاً Sysmon  می‌تواند برای مشاهده Process Creation، Network Connection و برخی رویدادهای مرتبط با Processها اطلاعات ارزشمندی فراهم کند.

مقالات مرتبط: تحلیل عمیق تهدیدات با Sysmon| راهکاری قدرتمند برای جمع‌آوری داده EDR در SOC

یکی از اشتباهات رایج در Monitoring این است که فقط ثبت شود :  PowerShell.exe اجرا شد.

این اطلاعات به‌تنهایی ارزش محدودی دارد. اما اگر Telemetry شامل Command Line باشد، تحلیلگر می‌تواند بفهمد PowerShell دقیقاً با چه پارامترهایی اجرا شده است.

بنابراین برای تیم SOC :

Process Name + Parent Process + Command Line + User + Host + Network Context

ترکیب بسیار قدرتمندتری برای Detection ایجاد می‌کند.

هیچ Indicator واحدی برای شناسایی LotL وجود ندارد. بهتر است Detection بر اساس رفتار غیرعادی طراحی شود.

برخی Signalهای مهم عبارت‌اند از:

مثلاً کاربری که معمولاً با PowerShell کار نمی‌کند، ناگهان تعداد زیادی Script اجرا کند.

مثلاً اجرای PowerShell از یک Application که معمولاً نباید آن را اجرا کند.

وجود رفتار متفاوت از Baseline سازمان می‌تواند اهمیت داشته باشد.

مثلاً یک Process مدیریتی بلافاصله پس از اجرا ارتباط خارجی برقرار کند.

ترکیب ابزارهای LotL با Scheduled Task، Service یا سایر روش‌های Persistence اهمیت Detection را افزایش می‌دهد.

برای مقابله مؤثر با LotL، سازمان نباید صرفاً به دنبال Block کردن ابزارها باشد. زیرا بسیاری از این ابزارها برای عملیات روزمره IT ضروری هستند.

راهکار بهتر، ترکیبی از Control، Monitoring و Behavioral Detection است.

1 . اصل Least Privilege

کاربران و سرویس‌ها نباید بیش از سطح دسترسی موردنیاز خود Permission داشته باشند.

هرچه سطح دسترسی مهاجم محدودتر باشد، قابلیت سوءاستفاده از ابزارهای داخلی نیز کاهش پیدا می‌کند.

2 .  Application Control

سازمان می‌تواند استفاده از برخی Binaryها و Scriptها را بر اساس Policy کنترل کند.

3 .  PowerShell Logging

فعال‌سازی Logging مناسب PowerShell و ارسال آن به SIEM می‌تواند Visibility قابل توجهی ایجاد کند.

4 . استفاده از EDR

EDR  باید توانایی تحلیل Process، Command Line، Parent/Child Relationship و Network Behavior را داشته باشد.

5 .  Baseline کردن رفتار کاربران

اگر بدانیم رفتار معمول هر User، Server و Endpoint چیست، تشخیص Anomaly ساده‌تر می‌شود.

6 .  Correlation در SIEM

یک Event منفرد ممکن است بی‌خطر باشد؛ اما چند Event مرتبط می‌توانند یک Attack Chain را نشان دهند.

برای مثال:

Suspicious Login → PowerShell → Discovery → WMI → Lateral Movement

این زنجیره از نظر امنیتی بسیار مهم‌تر از هر Event منفرد است.

چارچوب MITRE ATT&CK  یکی از منابع مهم برای Mapping تکنیک‌های مرتبط با LotL است.

بسیاری از تکنیک‌هایی که مهاجمان برای سوءاستفاده از قابلیت‌های بومی سیستم استفاده می‌کنند، در این چارچوب قابل مشاهده و تحلیل هستند.

برای تیم‌های SOC، Mapping  کردن Detectionها به MITRE ATT&CK کمک می‌کند مشخص شود:

  • چه تکنیک‌هایی پوشش داده شده‌اند؟
  • کدام بخش‌های Attack Lifecycle فاقد Detection هستند؟
  • چه Telemetryای برای هر تکنیک نیاز است؟
  • کدام Detection Ruleها باید بهبود پیدا کنند؟

برای ساخت یک Detection Strategy مناسب، می‌توان این فرآیند را در نظر گرفت:

Identify → Baseline → Monitor → Correlate → Hunt → Respond

Identify

ابزارها و قابلیت‌های بومی قابل سوءاستفاده را شناسایی کنید.

Baseline

رفتار عادی آن‌ها را در سازمان مشخص کنید.

Monitor

Telemetry مناسب جمع‌آوری کنید.

Correlate

Event های مختلف را در SIEM و EDR به یکدیگر مرتبط کنید.

Hunt

به‌صورت Proactive به دنبال الگوهای مشکوک باشید.

Respond

در صورت تأیید Incident، Endpoint یا Account مربوطه را Contain کنید.

معمولاً Block  کردن کامل ابزارهای داخلی راهکار مناسبی نیست.

PowerShell، WMI، Command Shell و سایر ابزارهای مدیریتی بخش مهمی از Windows Enterprise هستند و تیم‌های IT نیز به آن‌ها نیاز دارند.

هدف دفاعی باید این باشد که  Legitimate Use را از Malicious Use تفکیک کنیم.

به‌عبارت دیگر، سؤال اصلی این نیست که: آیا PowerShell اجرا شده؟ بلکه باید پرسید:

آیا PowerShell در این Context، توسط این User، روی این Host و با این رفتار، منطقی است؟

این همان نقطه‌ای است که Behavioral Detection، Threat Hunting و Contextual Analysis اهمیت پیدا می‌کنند.

Living off the Land  یکی از تکنیک‌هایی است که مرز میان فعالیت قانونی و فعالیت مخرب را برای تیم‌های امنیتی مبهم می‌کند.

مهاجم ممکن است بدون استفاده از یک Malware شناخته‌شده، از ابزارهایی مانند PowerShell، WMI، CMD، Rundll32، Regsvr32 و سایر قابلیت‌های داخلی سیستم برای اجرای مراحل مختلف حمله استفاده کند.

به همین دلیل، مقابله با LotL صرفاً با آنتی ویروس یا تشخیص Signature-based امکان‌پذیر نیست.

سازمان‌ها برای مقابله مؤثرتر به ترکیبی از:

EDR + SIEM + Sysmon + Logging + Threat Hunting + Least Privilege + Behavioral Detection

نیاز دارند.

در نهایت، مهم‌ترین اصل در تشخیص Living off the Land این است: ابزار قانونی لزوماً به معنای رفتار قانونی نیست.

یک ابزار می‌تواند کاملاً معتبر باشد، اما نحوه استفاده، کاربر، زمان اجرا، Parent Process، Command Line  و ارتباط آن با سایر Eventها مشخص می‌کند که با یک فعالیت عادی مواجه هستیم یا بخشی از یک Attack Chain .

دیدگاه شما

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

در حال آماده‌سازی…
اعداد فارسی و انگلیسی پذیرفته می‌شوند. دیدگاه پس از بررسی منتشر می‌شود.