Hacking: The Art of Exploitation
2ème édition
Une visite des principes fondamentaux de l'exploitation bas niveau qui enseigne encore l'état d'esprit deux décennies plus tard.
En tant qu'Associé Amazon, nous percevons une commission sur les achats éligibles. Le lien ci-dessus est sponsorisé.
- Auteurs
- Jon Erickson
- Publié
- 2008
- Éditeur
- No Starch Press
- Pages
- 488
- Édition
- 2ème édition
- Langue
- English
Table des matières
8 chapitres · 46 sections- 0x100
Introduction
- 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
- 0x300
Exploitation
- Generalized exploit techniques
- Buffer overflows
- Experimenting with BASH
- Overflows in other segments
- Format strings
- 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
- 0x500
Shellcode
- Assembly vs. C
- The path to shellcode
- Shell-spawning shellcode
- Port-binding shellcode
- Connect-back shellcode
- 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
- 0x700
Cryptology
- Information theory
- Algorithmic run time
- Symmetric encryption
- Asymmetric encryption
- Hybrid ciphers
- Password cracking
- Wireless 802.11b encryption
- WEP attacks
- 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.
Que lire avant
Que lire avant Hacking: The Art of Exploitation →Intermédiaire · 2020
Black Hat Go
Tom Steele, Chris Patten et Dan Kottmann montrent comment utiliser les primitives réseau, le modèle de concurrence et la cross-compilation de Go pour écrire des outils offensifs qui tournent presque partout.
Intermédiaire · 2021
Black Hat Python
Justin Seitz et Tim Arnold proposent un tour pratique de l'outillage offensif en Python : sniffers réseau, scrapers web, command-and-control via GitHub, capture d'écran, keylogging, extensions Volatility.
Débutant · 2021
Bug Bounty Bootcamp
La marche pragmatique de Vickie Li à travers le workflow bug-bounty, du choix d'un programme et de la recon jusqu'au reporting de findings qui paient réellement.
Que lire ensuite
Que lire après Hacking: The Art of Exploitation →Avancé · 2017
Attacking Network Protocols
James Forshaw, vétéran de Project Zero, sur comment capturer, parser et casser les protocoles depuis le wire jusqu'à la couche application, avec un fort focus sur la construction d'un tooling d'analyse réutilisable.
Avancé · 2007
The Shellcoder's Handbook
Texte fondateur sur l'exploitation par corruption mémoire sur Linux, Windows, Solaris et cibles embarquées. Antérieur aux mitigations modernes mais reste l'introduction canonique aux techniques que la toolchain actuelle est conçue pour contrer.
Intermédiaire · 2020
Black Hat Go
Tom Steele, Chris Patten et Dan Kottmann montrent comment utiliser les primitives réseau, le modèle de concurrence et la cross-compilation de Go pour écrire des outils offensifs qui tournent presque partout.
Explorer des livres similaires
Alternatives à Hacking: The Art of Exploitation →Intermédiaire · 2021
Black Hat Python
Justin Seitz et Tim Arnold proposent un tour pratique de l'outillage offensif en Python : sniffers réseau, scrapers web, command-and-control via GitHub, capture d'écran, keylogging, extensions Volatility.
Intermédiaire · 2020
Black Hat Go
Tom Steele, Chris Patten et Dan Kottmann montrent comment utiliser les primitives réseau, le modèle de concurrence et la cross-compilation de Go pour écrire des outils offensifs qui tournent presque partout.
Avancé · 2017
Attacking Network Protocols
James Forshaw, vétéran de Project Zero, sur comment capturer, parser et casser les protocoles depuis le wire jusqu'à la couche application, avec un fort focus sur la construction d'un tooling d'analyse réutilisable.