Books › Penetration Tester roadmap

Best books for Penetration Testers

An offensive-security list. It begins with Linux, the core methods, how exploits work, web application attacks and bug bounty practice. The build set covers a red-team playbook, scripting your own tools, API attacks and reference-level exploitation. The lead set covers advanced engagements, evasion of defences and operating system security internals. Practise only on systems you own or have written permission to test.

12 books in 3 stages, about 3,930 pages (at least 98 hours of reading). The notes are ours, with no ratings or sales claims.

See the full Penetration Tester roadmap →

How to choose your books

A short method, so you read the right book for where you are instead of the longest list.

Find your stage

  • Getting started · 5 books

    Foundations: Linux, penetration-testing methods, how exploits work, web attacks and bug bounty basics.

    Jump to this stage ↓
  • Doing the job · 4 books

    Real engagements: a red-team playbook, custom tools in Python, attacking APIs and broad exploitation reference.

    Jump to this stage ↓
  • Senior and leading · 3 books

    Advanced practice: complex engagements, evading endpoint defences and understanding operating system security from the inside.

    Jump to this stage ↓

If you are unsure, start one stage lower than you think. Books in a later stage assume the working knowledge the earlier ones give you.

Begin with one book

Our starting pick

Linux Basics for Hackers: Getting Started with Networking, Scripting, and Security in Kali

by OccupyTheWeb · 2018

Most tooling in this field runs on Linux. Comfort at the shell makes every other book on the list easier to work through.

See the book ↓

Then pick by your situation

Choose the next book by the problem in front of you, not by its place in the list.

  • If you want a structured introduction to penetration testing

    read Penetration Testing (getting started)

  • If you want to test web applications and earn through bounty programmes

    read Bug Bounty Bootcamp (getting started)

  • If you need to write your own tools for network tasks

    read Black Hat Python (doing the job)

Set a time budget

StageBooksPagesReadingAt 3 hrs a week
Getting started52,43061 hrs20 wks
Doing the job4≥ 1,210≥ 30 hrs≥ 10 wks
Senior and leading3≥ 290≥ 7 hrs≥ 2 wks
All 3 stages12≥ 3,930≥ 98 hrs≥ 33 wks

Treat this as a ceiling, not a target. Read one book at a time, apply it, then move on; read reference-style books in sections. Totals are approximate.

Judge any book before you buy it

  • Age

    This list runs from 2003 (Hacking) to 2024 (Windows Security Internals). Older books earn their place by teaching principles that do not change. For tools and platforms, buy the latest edition.

  • Level

    Check the stage before the title. A book from a later stage will make sense only once you have faced the problems it solves.

  • Format

    The longest book here, The Web Application Hacker's Handbook, runs about 910 pages. Read very long books as references: pick the chapter that matches the problem you have.

  • Fit

    Ask what you will do differently the week after you finish. If you cannot answer, the book is for a different moment. Come back to it when the situation arrives.

Getting started

Foundations: Linux, penetration-testing methods, how exploits work, web attacks and bug bounty basics.

  • Cover of Linux Basics for Hackers
    Start here

    Linux Basics for Hackers: Getting Started with Networking, Scripting, and Security in Kali

    by OccupyTheWeb · 2018

    ~250 pages~6 hrs to read

    Teaches the Linux command line, networking and scripting through Kali. Read it first if the shell still slows you down, since every later tool in this path assumes you are comfortable there.

    View book →
  • Cover of Penetration Testing

    Penetration Testing: A Hands-On Introduction to Hacking

    by Georgia Weidman · 2014

    ~530 pages~13 hrs to read

    Builds a small lab and walks through the stages of a test: reconnaissance, exploitation, post-exploitation and web and wireless attacks. A good first book once you can use Linux.

    View book →
  • Cover of Hacking

    Hacking: The Art of Exploitation

    by Jon Erickson · 2003

    ~300 pages~8 hrs to read

    Explains how memory corruption, shellcode and network attacks work at the code level. Read it to understand why exploits work rather than only how to run them.

    View book →
  • Cover of The Web Application Hacker's Handbook

    The Web Application Hacker's Handbook: Finding and Exploiting Security Flaws

    by Dafydd Stuttard, Marcus Pinto · 2007

    ~910 pages~23 hrs to read

    A systematic method for testing web applications, from mapping the attack surface to injection, authentication and session flaws. Pair it with practice labs; some specifics are dated but the methodology holds.

    View book →
  • Cover of Bug Bounty Bootcamp

    Bug Bounty Bootcamp: The Guide to Finding and Reporting Web Vulnerabilities

    by Vickie Li · 2021

    ~440 pages~11 hrs to read

    Covers common web vulnerabilities and how to find and report them on bug bounty programs. Helpful when you want real findings for a portfolio while building toward a first testing job.

    View book →

