← ClaudeAtlas

securitylisted

Security review of the branch diff — find each weakness, fix or accept it, record it in .fabrika/work/security.md. Use after implementation, before code review.
perkzen/fabrika · ★ 1 · AI & Automation · score 55
Install: claude install-skill perkzen/fabrika
# Security review Review `git diff <base>...HEAD` the way an attacker reading the change would, fix what matters, and leave a record a human can check. ## Checklist Match each item against every hunk; the change is where new risk enters. Each reads *what it is* → *how to fix*. - **Injection** — shell, SQL, LDAP, template, or command strings built from input. → parameterise; pass argv arrays, not shell strings. - **Path handling** — file paths built from input, `..` traversal, symlinks followed. → resolve, then check the path stays under the intended root. - **Trust boundaries** — new inputs (HTTP params, webhook bodies, env, files, MCP or tool results) used without validation. → validate at the boundary with the repo's schema tool. - **Authn/authz** — new endpoints, handlers, or commands without the checks their siblings have. → mirror the sibling's guard. - **Secrets** — keys, tokens, passwords in code, config, logs, error messages, URLs, or process arguments. → env or secret store; redact logs. - **Sensitive data exposure** — PII or credentials in logs, stack traces, responses, analytics. → drop or redact at the point of logging. - **Unsafe deserialisation / eval** — `eval`, `new Function`, YAML or pickle load of untrusted input, prototype pollution through deep merge. → safe parsers, schema-validated input. - **SSRF / open redirect** — outbound requests or redirects to input-controlled URLs. → allowlist hosts. - **XSS** — HTML built from input, `dangerouslySetInnerHTML