技能创建器
skill-creator
创建、改进和评估自定义技能,把专业流程转化为可重复使用的 AI 能力。
reverse-engineering【数据与研究】Low-level binary analysis, decompilation theory, memory corruption mechanics, and OS defensive mitigations.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
To master vulnerability research, one must profoundly understand the structural formats of executables and the low-level execution environment that governs memory safety and corruption.
Executable formats (Portable Executable for Windows, Executable and Linkable Format for Unix) define how the operating system loader maps the file into memory.
.text for code, .data for initialized variables, .rdata for read-only data)..plt (Procedure Linkage Table) and .got (Global Offset Table) is vital for analyzing dynamically linked binaries and understanding control flow redirection.Decompilers (e.g., IDA Pro, Ghidra) transform machine code back into high-level pseudo-code. This process involves:
A buffer overflow occurs when a program writes more data to a block of memory (buffer) than it was allocated to hold. In languages like C/C++, lack of bounds checking leads to adjacent memory corruption.
ret instruction).malloc chunk headers) can lead to arbitrary write primitives during memory allocation/deallocation (free()).Modern operating systems employ robust mitigations to break the predictability required for successful exploitation.
%%{init: {"theme": "default", "flowchart": {"useMaxWidth": true}}}%%
flowchart TD
A[Program Execution Start] --> B[OS Loader Maps Binary]
B --> C[ASLR Randomizes Segments]
C --> D[NX Marks Stack/Heap Non-Executable]
D --> E[Function Prologue]
E --> F[Generate & Push Stack Canary]
F --> G[Execute Function Body]
G --> H{Buffer Overflow Occurs?}
H -->|Yes| I[Canary Corrupted]
I --> J[Function Epilogue Check Fails]
J --> K[Process Aborted - Exploitation Prevented]
H -->|No| L[Function Epilogue Check Passes]
L --> M[Return to Caller]