registry

Reference Registry — Binary Exploitation

Propósito

Esta nota estandariza las referencias para la rama binary-exploitation.

Usala para: - mantener notas de memory-corruption y exploit-development vinculadas a fuentes primarias canónicas (Phrack, especificaciones Intel/ARM, libros y toolkits mayores) - evitar el backlog infinito de CTF write-ups; citá el paper o tool canónico, no el enésimo write-up - mantener esta rama centrada en memory corruption, exploitation primitives, ingeniería de mitigaciones y reverse engineering a nivel binario

Regla de fuente de verdad

Para notas de binary-exploitation, este registry es la fuente de verdad primaria.

Usalo junto con: - <a href="binary-exploitation/index.html">Binary Exploitation Index</a> - <a href="reference-registry-detection-engineering.html">Reference Registry — Detection Engineering</a> cuando las notas entren en telemetría de exploit-detection - <a href="reference-registry-cryptography.html">Reference Registry — Cryptography</a> cuando las notas toquen divulgación de memoria criptográfica (issues clase Heartbleed, side channels de extracción de claves)


Política de selección de referencias

Prioridad de fuentes

  1. Fundamental — artículos Phrack, disclosures originales de CVE, blogs de seguridad de vendors (MSRC, Project Zero, Apple Security Research, especificaciones AMD/Intel/ARM)
  2. Investigación / Deep Dive — libros principales (Practical Binary Analysis, Hacking: The Art of Exploitation, Practical Malware Analysis) y papers de investigación nombrados
  3. Docs oficiales de herramienta — pwntools, AddressSanitizer, libFuzzer / AFL++, ROPgadget, Ghidra, Radare2 / Rizin, IDA Pro, angr
  4. Industria / Operacional — estadísticas de memory-safety de Microsoft, Chromium security blog, Apple Security Engineering posts, MITRE CWE

Target por nota

  • mínimo 2 referencias
  • ideal 3 referencias

Etiquetas

Usar: - Fundamental - Investigación / Deep Dive - Docs oficiales de herramienta - Hardening (para referencias enfocadas en mitigación)


Mapa de temas binary-exploitation

memory-corruption

Referencias preferidas: - Fundamental: Aleph One — Smashing the Stack for Fun and Profit (Phrack 49, 1996) — http://phrack.org/issues/49/14.html - Investigación / Deep Dive: Microsoft Security Response Center — A proactive approach to more secure code (memory-safety statistics) — https://msrc.microsoft.com/blog/2019/07/a-proactive-approach-to-more-secure-code/ - Investigación / Deep Dive: Dennis Andriesse — Practical Binary Analysis (No Starch Press, 2018) — the modern reference - Docs oficiales de herramienta: AddressSanitizer — https://clang.llvm.org/docs/AddressSanitizer.html - Hardening: ARM — Memory Tagging Extension (MTE) — https://developer.arm.com/documentation/108035/latest/

stack-buffer-overflow

Referencias preferidas: - Fundamental: Aleph One — Smashing the Stack for Fun and Profit (Phrack 49, 1996) — http://phrack.org/issues/49/14.html - Investigación / Deep Dive: Dennis Andriesse — Practical Binary Analysis (No Starch Press, 2018) - Docs oficiales de herramienta: pwntools — https://docs.pwntools.com/ - Hardening: Intel — Control-flow Enforcement Technology (CET) specification — https://software.intel.com/sites/default/files/managed/4d/2a/control-flow-enforcement-technology-preview.pdf

exploit-mitigations

Referencias preferidas: - Investigación / Deep Dive: Microsoft Security Response Center — A proactive approach to more secure code — https://msrc.microsoft.com/blog/2019/07/a-proactive-approach-to-more-secure-code/ - Hardening: Intel — Control-flow Enforcement Technology (CET) specification — https://software.intel.com/sites/default/files/managed/4d/2a/control-flow-enforcement-technology-preview.pdf - Hardening: ARM — Memory Tagging Extension (MTE) — https://developer.arm.com/documentation/108035/latest/ - Hardening: Linux kernel — Self-Protection documentation — https://www.kernel.org/doc/html/latest/security/self-protection.html

rop-and-ret2libc

Referencias preferidas: - Fundamental: Hovav Shacham — The Geometry of Innocent Flesh on the Bone (CCS 2007, the foundational ROP paper) — https://hovav.net/ucsd/dist/geometry.pdf - Fundamental: Solar Designer — Getting around non-executable stack (Bugtraq, 1997, the original ret2libc disclosure) — https://seclists.org/bugtraq/1997/Aug/63 - Docs oficiales de herramienta: pwntools ROP module — https://docs.pwntools.com/en/stable/rop/rop.html - Docs oficiales de herramienta: ROPgadget — https://github.com/JonathanSalwan/ROPgadget


Próximas entradas sugeridas del registry

Agregarlas cuando la rama se expanda: - heap-buffer-overflow-and-allocator-exploitation - use-after-free-and-dangling-pointers - double-free-and-allocator-corruption - out-of-bounds-read-and-info-leaks - integer-overflow-and-type-confusion - rop-and-ret2libc - aslr-pie-and-info-leak-chains - format-string-bugs - got-and-plt-abuse - exploit-mitigations - stack-canaries-and-shadow-stacks - arm-mte-and-memory-tagging - control-flow-integrity-cfi - elf-binary-format - reverse-engineering-loop - fuzzing-with-libfuzzer-and-afl - sanitizers-asan-msan-ubsan - symbolic-execution-and-angr - detect-memory-corruption-exploitation

Reglas de uso del registry

  • elegí el set más chico de referencias fuertes para la nota exacta
  • preferí una referencia Phrack/spec/libro + una referencia canónica de docs de herramienta por nota cuando sea posible
  • mantené las referencias centradas en memory corruption, exploitation primitives y mitigaciones a nivel binario; ruteá temas de fallas de protocolo criptográfico por el registry de cryptography y temas de detección kernel por detection-engineering