Skip to content

Dangerous Permission Combination

Description

The application grants the `RuntimePermission` of `createClassLoader` or `ReflectPermission` of `suppressAccessChecks`, which can be used to instantiate arbitrary classes or access protected and private members.

Examples

Insecure Code

java
PermissionCollection pc = new Permissions();
RuntimePermission rp = new RuntimePermission("createClassLoader");
pc.add(rp);

Secure Code

java
PermissionCollection pc = new Permissions();
// Remove or restrict the dangerous permission

Remediation

Remove or restrict the dangerous permissions from the permission collection to prevent potential security vulnerabilities.

Rule Details

FieldValue
IDCODE-0717
CategoryAccessControl
SeverityMEDIUM
CWECWE-732
ConfidenceHIGH
ImpactHIGH
LikelihoodMEDIUM
ExploitabilityMODERATE
Tagspermission, access control
OWASPA5:2017-Broken Access Control, A01:2021-Broken Access Control