ReverseEngineering – Telegram
ReverseEngineering
1.24K subscribers
40 photos
10 videos
55 files
666 links
Download Telegram
18👏4
اگه ممبرهای کانال نره بالا متاسفانه مجبور میشم فعالیت رو متوقف کنم چون واقعا انگیزه ای نیست برای ادامه دادن پس تا جایی که میتونید کانال رو share کنید دمتون گرم عیدتونم مبارک سال خوبی داشته باشید❤️‍🔥🫶🏼
47👎3👏1😁1🍌1
ReverseEngineering pinned «اگه ممبرهای کانال نره بالا متاسفانه مجبور میشم فعالیت رو متوقف کنم چون واقعا انگیزه ای نیست برای ادامه دادن پس تا جایی که میتونید کانال رو share کنید دمتون گرم عیدتونم مبارک سال خوبی داشته باشید❤️‍🔥🫶🏼»
ReverseEngineering pinned «دوستان به زودی دوباره شروع میکنیم دمتون گرم بابت حمایت ها دوستون دارم🫶🏼»
انواع مکانیزم‌های لایسنس

🔹 نرم‌افزارها از روش‌های مختلفی برای کنترل دسترسی و اعتبارسنجی لایسنس استفاده میکنن رایج‌ترین روش‌ها اینان:

کلید سریال (Serial Key)

نرم‌افزار از کاربر یک کلید لایسنس درخواست می‌کنه و اون رو اعتبارسنجی می‌کنه

معمولاً با الگوریتم‌هایی مثل RSA، SHA، MD5 یا XOR بررسی می‌شه


فعال‌سازی آنلاین (Online Activation)

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

این روش معمولاً از HTTP API، WebSockets یا RPC استفاده می‌کنه


قفل سخت‌افزاری (Hardware Locking)

لایسنس به شماره سریال CPU، هارد دیسک یا MAC Address وابسته است

تغییر سخت‌افزار باعث غیرفعال شدن لایسنس می‌شه


دونگل USB (USB Dongle)

یک قطعه سخت‌افزاری برای فعال‌سازی نرم‌افزار استفاده می‌شه

معمولاً از دستورات خاصی در درایور Kernel Mode استفاده می‌کنه


محافظت از کد (Obfuscation & Packing)

چرا برخی نرم افزار ها از پکر ها یا اوبفاسکیشن استفاده میکنن؟
برخی نرم‌افزارها از پکرها و اوبفاسکیشن استفاده می‌کنن تا کرک کردن سخت‌تر بشه

#obfuscation
#bypass
#license
🔥131👏1
مراحل کرک کردن یک نرم‌افزار

📌 برای کرک کردن باید مسیر اجرای لایسنس رو پیدا کنیم و اون رو بایپس کنیم

🔍 مرحله 1: بررسی اولیه نرم‌افزار

بررسی کن که نرم‌افزار کلید سریال قبول می‌کنه یا نیاز به اتصال اینترنت داره؟
فایل‌های اجرایی (.EXE یا .DLL) رو با PEiD یا Detect It Easy (DIE) اسکن کن تا ببینی آیا پک شده (Packed) یا نه.

🛠 مرحله ۲: پیدا کردن توابع لایسنس در اسمبلی

فایل اجرایی رو در IDA Pro یا x64dbg باز کن و دنبال توابع strcmp, strcmpi, RegQueryValueEx, IsDebuggerPresent بگرد
روی strcmp یا memcmp بریک‌پوینت بذار و مقدار کلید درست رو پیدا کن

🚀 مرحله ۳: بایپس کردن چک لایسنس

مقدار EAX رو تغییر بده تا نتیجه cmp برابر true بشه.
با NOP کردن شرط JNZ یا JZ می‌تونی چک لایسنس رو حذف کنی

MOV EAX, 1 ; مقدار بررسی لایسنس رو به True تغییر بده

NOP ; حذف پرش غیرمجاز

#crack
#bypass
👍121🔥1👏1
کرک کردن نرم‌افزارهای آنلاین

🔹 بعضی نرم‌افزارها برای فعال‌سازی به سرور متصل میشن برای کرک کردن این نرم‌افزارها باید ترافیک رو مانیتور کنیم و تغییر بدیم

