TGViewer
ReverseEngineering ReverseEngineering @reverseengine · 1.33K subscribers
Post #1857 23
Region B
هم میتونه کاملا طبیعی باشه

چون Private RW داخل Process ها بسیار رایجه

اما Region C:

Private
RX

ارزش بررسی بیشتری پیدا میکنه
حالا اطلاعات بیشتری به دست میاریم:


Region C
↓
Private
↓
RX
↓
Thread Start Address → داخل Region
↓
Call Stack → غیرمعمول

اینجا Region C تبدیل میشه به یک Investigation Target

ولی هنوز نمیگیم:

Malware Found

چون ممکنه توضیح Legitimate دیگه ای وجود داشته باشه

مثلا Runtimeها JIT Compilatio، Instrumentation یا بعضی تکنیک‌ های نرم‌افزاری هم میتونن Memory Executable ایجاد کنن

پس:

Suspicious
≠
Malicious


Permission فقط یک تکیه از پازله

تا اینجا درباره Permission زیاد صحبت کردیم

مثلا:

RW
RX
RWX

ولی یک تحلیل درست فقط Permission رو نگاه نمیکنه

مثلا این دو Region رو مقایسه کنید:

Region A

Image
RX
Known Module
Normal Thread Activity

و:

Region B

Private
RX
Unknown Mapping
Unusual Thread Start
Unexpected Call Stack

هر دو ممکنه Executable باشن
ولی Context کاملا متفاوتی دارن

پس یک مدل بهتر اینه:

Memory Type
+
Protection
+
Content
+
Thread
+
Call Stack
+
Module Relationship
+
Timeline

هرچه Evidence ها به یک داستان مشترک اشاره کنن Confidence تحلیل بالاتر میره

چرا Timeline مهمه؟

فرض کنید یک Region الان این شکلیه:


Private
RX

فقط با دیدن وضعیت فعلی نمیدونیم قبلش چه اتفاقی افتاده

ممکنه اول:

RW

بوده و بعد Permission اون تغییر کرده باشه

یا از اول:

RX

ایجاد شده باشه
یا یک Runtime legitimate اون رو ایجاد کرده باشه
پس اگر Telemetry کافی داشته باشیم

Timeline
میتونه خیلی مهم باشه:

Allocation
↓
Memory Write
↓
Protection Change
↓
Thread Creation
↓
Execution

این زنجیره از یک Snapshot ساده اطلاعات بیشتری میده

از دید Detection

حالا میتونیم چند Evidence رو کنار هم بذاریم:

Process
│
├── Memory Region
│ ├── Private
│ └── Executable
│
├── Thread
│ └── Start Address → Region
│
└── Call Stack
└── Unexpected Frames

هیچکدوم به تنهایی لزوما نشونه حمله نیست

ولی ارتباط بین اونها میتونه برای Detection مهم باشه
این دقیقا یکی از ایده‌های اصلی

Behavioral Detection
هست:

یک Event
↓
ممکنه عادی باشه

چند Event مرتبط
↓
Context
↓
Behavior

از دید ردتیمرا
از دید مهاجم هم این قسمت یک درس مهم داره
Memory هم Telemetry
ایجاد میکنه

یعنی این تصور:

No File
=
No Detection

اشتباهه چون ممکنه فایل واضحی روی Disk وجود نداشته باشه ولی وضعیت Process و Memory همچنان Evidence ایجاد کنه

مدل کامل‌ تر:

Disk
+
Process
+
Memory
+
Thread
+
Call Stack
+
Timeline
↓
Behavioral Evidence

پس درک Memory فقط برای کسی که Detection مینویسه مهم نیست

برای Red Team هم مهمه که بدونه کد و Data بعد از ورود به Process چه ردپای قابل مشاهده‌ ای ایجاد میکنن

یک نکته مهم درباره Private و Image

این دو دسته رو بیش از حد ساده نکنیم
در Windows Memory Management نوع یک Region فقط با این جمله تعیین نمیشه که:


Private = چیزی که برنامه خودش ساخته

Image =
چیزی که حتما مستقیم از Disk خونده شده

جزئیات Memory Manager Section Objectها Mappingها و نوع Allocation مهم هستن

پس وقتی در ابزارهای Forensics یا Debugger چیزی مثل:
`
Type = Private

میبینید باید دقیقا بدونید اون ابزار بر اساس چه اطلاعاتی این Classification رو انجام داده

هدف ما در RE و Memory Forensics این نیست که یک Label رو حفظ کنیم
هدف اینه که بدونیم پشت اون Label چه Memory Behavior ای وجود داره



API / Syscall
↓
Memory Allocation
↓
Memory Protection
↓
Memory Type
↓
Thread
↓
Call Stack
↓
VAD
↓
Behavioral Analysis


سه مفهوم رو فعلا خوب نگه دارید:

Image-backed Memory
↓
Memory
مرتبط با Image Mapping

Private Memory
↓
Memory
که به یک Image Mapping معمولی وابسته نیست

VAD
↓
ساختارهای Kernel برای توصیف محدوده‌ های Virtual Address Space

و مهم‌تر از همه:

Private
≠
Malicious

Executable
≠
Malicious

RW → RX
≠
Malicious

چیزی که مهمه ترکیب Evidence ها و Context هست

@reverseengine
More from @reverseengine
  1. Oct 15, 2026Reverse Engineer Anything v6.5.0 A tool for reverse engineering that allows AI agents to a…
  2. Oct 15, 2026Someone Used AI to Reverse-Engineer PS5 Security in Weeks: What Is REA? https://pub.toward…
  3. Oct 15, 2026How Dangerous Is REA (Reverse Engineer Anything) for Your App? https://21zerixpm.medium.co…
  4. Oct 15, 2026REA Is Impressive. But Reverse Engineering Was Never the New Part https://crizantlai.mediu…
  5. Oct 15, 2026QuarkslaB Dynamic binary Instrumentation https://qbdi.quarkslab.com/introduction @reversee…
  6. Oct 15, 2026angr’s documentation https://docs.angr.io/en/latest/search.html?q=Document&check_keywords=…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →