Rule Reference

Browse representative rules from all 10 categories. Doorman includes 2,508 rules total.
Security (15 rules shown)
Rule IDTitleSeverityAuto-fix
SEC-INJ-001SQL Injection via string concatenationCriticalYes
SEC-INJ-002NoSQL injection in MongoDB queryCriticalYes
SEC-INJ-003Command injection via exec/spawnCriticalYes
SEC-XSS-001Reflected XSS via unsanitized outputCriticalYes
SEC-XSS-002DOM-based XSS via innerHTMLHighYes
SEC-AUTH-001Missing authentication on API routeCriticalNo
SEC-AUTH-002Hardcoded JWT secretHighYes
SEC-KEY-001API key exposed in client-side codeCriticalYes
SEC-KEY-002Hardcoded database credentialsHighYes
SEC-CSRF-001Missing CSRF protection on form handlerHighYes
SEC-HDR-001Missing security headers (CSP, HSTS)HighYes
SEC-CORS-001Overly permissive CORS configurationMediumYes
SEC-RATE-001No rate limiting on authentication endpointHighYes
SEC-MCP-001MCP tool handler without input validationCriticalNo
SEC-AI-001Prompt injection vulnerability in AI API callHighNo
Performance (12 rules shown)
Rule IDTitleSeverityAuto-fix
PERF-N1-001N+1 query in loop (ORM)HighNo
PERF-N1-002N+1 query in GraphQL resolverHighNo
PERF-CACHE-001Missing cache headers on static assetsMediumYes
PERF-CACHE-002No response caching on expensive API callMediumYes
PERF-BUNDLE-001Large dependency imported for small utilityMediumYes
PERF-BUNDLE-002Unoptimized image assetsLowNo
PERF-DB-001Missing database index on queried columnMediumNo
PERF-MEM-001Memory leak via event listener not removedHighYes
PERF-RENDER-001Unnecessary re-renders in React componentMediumYes
PERF-RENDER-002Missing React.memo on pure componentLowYes
PERF-ASYNC-001Sequential awaits that could be parallelMediumYes
PERF-REGEX-001Catastrophic backtracking regexLowNo
Reliability (10 rules shown)
Rule IDTitleSeverityAuto-fix
REL-ERR-001Unhandled promise rejectionHighYes
REL-ERR-002Empty catch block swallowing errorsHighYes
REL-ERR-003Missing error boundary in ReactMediumNo
REL-RACE-001Race condition in shared state updateHighNo
REL-RACE-002TOCTOU (time-of-check-time-of-use) file accessMediumNo
REL-NULL-001Null dereference without guardMediumYes
REL-RETRY-001Missing retry logic on network callMediumYes
REL-TIMEOUT-001No timeout on HTTP requestLowYes
REL-LEAK-001Resource handle not closed (file, socket)HighYes
REL-DEAD-001Deadlock potential in concurrent codeMediumNo
Cost (10 rules shown)
Rule IDTitleSeverityAuto-fix
COST-API-001Unbounded AI API calls without cost limitsHighYes
COST-API-002No response caching for paid API (est. waste)MediumYes
COST-API-003Using expensive model when cheaper worksMediumYes
COST-DB-001Full table scan on large tableHighNo
COST-DB-002SELECT * fetching unnecessary columnsMediumNo
COST-CLOUD-001Over-provisioned cloud resource in IaCMediumYes
COST-CLOUD-002Missing auto-scaling configurationLowNo
COST-LOG-001Excessive logging in production (storage cost)MediumYes
COST-CDN-001Missing CDN for static assetsLowNo
COST-TOKEN-001Sending full context in every AI API requestMediumYes
Compliance (10 rules shown)
Rule IDTitleSeverityAuto-fix
COMP-GDPR-001PII stored without encryptionCriticalNo
COMP-GDPR-002No data deletion endpoint (right to erasure)HighNo
COMP-GDPR-003User data logged without consent trackingHighNo
COMP-PCI-001Credit card number in log outputCriticalYes
COMP-PCI-002Card data stored in plain textHighNo
COMP-HIPAA-001PHI transmitted without TLSCriticalYes
COMP-HIPAA-002Missing audit log for PHI accessHighNo
COMP-SOC2-001Missing access control on admin endpointMediumNo
COMP-LIC-001Copyleft license in proprietary projectMediumNo
COMP-A11Y-001Missing alt text on imagesLowNo
Data (10 rules shown)
Rule IDTitleSeverityAuto-fix
DATA-LEAK-001PII in AI API prompt (sent to third party)CriticalNo
DATA-LEAK-002Sensitive data in error response to clientCriticalYes
DATA-LEAK-003Stack trace exposed in productionHighYes
DATA-ENC-001Weak encryption algorithm (DES, MD5 for passwords)HighYes
DATA-ENC-002Hardcoded encryption keyHighYes
DATA-VAL-001Missing input validation on user dataMediumNo
DATA-VAL-002No schema validation on API request bodyMediumNo
DATA-LOG-001Password logged in plain textHighYes
DATA-SER-001Unsafe deserialization of user inputMediumNo
DATA-CLEAN-001Orphaned data not cleaned up on deleteLowNo
Dependencies (10 rules shown)
Rule IDTitleSeverityAuto-fix
DEP-VULN-001Dependency with known critical CVECriticalYes
DEP-VULN-002Dependency with known high CVEHighYes
DEP-OUT-001Major version behind on critical dependencyMediumYes
DEP-OUT-002Minor version behind on dependencyLowYes
DEP-LOCK-001Missing lockfile (package-lock.json / yarn.lock)HighNo
DEP-LOCK-002Lockfile out of sync with package.jsonMediumNo
DEP-TYPO-001Possible typosquat package nameMediumNo
DEP-SUPPLY-001Dependency with install scripts (postinstall)HighNo
DEP-SIZE-001Unnecessarily large dependency for feature usedLowYes
DEP-MAINT-001Dependency unmaintained (no updates in 2+ years)MediumNo
Infrastructure (10 rules shown)
Rule IDTitleSeverityAuto-fix
INFRA-SEC-001S3 bucket with public accessCriticalYes
INFRA-SEC-002Security group allowing 0.0.0.0/0 on all portsCriticalYes
INFRA-SEC-003Database publicly accessibleHighYes
INFRA-TLS-001Missing TLS/SSL on load balancerHighYes
INFRA-LOG-001Missing access logging on cloud resourceMediumYes
INFRA-IAM-001Overly permissive IAM policy (Action: *)MediumNo
INFRA-DOCKER-001Docker container running as rootHighYes
INFRA-DOCKER-002Docker image using latest tagMediumNo
INFRA-K8S-001Kubernetes pod with privileged modeHighYes
INFRA-K8S-002Missing resource limits on Kubernetes podMediumYes
Quality (10 rules shown)
Rule IDTitleSeverityAuto-fix
QUAL-COMPLEX-001Function exceeds cyclomatic complexity thresholdMediumNo
QUAL-COMPLEX-002Deeply nested conditionals (4+ levels)LowNo
QUAL-DUP-001Duplicated code block (3+ occurrences)LowNo
QUAL-DEAD-001Dead code (unreachable statements)LowYes
QUAL-DEAD-002Unused variable or importLowYes
QUAL-TYPE-001Implicit any type in TypeScriptMediumNo
QUAL-NAME-001Non-descriptive variable name (single letter)MediumNo
QUAL-MAGIC-001Magic number without named constantLowNo
QUAL-SIZE-001File exceeds 500 linesMediumNo
QUAL-TODO-001TODO/FIXME/HACK comment in production codeLowNo
Deployment (10 rules shown)
Rule IDTitleSeverityAuto-fix
DEPLOY-ENV-001.env file committed to repositoryHighYes
DEPLOY-ENV-002Debug mode enabled in production configHighYes
DEPLOY-HEALTH-001Missing health check endpointMediumNo
DEPLOY-HEALTH-002No readiness/liveness probe configuredMediumYes
DEPLOY-SECRET-001Secret in environment variable without vaultHighNo
DEPLOY-LOG-001Missing structured loggingMediumNo
DEPLOY-GRACE-001No graceful shutdown handlerLowYes
DEPLOY-ROLLBACK-001No rollback strategy definedMediumNo
DEPLOY-MONITOR-001No error monitoring integrationLowNo
DEPLOY-CI-001No CI pipeline configuration foundMediumNo

Showing ~100 representative rules. Doorman includes 2,508 rules total. Run npx getdoorman check --verbose to see all matched rules for your codebase.