IntermédiaireOffensiveBinary ExploitationNetworking

Hacking: The Art of Exploitation

2ème édition

5 / 5

Une visite des principes fondamentaux de l'exploitation bas niveau qui enseigne encore l'état d'esprit deux décennies plus tard.

Acheter sur Amazon

En tant qu'Associé Amazon, nous percevons une commission sur les achats éligibles. Le lien ci-dessus est sponsorisé.

Publié
2008
Éditeur
No Starch Press
Pages
488
Édition
2ème édition
Langue
English

Table des matières

8 chapitres · 46 sections
  1. 0x100

    Introduction

  2. 0x200

    Programming

    • What is programming?
    • Pseudo-code
    • Control structures
    • More fundamental programming concepts
    • Getting your hands dirty
    • Back to basics
    • Memory segmentation
    • Building on basics
  3. 0x300

    Exploitation

    • Generalized exploit techniques
    • Buffer overflows
    • Experimenting with BASH
    • Overflows in other segments
    • Format strings
  4. 0x400

    Networking

    • OSI model
    • Sockets
    • Peeling back the lower layers
    • Network sniffing
    • Denial of service
    • TCP/IP hijacking
    • Port scanning
    • Reach out and hack someone
  5. 0x500

    Shellcode

    • Assembly vs. C
    • The path to shellcode
    • Shell-spawning shellcode
    • Port-binding shellcode
    • Connect-back shellcode
  6. 0x600

    Countermeasures

    • Countermeasures that detect
    • System daemons
    • Tools of the trade
    • Log files
    • Overlooking the obvious
    • Advanced camouflage
    • The whole infrastructure
    • Payload smuggling
    • Buffer restrictions
    • Hardening countermeasures
    • Nonexecutable stack
    • Randomized stack space
  7. 0x700

    Cryptology

    • Information theory
    • Algorithmic run time
    • Symmetric encryption
    • Asymmetric encryption
    • Hybrid ciphers
    • Password cracking
    • Wireless 802.11b encryption
    • WEP attacks
  8. 0x800

    Conclusion

Prérequis

Aisance avec le C, shell de base, et volonté de lire de l'assembleur. Le LiveCD Linux inclus facilite la mise en place mais est obsolète.

À lire si

Hackers autodidactes qui veulent comprendre ce qu'est réellement un buffer overflow, pas seulement comment lancer msfconsole.

À éviter si

Lecteurs cherchant l'exploitation moderne (ASLR, CFI, sandboxes navigateur). Les défenses qu'Erickson aborde sont aujourd'hui le minimum, pas la frontière.

Points clés

  • L'exploitation est une façon de voir les programmes, pas une liste de techniques.
  • La corruption mémoire s'apprend mieux avec un débogueur ouvert à côté du livre.
  • La première moitié sur le C/assembleur vaut le prix même si vous sautez les exploits.

Notes

La pédagogie est exceptionnellement patiente, vous compilez, désassemblez, et observez la pile pendant que votre shellcode atterrit. Les exploits ciblent une époque pré-ASLR et le LiveCD est une pièce de musée, mais le substrat enseigné (comment les programmes deviennent des instructions pour une machine) est exactement ce que les ressources offensives modernes sautent. À lire avant LiveOverflow ou pwn.college.