📌 روش‌های کرک کردن نرم‌افزارهای آنلاین:

مانیتورینگ HTTP/S با Burp Suite یا Fiddler

ببین درخواست به چه API ارسال می‌شه و پاسخ سرور رو جعل کن
ساخت سرور جعلی (Fake License Server)

می‌تونی با ابزارهایی مثل mitmproxy یک سرور فیک بسازی و نرم‌افزار رو گول بزنی
پچ کردن درخواست‌های لایسنس در دیباگر

درخواست HTTP رو با x64dbg یا IDA Pro پیدا کن و مقدار لایسنس رو تغییر بده
#crack
#reverse
9👏3
شناخت سطح حمله (Attack Surface)

اولین قدم اینه که بفهمیم اپلیکیشن چه نقاط ورودی (entry point)‌هایی داره:

ورودی کاربر (فرم‌ها، فیلدها، فایل‌های ورودی)

ارتباط با شبکه (پورت‌ها، سوکت‌ها، APIها)

Registeryو فایل‌های سیستمی

COM objects و DLLها

Named Pipes و فایل‌های موقت

#Attack
#Attack_Surface
#Application
9
بررسی رفتار اپلیکیشن با ابزارهای دینامیک

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

🔹 Procmon – بررسی فعالیت رجیستری و فایل

🔹 Wireshark – تحلیل ترافیک شبکه

🔹 Process Hacker / Process Explorer – مانیتور کردن پروسس‌ها

🔹 Dependency Walker – بررسی وابستگی‌های DLL

🔹 PE-sieve / Scylla – بررسی تزریق کد یا آنپک

#Dynamic
#Application
🔥8👍1
آنالیز فایل اجرایی (Static Analysis)

قبل از اجرا فایل رو بررسی می‌کنیم:

با PEiD یا Detect It Easy چک می‌کنیم فایل پکر شده یا نه

با Ghidra یا IDA Pro توابع ورودی و حساس رو تحلیل می‌کنیم

دنبال فانکشن‌هایی مثل strcpy, memcpy, CreateProcess, WinExec, LoadLibrary می‌گردیم

اگر از فایل یا رجیستری اطلاعات میخونه بررسی می‌کنیم قابل تزریق هستن یا نه

#Analys
#File
👍8🔥3
پیدا کردن آسیب‌پذیری‌های رایج

برخی از آسیب‌پذیری‌های پرتکرار در اپلیکیشن‌های ویندوزی:

Buffer Overflow
تابع‌هایی که بدون بررسی سایز کپی می‌کنن مثل strcpy, gets, memcpy

DLL Hijacking
اگر برنامه DLLها رو از مسیر نادرست بارگذاری کنه می‌شه یه DLL مخرب جایگزین کرد

Insecure File Permissions
وقتی فایل‌ها یا رجیستری‌ها دسترسی نوشتن برای همه دارن

Command Injection / Code Execution
برنامه ورودی کاربر رو مستقیم به تابعی مثل system() پاس می‌ده

Unquoted Service Path
مسیر سرویس‌هایی که بینشون فاصله هست و کوتیشن ندارن

Named Pipe Hijacking
استفاده نادرست از Named Pipeها می‌تونه باعث privilege escalation بشه
🔥71
بهره‌برداری (Exploitation) و PoC نوشتن

بعد از پیدا کردن آسیب‌پذیری، باید اثباتش کنیم:

ساخت PoC برای buffer overflow با ابزارهایی مثل Immunity Debugger

نوشتن DLL جعلی برای حمله DLL Hijacking

ساخت فایل .bat یا .exe برای اجرا با دسترسی بالا

استفاده از ابزارهایی مثل Metasploit, Exploit Pack, یا msfvenom برای payload سازی
🔥51
Arm Assembly Internals and Reverse Engineering.pdf
14.4 MB
نویسنده: William Hohl & Christopher Hinds

مناسب برای: کسانی که می‌خوان از پایه ARM Assembly رو یاد بگیرن

ویژگی‌ها:

آموزش از سطح مبتدی تا پیشرفته

توضیح رجیسترها، دستورها، حافظه، توابع، وقفه‌ها و...

تمرین‌های کاربردی

بیشتر روی ARMv7 تمرکز داره، ولی به ARMv8 هم اشاره می‌کنه
🔥2👏1