The audit-driven approach to security design
summary
Advocates an Audit Driven Security workflow: write audits that define intended and forbidden behaviors, then redesign until misuse chains disappear. Shows concrete wins — a signed-update database model removes dependence on network security, Libsodium implementations eliminate timing side channels while staying fast, and JSON Web Token flaws (the "none" alg and mixed-alg choices) produce real exploits. Uses ransomware and train-brake failure chains as analysis patterns and recommends simpler primitives like simple web tokens and less code to reduce vulnerabilities.
AI-written summary · about
chapters (27)
- 0:00Start
- 0:46Security is Important
- 1:44Defining Security
- 2:22Ways that something can fail
- 3:20From Academia: Formal Methods
- 4:23Waterfall Model
- 7:43Audit Driven Security
- 8:15Navigation Driven Shipping
- 8:34Sinking of the SS Wairarapa
- 9:38What is auditing
- 10:15Inspiration
- 11:38Real attacks are combinations
- 12:30Error Chains
- 13:36Belt And Suspenders
- 14:15Example: 2 factor authentication.
- 15:11Avoiding Classes of Errors
- 16:29Some thoughts on security after 10 years of qmail
- 18:26The security impact of a new cryptography library
- 21:33Negative Example: JSON Web Token
- 23:04Why did this happen?
- 23:46Errors in Spec
- 25:02Simple Web Tokens
- 26:19Configurable Security
- 28:37Goal: secure by design
- 29:07Train Brakes
- 30:17Audit Driven Design Process
- 31:09Thank you, and remember
related talks
18mDesigning for Security Outcomes
40mDesign Approaches for Security Automation
16mDesigning Holistic Security Programs
01h 17mSecure by Design - Security Principles for the Working Architect
40mMaking Security an integrated part of the SW Dev Lifecycle
43mSecurity By Design
29mSecurity by(e) Design?
25mSecurity First
