Logo
-

Byte Open Security

(ByteOS Network)

Log In

Sign Up

ByteOS

Security
Vulnerability Details
Registries
Custom Views
Weaknesses
Attack Patterns
Filters & Tools
CWE-913:Improper Control of Dynamically-Managed Code Resources
Weakness ID:913
Version:v4.17
Weakness Name:Improper Control of Dynamically-Managed Code Resources
Vulnerability Mapping:Allowed-with-Review
Abstraction:Class
Structure:Simple
Status:Incomplete
Likelihood of Exploit:
DetailsContent HistoryObserved CVE ExamplesReports
▼Description

The product does not properly restrict reading from or writing to dynamically-managed code resources such as variables, objects, classes, attributes, functions, or executable instructions or statements.

▼Extended Description

Many languages offer powerful features that allow the programmer to dynamically create or modify existing code, or resources used by code such as variables and objects. While these features can offer significant flexibility and reduce development time, they can be extremely dangerous if attackers can directly influence these code resources in unexpected ways.

▼Alternate Terms
▼Relationships
Relevant to the view"Research Concepts - (1000)"
NatureMappingTypeIDName
ChildOfDiscouragedP664Improper Control of a Resource Through its Lifetime
ParentOfAllowedB470Use of Externally-Controlled Input to Select Classes or Code ('Unsafe Reflection')
ParentOfAllowedB502Deserialization of Untrusted Data
ParentOfAllowedB914Improper Control of Dynamically-Identified Variables
ParentOfAllowedB915Improperly Controlled Modification of Dynamically-Determined Object Attributes
ParentOfAllowed-with-ReviewB94Improper Control of Generation of Code ('Code Injection')
Nature: ChildOf
Mapping: Discouraged
Type: Pillar
ID: 664
Name: Improper Control of a Resource Through its Lifetime
Nature: ParentOf
Mapping: Allowed
Type: Base
ID: 470
Name: Use of Externally-Controlled Input to Select Classes or Code ('Unsafe Reflection')
Nature: ParentOf
Mapping: Allowed
Type: Base
ID: 502
Name: Deserialization of Untrusted Data
Nature: ParentOf
Mapping: Allowed
Type: Base
ID: 914
Name: Improper Control of Dynamically-Identified Variables
Nature: ParentOf
Mapping: Allowed
Type: Base
ID: 915
Name: Improperly Controlled Modification of Dynamically-Determined Object Attributes
Nature: ParentOf
Mapping: Allowed-with-Review
Type: Base
ID: 94
Name: Improper Control of Generation of Code ('Code Injection')
▼Memberships
NatureMappingTypeIDName
MemberOfProhibitedV1003Weaknesses for Simplified Mapping of Published Vulnerabilities
MemberOfProhibitedC1345OWASP Top Ten 2021 Category A01:2021 - Broken Access Control
MemberOfProhibitedC1416Comprehensive Categorization: Resource Lifecycle Management
Nature: MemberOf
Mapping: Prohibited
Type:View
ID: 1003
Name: Weaknesses for Simplified Mapping of Published Vulnerabilities
Nature: MemberOf
Mapping: Prohibited
Type:Category
ID: 1345
Name: OWASP Top Ten 2021 Category A01:2021 - Broken Access Control
Nature: MemberOf
Mapping: Prohibited
Type:Category
ID: 1416
Name: Comprehensive Categorization: Resource Lifecycle Management
▼Tags
NatureMappingTypeIDName
MemberOfProhibitedBSBOSS-279Input Validation Strategy
MemberOfProhibitedBSBOSS-281Refactoring Strategy
MemberOfProhibitedBSBOSS-311Execute Unauthorized Code or Commands (impact)
MemberOfProhibitedBSBOSS-326Varies by Context (impact)
MemberOfProhibitedBSBOSS-330Alter Execution Logic (impact)
Nature: MemberOf
Mapping: Prohibited
Type:BOSSView
ID: BOSS-279
Name: Input Validation Strategy
Nature: MemberOf
Mapping: Prohibited
Type:BOSSView
ID: BOSS-281
Name: Refactoring Strategy
Nature: MemberOf
Mapping: Prohibited
Type:BOSSView
ID: BOSS-311
Name: Execute Unauthorized Code or Commands (impact)
Nature: MemberOf
Mapping: Prohibited
Type:BOSSView
ID: BOSS-326
Name: Varies by Context (impact)
Nature: MemberOf
Mapping: Prohibited
Type:BOSSView
ID: BOSS-330
Name: Alter Execution Logic (impact)
▼Relevant To View
Relevant to the view"OWASP Top Ten (2021) - (1344)"
NatureMappingTypeIDName
MemberOfProhibitedC1345OWASP Top Ten 2021 Category A01:2021 - Broken Access Control
Nature: MemberOf
Mapping: Prohibited
Type: Category
ID: 1345
Name: OWASP Top Ten 2021 Category A01:2021 - Broken Access Control
▼Background Detail

