٣ كورسات AI + ٧ بونصات بقيمة $560 — بـ $99 بس
سنة 2019، وكالة الأمن القومي الأمريكية (NSA) عملت حاجة مفاجئة: نشرت أدواتها الداخلية لتحليل البرمجيات كمشروع مفتوح المصدر. الأداة اسمها Ghidra، وكانت لسنين أداة سرية بتستخدمها NSA لتحليل malware، exploits، وبرامج الأنظمة المعادية. النهارده، أي مطوّر أو باحث أمني في العالم يقدر ينزّلها ويستخدمها مجاناً.
الريبو وصل 77.5 ألف نجمة على GitHub و8.6 ألف fork، ومرخّص Apache 2.0. بقى المعيار الذهبي للـ reverse engineering مفتوح المصدر.
إيه الـ Reverse Engineering أصلاً؟
لما بتكتب كود بـ C أو Rust أو Go، الـ compiler بيحوّله لـ machine code — سلسلة bytes الـ CPU بيفهمها بس البشر لأ. Reverse Engineering هو العملية العكسية: تاخد البرنامج المصفّى (binary) وتحاول تفهم إزاي بيشتغل — أوظائفه، خوارزمياته، الثغرات فيه، إيه بيعمل بالبيانات.
استخداماته المشروعة كتيرة: تحليل malware، اكتشاف ثغرات أمنية، إيجاد backdoors في firmware، فهم برامج قديمة مفيش كود مصدري لها، تعديل ألعاب retro، وأبحاث أكاديمية.
ليه Ghidra بالتحديد؟
قبل Ghidra، الأداة الاحترافية الوحيدة كانت IDA Pro — بتكلف من 500 دولار للنسخة الشخصية لآلاف الدولارات للنسخة الاحترافية سنوياً. Ghidra بتدي 90% من ميزاتها مجاناً، مع بعض المميزات اللي IDA Pro مافيهاش.
المميزات الأساسية
- Decompiler قوي — بيحوّل الـ machine code لكود شبه C قابل للقراءة. أحياناً بجودة قريبة من IDA Hex-Rays اللي بتكلف آلاف بمفردها
- Disassembler لكل المعمارات — x86, x64, ARM, MIPS, PowerPC, SPARC, RISC-V، وعشرات غيرها
- Graph visualization — بيرسم call flow graphs, control flow graphs، بيسهّل فهم البرامج المعقدة
- يدعم كل الـ formats — Windows PE, Linux ELF, macOS Mach-O, Android APK, iOS Mach-O, firmware images، حتى ROMs قديمة
- Scripting قوي — Java و Python APIs، تقدر تكتب scripts للأتمتة
- Team collaboration — SRE server بيخلي فريق كامل يشتغلوا على نفس الـ binary سوا (ميزة IDA مالهاش بشكل مباشر)
- Extension system — Eclipse plugin للتطوير، مجتمع extensions ضخم
- PyGhidra — دلوقتي فيه interface Python كامل بديل عن Jython القديم
لمين ده مفيد؟
- باحثين أمنيين بيحللوا malware ويكتشفوا ثغرات
- مطوّرين security tools بيبنوا أدوات defensive/offensive
- Reverse engineers محترفين بيشتغلوا في شركات cybersecurity
- CTF players — أداة أساسية في معظم binary exploitation challenges
- Bug bounty hunters بيحللوا برامج ويب/موبايل لاكتشاف ثغرات
- Embedded engineers بيحللوا firmware لأجهزة IoT وأنظمة مدمجة
- طلاب علوم كمبيوتر بيدرسوا systems programming, OS internals, computer architecture
- Modders — تعديل ألعاب retro أو برامج قديمة
التثبيت
1) ثبّت JDK 25 (64-bit):
حمّل من Adoptium Temurin — النسخة الأصلية الموصى بيها.
2) حمّل Ghidra:
روح على صفحة الـ Releases واختار الملف اللي شكله ghidra_<version>_<release>_<date>.zip (مش “Source code”).
3) فك الضغط وشغّل:
# Linux / macOS
./ghidraRun
# أو للـ PyGhidra (بديل Python)
./support/pyghidraRun
# Windows
ghidraRun.bat
ملحوظة: مافيش installer تقليدي، بس تفك الـ ZIP وتشغّل الـ script.
أول تجربة استخدام
- Create Project — اعمل project جديد (Ghidra بيشتغل بنظام projects عشان تجمع binaries مترابطة)
- Import File — سحب أي executable للـ project (EXE, ELF, APK، أياً كان)
- Analyze — Ghidra يسألك لو عايز يعمل auto-analysis. اضغط Yes — هيمشي على الـ binary ويحدد functions, strings, cross-references تلقائياً
- Explore — هتلاقي قائمة الـ functions على الشمال، الـ disassembly في النص، والـ decompiled C code على اليمين. اضغط على أي function عشان تشوف الاثنين سوا
- Rename + Comment — لما تفهم function، ريفاكتور اسمها وأضف comments — Ghidra بيحفظ كل ده في الـ project
Scripting و Automation
Ghidra مش بس UI، ده framework كامل. تقدر تكتب scripts بـ Java أو Python (عبر PyGhidra) للأتمتة:
# مثال: طبع كل الـ functions مع أحجامها
# (Python script داخل Ghidra)
from ghidra.program.model.listing import Function
functions = currentProgram.getFunctionManager().getFunctions(True)
for func in functions:
size = func.getBody().getNumAddresses()
print(f"{func.getName()}: {size} bytes")
تقدر تعمل headless mode برضه — تشغّل Ghidra من command line بدون UI للـ batch analysis على آلاف الـ binaries.
تكامل مع AI
الأخير سنتين ظهرت extensions بتربط Ghidra بـ LLMs (Claude, GPT-4, Gemini) عشان تسرّع الـ reverse engineering:
- GhidraGPT / GhidraMCP — تدي الـ AI الـ decompiled code ويشرحلك function معقّدة
- Auto-rename functions — الـ AI يقترح أسماء واضحة للـ functions بناءً على سلوكها
- Vulnerability detection — الـ AI يفحص الكود ويشير للـ patterns الخطرة (buffer overflows, format string bugs)
ده بيقلل ساعات الشغل اليدوي المطلوبة لفهم binary كبير بشكل كبير.
ملاحظات أخلاقية وقانونية
- Reverse engineering مشروع في معظم الحالات — تحليل malware، أبحاث أمنية، فحص برامجك انت، برامج مفتوحة المصدر
- بس فيه استثناءات مهمة:
- معظم اتفاقيات الترخيص التجارية (EULA) بتمنع الـ reverse engineering — لازم تتأكد قبل ما تحلل برنامج مدفوع
- DMCA في أمريكا وقوانين مشابهة في بلاد أخرى بتمنع كسر تدابير حماية النسخ
- تحليل برامج للـ piracy أو كسر licenses = غير قانوني
- القاعدة الآمنة: استخدم Ghidra على برامج ملكك، أو مفتوحة المصدر، أو malware من مصادر أبحاث معتمدة (VirusTotal, Malware Bazaar)، أو في CTF/lab environments
مصادر للتعلم
- Ghidra Book بواسطة Chris Eagle و Kara Nance — الكتاب الرسمي، شامل ومفصّل
- YouTube channel “stacksmashing” — أفضل شرح مرئي، خصوصاً لـ CTF challenges
- HackTheBox و PicoCTF — منصات للتدريب العملي على reverse engineering
- Ghidra Wiki على GitHub — التوثيق الرسمي
- r/ReverseEngineering على Reddit — مجتمع نشط
ليه ده مهم؟
Ghidra بتحرّر مجال كامل من الاعتماد على أدوات تجارية غالية. باحث أمني في مصر أو السعودية دلوقتي عنده نفس الأدوات اللي عند فريق بحث في Google أو Microsoft. ده بيفتح فرص حقيقية للـ Arab devs يدخلوا مجال الـ cybersecurity بجدية بدون حاجز مالي.
لو انت مهتم بـ security، ولا حتى بتشتغل في المجال، Ghidra تستحق تجربة. الأداة معقدة في البداية بس منحنى التعلم فيها مجزي — وبمجرد ما تتقنها، تقدر تفهم أي برنامج مصفّى في العالم.
٣ مصادر دخل من الـ AI 🚀
- ✓ n8n Automation — أتمتة عملاء ٢٤/٧
- ✓ AI Video — فيديوهات سينمائية
- ✓ Vibe Coding — SaaS بدون كود
- ✓ سيرفر n8n مجاني + ١٥,٠٠٠ قالب
🛡️ ضمان استرداد ٧ أيام
