Internal penetration-test checklist
Run against an isolated environment with synthetic data.
- Authentication: uniform unknown-user behavior, account/IP limits, lockout, MFA window/replay, reset single use, password history, refresh reuse/device binding, session cap, and privilege-change invalidation.
- Authorization: test missing, malformed, stale, wrong-scope, and another user’s token on every protected route. Verify
ownversusany. - Input: malformed JSON, oversized bodies, wrong content types, SQL metacharacters, profile HTML, and loopback/private/
data:/javascript:avatar URLs. - Browser: CSP/clickjacking/referrer/CORS, memory-only tokens, cross-tab races, logout propagation, SRI, and absence of user-data
innerHTMLsinks. - Edge: TLS 1.3, OCSP, HSTS, request-ID injection, forwarded-IP spoofing, websocket auth, and per-route body/rate policy.
- Infrastructure: restricted PSS, default deny, non-root/read-only images, signature admission, secret mounts, Redis ACLs, audit events, and Falco.
- Data: export, erasure, retention, redaction, stream signature/encryption, DLQ replay authorization, restore, and break-glass revocation.
Store versions, timestamps, evidence, and owners. Critical/high findings block release until fixed and independently re-tested.