# Missing Authorization (CWE-862) The product does not perform an authorization check when an actor attempts to access a resource or perform an action. **Stack:** Go - Prevalence: High Frequently exploited - Impact: High 3 high-severity rules - Prevention: Documented 3 fix examples **OWASP:** Broken Access Control (A01:2021-Broken Access Control) - #1 ## Description Assuming a user with a given identity, authorization is the process of determining whether that user can access a given resource. When authorization checks are completely missing, any authenticated user can access protected resources. ## Prevention Prevention strategies for Missing Authorization based on 1 Shoulder detection rules. ### Go Require human approval for sensitive operations and limit agent loop iterations ## Warning Signs - [HIGH] Excessive LLM agency detected: ... - [HIGH] LLM implementations with excessive autonomy allowing destructive operations without human approval ## Consequences - Read Application Data - Modify Application Data - Gain Privileges ## Mitigations - Implement authorization checks for all protected resources - Use a centralized authorization mechanism - Follow the principle of deny by default ## Detection - Total rules: 3 - Languages: go, javascript, typescript, python ## Rules by Language ### Go (1 rules) - **LLM Excessive Agency** [HIGH]: Detects LLM implementations with excessive autonomy allowing destructive operations without human approval. - Remediation: Require human approval for sensitive operations and add iteration limits. ```go if sensitiveOperations[toolName] { queueForApproval(toolCall) } ``` Learn more: https://shoulder.dev/learn/go/cwe-862/llm-excessive-agency