Files
amILearningEnough/docs/resources/reverse-engineering/re-and-be.md
2024-12-21 01:23:20 +05:30

4.2 KiB

Essential Resources for Binary Exploitation and Reverse Engineering

Mathematical Foundations

  1. "Linear Algebra and Its Applications" by Gilbert Strang

  2. "Mathematics for Computer Science"

  3. Research Paper: "Applications of Linear Algebra in Computer Science"

    • DOI: 10.1007/978-3-642-20556-9_15

Computer Architecture and Systems

  1. "Computer Systems: A Programmer's Perspective" (CS:APP)

  2. "Computer Organization and Design RISC-V Edition"

  3. "Digital Design and Computer Architecture: ARM Edition"

  4. Research Paper: "The Case for RISC-V in Computer Architecture Education"

    • DOI: 10.1145/3338698.3338892

Assembly Language and Low-Level Programming

  1. "Low-Level Programming: C, Assembly, and Program Execution"

  2. "Assembly Language Step by Step"

  3. Research Papers:

    • "Understanding the Relationship Between Modern Optimizing Compilers and Assembly Code" DOI: 10.1145/3316482.3326351
    • "A Survey of Reverse Engineering and Program Analysis Techniques" DOI: 10.1109/MC.2019.2914799

Reverse Engineering Tools and Techniques

  1. "Practical Binary Analysis"

  2. "The IDA Pro Book"

  3. "Ghidra: The Definitive Guide"

  4. Research Paper: "Dynamic Binary Analysis and Instrumentation"

    • DOI: 10.1145/2786805.2803178

Binary Exploitation

  1. "Hacking: The Art of Exploitation"

  2. "The Shellcoder's Handbook"

  3. Research Papers:

    • "A Survey of Control-Flow Integrity Methods" DOI: 10.1145/3054924
    • "Modern Binary Exploitation Techniques" DOI: 10.1109/SP.2019.00074

Memory Management and Protection

  1. "Understanding the Linux Virtual Memory Manager"

  2. "Understanding and Exploiting Memory Corruptions"

  3. Research Paper: "Memory Safety in Modern Systems Programming Languages"

    • DOI: 10.1145/3293883.3295702

Advanced Topics

  1. "Automated Software Testing for Program Analysis"

  2. "Operating Systems: Three Easy Pieces"

  3. Research Papers:

    • "Advances in Automated Software Vulnerability Detection" DOI: 10.1145/3293882.3330579
    • "Modern Approaches to Binary Instrumentation" DOI: 10.1109/SP.2020.00074

Online Courses and Video Resources

  1. MIT 6.858 Computer Systems Security

  2. Stanford CS155: Computer and Network Security

  3. LiveOverflow YouTube Channel

  4. Modern Binary Exploitation - RPISEC

Practice Platforms

  1. CTFtime
  2. Pwnable.kr
  3. Root-Me
  4. Exploit Exercises

Development Tools and References

  1. Compiler Explorer
  2. x86 Assembly Reference
  3. DWARF Debugging Standard
  4. Binary Ninja Documentation