Threat Modeling: Designing for Security
About this book
Shostack turns threat modelling into something a delivery team can do rather than something a specialist performs on their behalf. The method is built around a short sequence of questions, starting with what you are building and moving on to what can go wrong with it, what you will do about that, and whether the analysis was good enough. Most of the book addresses the second question, using STRIDE and attack trees to find the tampering, spoofing and privilege escalation problems hiding in a system diagram. Later parts cover threat modelling for privacy, for cryptographic systems and for human factors, plus how to introduce the practice into an existing development process. Long, and organised so you can read the parts relevant to your system.
Description via Product Digest.
Topics
Related concepts
- Guardrails and output handlingThe controls that sit around a model, why layering them never produces a boundary, and the one practitioners get wrong, which is what the application does with the response.
- Adversarial machine learningAttacks that target the model itself, rather than the software around it, and why several of them have no clean fix.
- Excessive agency and tool permissionsA system able to do more than its feature requires, the three forms it takes, and why permission design is the one control that still works after everything else has failed.
- Red teaming an AI systemDeliberately trying to make a system misbehave before somebody else does, how the exercise is run, what it cannot establish and what regulators now expect of it.
- Agents and autonomy riskWhat changes when a model is given tools, memory and several steps to itself, and why the danger is in the permissions, whatever the intelligence.
- The OWASP LLM Top 10The industry's shared list of what goes wrong in applications built on large language models, what the 2026 edition reordered and why, and what the list cannot say about a particular system.
- Prompt Injection Explained: Direct and Indirect AttacksUnderstand direct and indirect prompt injection, how untrusted content redirects LLM applications and how to test the boundaries around data and tools.