Usage of dangerous permissions
Overview
Rule ID:
java_lang_dangerous_permissions
Applicable Languages: Java
Weakness ID: CWE-269
Description
Granting certain dangerous permissions compromises application security. For example, allowing the RuntimePermission
of createClassLoader
can enable unauthorized class loaders to load arbitrary classes. Similarly, permitting the ReflectPermission
of suppressAccessChecks
bypasses Java language access controls, potentially allowing unrestricted access to protected and private class members.
Remediation Guidelines
Do not grant
RuntimePermission("createClassLoader")
, as this permission allows the instantiation of unauthorized class loaders, posing a security risk by potentially loading arbitrary classes.Similarly, avoid granting
ReflectPermission("suppressAccessChecks")
, which bypasses Java's access controls and can lead to unrestricted access to protected and private class members.Do Review and restrict permissions to only those necessary for the application's functionality. Limiting permissions minimizes potential security vulnerabilities.
References
Configuration
To omit this rule during a scan, and to provide you with continuous 24/7 code-level scanning, you can employ our SAST TOOL
Last updated