2026-05-10
A practical security review checklist
Lightweight controls that catch real issues without slowing delivery to a crawl.
Security reviews break down when the checklist is either too shallow or too heavy. A shallow list misses the real issues; a heavy list turns into theatre and teams route around it. We focus on the few checks that consistently prevent incidents and scale across projects.
The baseline: auth boundaries, secrets handling, dependency hygiene, logging rules, and least privilege for cloud roles. These aren’t glamorous, but they’re where most breaches start. If you get the baseline right, the remaining risk is easier to reason about and document.
For sensitive domains, we add threat notes and data-flow diagrams — small artifacts that make audits and handover easier. The goal is clarity: what data exists, where it moves, who can access it, and what happens when something goes wrong.
A good review is scoped: focus on auth boundaries, data flows, and the few operations that can cause major harm (money movement, admin actions, PII exports). Don’t try to review “the whole system” in one sitting—review the highest-risk surfaces first, and iterate.
Then verify hygiene: dependencies, secrets, logging rules, least privilege, and secure defaults in infrastructure. Most incidents come from boring gaps here. If teams repeat the same mistakes, convert the fix into automation (templates, CI rules, and secure-by-default modules).
Finally, make it repeatable: turn findings into guardrails (CI checks, templates, runbooks) so teams don’t re-learn the same lessons every quarter. A review that produces durable guardrails is an investment; a review that produces only a PDF is a cost.
