CWE-284: Improper Access Control
Description
The product does not restrict or incorrectly restricts access to a resource from an unauthorized actor.
- Abstraction
- PillarThe most abstract kind of weakness: a theme that groups classes.
- Likelihood of exploit
- Not rated by MITRE
- Status
- Incomplete
Common consequences
- Other
Varies by Context
Potential mitigations
- Architecture and DesignOperation
Very carefully manage the setting, management, and handling of privileges. Explicitly manage trust zones in the software.
- Architecture and DesignSeparation of Privilege
Compartmentalize the system to have safe areas where trust boundaries can be unambiguously drawn. Do not allow sensitive data to go outside of the trust boundary and always be careful when interfacing with a compartment outside of the safe area. Ensure that appropriate compartmentalization is built into the system design, and the compartmentalization allows for and reinforces privilege separation functionality. Architects and designers should rely on the principle of least privilege to decide the appropriate time to use privileges and the time to drop privileges.
Related weaknesses
Child weaknesses
- CWE-269Improper Privilege Management
- CWE-282Improper Ownership Management
- CWE-285Improper Authorization
- CWE-286Incorrect User Management
- CWE-287Improper Authentication
- CWE-346Origin Validation Error
- CWE-749Exposed Dangerous Method or Function
- CWE-923Improper Restriction of Communication Channel to Intended Endpoints
- CWE-1191On-Chip Debug and Test Interface With Improper Access Control
- CWE-1220Insufficient Granularity of Access Control
- CWE-1224Improper Restriction of Write-Once Bit Fields
- CWE-1231Improper Prevention of Lock Bit Modification
- CWE-1233Security-Sensitive Hardware Controls with Missing Lock Bit Protection
- CWE-1252CPU Hardware Not Configured to Support Exclusivity of Write and Execute Operations
- CWE-1257Improper Access Control Applied to Mirrored or Aliased Memory Regions
- CWE-1259Improper Restriction of Security Token Assignment
- CWE-1260Improper Handling of Overlap Between Protected Memory Ranges
- CWE-1262Improper Access Control for Register Interface
- CWE-1263Improper Physical Access Control
- CWE-1267Policy Uses Obsolete Encoding
- CWE-1270Generation of Incorrect Security Tokens
- CWE-1274Improper Access Control for Volatile Memory Containing Boot Code
- CWE-1276Hardware Child Block Incorrectly Connected to Parent System
- CWE-1280Access Control Check Implemented After Asset is Accessed
- CWE-1283Mutable Attestation or Measurement Reporting Data
- CWE-1290Incorrect Decoding of Security Identifiers
- CWE-1292Incorrect Conversion of Security Identifiers
- CWE-1294Insecure Security Identifier Mechanism
- CWE-1296Incorrect Chaining or Granularity of Debug Components
- CWE-1304Improperly Preserved Integrity of Hardware Configuration State During a Power Save/Restore Operation
- CWE-1311Improper Translation of Security Attributes by Fabric Bridge
- CWE-1312Missing Protection for Mirrored Regions in On-Chip Fabric Firewall
- CWE-1313Hardware Allows Activation of Test or Debug Logic at Runtime
- CWE-1315Improper Setting of Bus Controlling Capability in Fabric End-point
- CWE-1316Fabric-Address Map Allows Programming of Unwarranted Overlaps of Protected and Unprotected Ranges
- CWE-1317Improper Access Control in Fabric Bridge
- CWE-1320Improper Protection for Outbound Error Messages and Alert Signals
- CWE-1323Improper Management of Sensitive Trace Data
- CWE-1334Unauthorized Error Injection Can Degrade Hardware Redundancy
CAPEC attack patterns that exploit it
- CAPEC-19Embedding Scripts within Scripts
- CAPEC-441Malicious Logic Insertion
- CAPEC-478Modification of Windows Service Configuration
- CAPEC-479Malicious Root Certificate
- CAPEC-502Intent Spoof
- CAPEC-503WebView Exposure
- CAPEC-536Data Injected During Configuration
- CAPEC-546Incomplete Data Deletion in a Multi-Tenant Environment
- CAPEC-550Install New Service
- CAPEC-551Modify Existing Service
- CAPEC-552Install Rootkit
- CAPEC-556Replace File Extension Handlers
- CAPEC-558Replace Trusted Executable
- CAPEC-562Modify Shared File
- CAPEC-563Add Malicious File to Shared Webroot
- CAPEC-564Run Software at Logon
- CAPEC-578Disable Security Software