P01NT
tag

C-Lang

0x18 المعالج المسبقتوجيهات المعالج المسبق: الماكروز والترجمة الشرطية و#pragma pack — وما يتركه كل منها في الـ binary.
0x17 الحقول البتية والاتحادات والتعدادBit Fields وUnions وEnums — ثلاث أدوات يومية في قراءة الـ binaries وأنماطها الواضحة في الـ assembly.
0x16 الهياكل Structالهياكل وtypedef وعامل السهم، وعملية Padding والمحاذاة — وكيف يتحول struct إلى خريطة إزاحات في التحليل.
0x15 المعدلاتمعدلات الإشارة والحجم والتخزين signed/short/static، وتمثيل الأعداد السالبة بتعويض الاثنين.
0x14 الدوال — الجزء الثانينطاق المتغيرات وملفات الرأس وstatic والعودية — بتتبع كامل لإطار المكدس خطوة بخطوة.
0x13 التمرير بالمرجع والقيمةالتمرير بالقيمة والمرجع بتتبع كامل في Assembly x86-64 — والقاعدة الذهبية لتمييز mov عن lea.
0x12 التخصيص الديناميكيmalloc وcalloc وrealloc وإدارة Bins وtcache — وثغرات سوء التخصيص: Heap Overflow وUAF وDouble Free.
0x11 الذاكرة الظاهرية: Stack مقابل Heapبنية الـ Stack Frame والسجلات واتفاقيات الاستدعاء، وChunks الـ Heap — الميدانان الأساسيان للاستغلال.
0x10 العوامل البتيةالعوامل البتية وعوامل الزيادة والنقصان — اللغة المشتركة بين C والـ assembly وأنماط فك تشفير XOR.
0x09 المؤشرات وإدارة الذاكرةالمؤشرات بأنواعها وحسابات العناوين وأقسام الذاكرة الخمسة — وموقع المؤشرات من الثغرات الشهيرة.
0x08 الدوالالدوال بأنواعها ودوال الذاكرة والإدخال المهمة للمحلل، وبنية Prologue وEpilogue واتفاقيات الاستدعاء في الـ assembly.
0x07 المصفوفات والسلاسل النصيةالمصفوفات والسلاسل في الذاكرة، دوال string.h الخطيرة، وعلاقتها المباشرة بثغرات Buffer Overflow.
0x06 الحلقات التكراريةwhile وdo-while وfor والحلقات المتداخلة — والبصمة التي تعرف بها الحلقة في الـ assembly: القفزة العكسية.
0x05 الجمل الشرطيةif وelse وswitch والعامل الثلاثي — وكيف تتحول إلى cmp وقفزات شرطية وجداول قفزات في الـ disassembly.
0x04 سلاسل الهروبسلاسل الهروب والحرف المنهي null (0x00): كيف تخزن النصوص فعلياً ولماذا تنتهي النصوص داخل الـ binaries بصفر.
0x03 أنواع البيانات ومحددات التنسيقأنواع البيانات وأحجامها الحقيقية على x86/x64، ومحددات التنسيق في printf/scanf — وربطها بأحجام العمليات في الـ assembly.
0x02 المتغيرات والثوابتتعريف المتغيرات وقواعد تسميتها، والثوابت عبر const و#define، والفرق الجوهري بينهما وقت الترجمة وفي الذاكرة.
0x01 هيكلية البرنامجهيكلية برنامج C الأساسية: التضمين include والدالة main والتعليقات والمتغيرات العامة والدوال — وأثر كل جزء منها في الـ binary.
0x00 المراحل التي يمر بها الكودالمراحل الأربع لتحويل كود C إلى ملف تنفيذي — Preprocessor وCompiler وAssembler وLinker — وأثر كل مرحلة على شكل الـ binary.
0x4 Recognizing C Code Constructs in Assemblyكيف تُترجم الأكواد البرمجية إلى لغة الآلة: المتغيرات، الحلقات، الشروط، المصفوفات، الهياكل، والقوائم المترابطة.
0x2 Fundamentals of Reverse Engineeringمراجع مختارة لدراسة أساسيات الهندسة العكسية.