PR Security Review Checklist: What Every Reviewer Should Be Looking For

Most code review guidelines focus on correctness, performance, and readability. Security checks are an afterthought — if they appear at all. The result is that security review happens as a separate activity by a separate person on a separate schedule, which means it happens too late, on code nobody remembers writing, with no original context available.

This checklist is for everyone who reviews pull requests. Not just security engineers. The security review does not need to be exhaustive — it needs to be fast enough to happen during the normal review cycle, which means it needs to be structured so a developer can walk through it in five minutes without losing their mental model of the diff.

Authentication and Session Management

Start here. Authentication bugs are high-severity and often invisible in a diff because they appear as missing code rather than wrong code.

Authorization and Access Control

Authorization failures are the most common vulnerability class in web applications. They are also the hardest to catch with automated tools because they require understanding the application's data ownership model.

Input Validation and Injection Prevention

This is the category where most static analyzers do their best work, but human review still catches patterns that automated tools miss — particularly around indirect injection paths.

Secrets and Sensitive Data Handling

Secrets in source code are an embarrassingly common finding. They are easy to commit accidentally and difficult to fully remediate once they appear in git history.

Dependency Hygiene

Short but important. New dependencies deserve specific attention during code review.

On review speed: a reviewer who walks through this checklist on every PR will add approximately four to seven minutes to their review time for a typical feature diff. That is a worthwhile trade. In our experience, most security issues caught during PR review take under an hour to fix; the same issues found in a security audit or in production take days.

How to Use This Checklist Without Slowing Down Reviews

The goal is not to turn every PR into a security audit. The goal is to catch the obvious things that SAST misses and that every experienced reviewer already knows to look for, but sometimes forgets to check under time pressure.

A practical approach: print this checklist as a PR comment template and paste it on any PR that touches authentication, data access, or external inputs. Skip categories that clearly do not apply to the diff. A PR that only modifies frontend styling does not need an injection prevention review. A PR that adds a new API endpoint does.

The categories most worth prioritizing when time is short: authorization (access control failures are the most common vulnerability class), input validation for any new external input paths, and a 30-second scan for string literals that look like secrets. Those three checks, consistently applied, prevent the majority of security vulnerabilities that actually ship to production.

Supply Chain Security for Startups CWE Top 25 Guide