▼Common Consequences
ScopeLikelihoodImpactNote
IntegrityN/AExecute Unauthorized Code or Commands
N/A
OtherIntegrityN/AVaries by ContextAlter Execution Logic
N/A
Scope: Integrity
Likelihood: N/A
Impact: Execute Unauthorized Code or Commands
Note:
N/A
Scope: Other, Integrity
Likelihood: N/A
Impact: Varies by Context, Alter Execution Logic
Note:
N/A
▼Potential Mitigations
Phase:Implementation
Mitigation ID:
Strategy: Input Validation
Effectiveness:
Description:

For any externally-influenced input, check the input against an allowlist of acceptable values.

Note:


Phase:Implementation, Architecture and Design
Mitigation ID:
Strategy: Refactoring
Effectiveness:
Description:

Refactor the code so that it does not need to be dynamically managed.

Note:

▼Modes Of Introduction
Phase: Architecture and Design
Note:

N/A

Phase: Implementation
Note:

N/A

▼Applicable Platforms
▼Demonstrative Examples
▼Observed Examples
ReferenceDescription
CVE-2022-2054
Python compiler uses eval() to execute malicious strings as Python code.
CVE-2018-1000613
Cryptography API uses unsafe reflection when deserializing a private key
CVE-2015-8103
Deserialization issue in commonly-used Java library allows remote execution.
CVE-2006-7079
Chain: extract used for register_globals compatibility layer, enables path traversal (CWE-22)
CVE-2012-2055
Source version control product allows modification of trusted key using mass assignment.
Reference: CVE-2022-2054
Description:
Python compiler uses eval() to execute malicious strings as Python code.
Reference: CVE-2018-1000613
Description:
Cryptography API uses unsafe reflection when deserializing a private key
Reference: CVE-2015-8103
Description:
Deserialization issue in commonly-used Java library allows remote execution.
Reference: CVE-2006-7079
Description:
Chain: extract used for register_globals compatibility layer, enables path traversal (CWE-22)
Reference: CVE-2012-2055
Description:
Source version control product allows modification of trusted key using mass assignment.
▼Affected Resources
    ▼Functional Areas
      ▼Weakness Ordinalities
      OrdinalityDescription
      ▼Detection Methods
      Fuzzing
      Detection Method ID:DM-13
      Description:

      Fuzz testing (fuzzing) is a powerful technique for generating large numbers of diverse inputs - either randomly or algorithmically - and dynamically invoking the code with those inputs. Even with random inputs, it is often capable of generating unexpected results such as crashes, memory corruption, or resource consumption. Fuzzing effectively produces repeatable test cases that clearly indicate bugs, which helps developers to diagnose the issues.

      Effectiveness:High
      Note:

      N/A

      ▼Vulnerability Mapping Notes
      Usage:Allowed-with-Review
      Reason:Abstraction
      Rationale:

      This CWE entry is a Class and might have Base-level children that would be more appropriate

      Comments:

      Examine children of this entry to see if there is a better fit

      Suggestions:
      ▼Notes
      ▼Taxonomy Mappings
      Taxonomy NameEntry IDFitEntry Name
      ▼Related Attack Patterns
      IDName
      ▼References
      Details not found