Doing the job

Real engagements: a red-team playbook, custom tools in Python, attacking APIs and broad exploitation reference.

  • Cover of The Hacker Playbook 3

    The Hacker Playbook 3: Practical Guide To Penetration Testing

    by Peter Kim · 2018

    ~290 pages~7 hrs to read

    Frames testing as a sequence of plays from reconnaissance to red team tactics, with lab setups and tool walkthroughs. Read it once you can finish easy machines and want to see a full engagement.

    View book →
  • Cover of Black Hat Python

    Black Hat Python: Python Programming for Hackers and Pentesters

    by Justin Seitz, Tim Arnold · 2014

    ~220 pages~6 hrs to read

    Uses Python to write network tools, sniffers, scanners and post-exploitation tooling. Reach for it when you want to automate your own testing instead of depending on someone else's scripts.

    View book →
  • Cover of Hacking APIs

    Hacking APIs: Breaking Web Application Programming Interfaces

    by Corey Ball · 2022

    Teaches API reconnaissance, fuzzing and the common attacks on REST and GraphQL interfaces, with a lab to practise in. Increasingly relevant because most modern apps expose one.

    View book →
  • Cover of Gray Hat Hacking

    Gray Hat Hacking: The Ethical Hacker's Handbook

    by Allen Harper, Daniel Regalado, Ryan Linn, Stephen Sims, Branko Spasojevic, Chris Eagle, Jonathan Ness, Shon Harris · 2004

    ~700 pages~18 hrs to read

    A broad reference spanning exploit development, malware analysis, cloud and red team operations, written by practitioners. Use it for depth when an engagement pushes you past the basics.

    View book →

Senior and leading

Advanced practice: complex engagements, evading endpoint defences and understanding operating system security from the inside.

  • Cover of Advanced Penetration Testing

    Advanced Penetration Testing: Hacking the World's Most Secure Networks

    by Wil Allsopp · 2017

    ~290 pages~7 hrs to read

    Looks at long-running, evasive engagements against well-defended targets, including custom tooling and red team techniques. For testers moving beyond scanner-driven work.

    View book →
  • Cover of Evading EDR

    Evading EDR: The Definitive Guide to Defeating Endpoint Detection Systems

    by Matt Hand · 2023

    Explains how endpoint detection and response products work internally and where their visibility ends. Read it as you move into red team work, where knowing the defender's sensors shapes your tradecraft.

    View book →
  • Windows Security Internals: A Deep Dive into Windows Authentication, Authorization, and Auditing

    by James Forshaw · 2024

    Uses PowerShell to explore how Windows handles logons, access control and auditing. Valuable for senior testers who want to understand the platform behind privilege escalation and lateral movement.

    View book →

Book links go to Amazon and are affiliate links. As an Amazon Associate I earn from qualifying purchases.

Frequently asked questions

Which book should a Penetration Tester read first?

Linux Basics for Hackers: Getting Started with Networking, Scripting, and Security in Kali by OccupyTheWeb. Most tooling in this field runs on Linux. Comfort at the shell makes every other book on the list easier to work through.

Do I need to read all 12 books?

No. The list is a menu, not a syllabus. Find your stage (getting started: 5, doing the job: 4, senior and leading: 3), begin with one book (we suggest Linux Basics for Hackers: Getting Started with Networking, Scripting, and Security in Kali), then pick the next book by the problem you are facing at work. Come back to the others when the situation they cover arrives.

How long does it take to read these books?

The 9 books with a known page count add up to about 3,930 pages, roughly 98 hours at 1.5 minutes a page. At three hours a week that is about 33 weeks; at six hours a week, about 16. The list is meant to be read over time, one book at a time, not in one run.

Are these books up to date?

They range from 2003 (Hacking) to 2024 (Windows Security Internals). Older titles are included because they teach principles that have not changed; for tools and platforms, we favour recent editions. Check the edition before you buy.

Some links are affiliate links: we earn a small commission if you buy, at no cost to you. It does not change what we list.