Cornucopia (CJ)
Roman kan de applicatie misbruiken omdat deze is gecompileerd met verouderde tools, of de configuratie ervan is niet standaard beveiligd, of de beveiligingsinformatie is niet gedocumenteerd en doorgegeven aan operationele teams
The key concept for this card is secure deployment.
Scenario: Roman’s Exploitation of Outdated Compilation and Configuration Lapses
Envision a scenario where Roman takes advantage of vulnerabilities in an application caused by using outdated compilation tools, insecure default configurations, or a lack of documented security information for operational teams. These issues arise from:
- Use of Outdated Compilation Tools: The application is compiled with tools that are not up-to-date, potentially including known vulnerabilities.
- Insecure Default Configuration: The application’s default configuration settings are not aligned with best security practices.
- Use of Dangerous or Risky Components: The application includes components that are considered dangerous or risky, which have not been securely deployed and configured.
- Lack of Security Documentation: Essential security information and configurations are not properly documented or communicated to the operational teams responsible for maintaining the application.
Example
Roman targets an enterprise application compiled with outdated tools, which include known security flaws that haven't been patched. He exploits these vulnerabilities to gain unauthorized access. Additionally, the application’s default settings are insecure, leaving several key security features disabled. Roman leverages these weak points for further exploitation. Furthermore, due to the lack of proper security documentation, the operational team is unaware of specific configurations required to secure the application, leaving critical security gaps that Roman exploits.
Threat Modeling
STRIDE
The STRIDE category applicable here is Tampering.
The scenario involves exploiting weaknesses introduced during development, compilation, and deployment, such as: outdated tools, insecure default configurations, and missing operational guidance. The primary impact is that an attacker can manipulate, exploit, or modify the behavior of the application due to these weaknesses. Although this could also enable unauthorized access, the root cause is the application's susceptibility to manipulation or misuse, which is characteristic of Tampering.
What can go wrong?
These vulnerabilities can lead to significant security breaches, unauthorized access, and potential exploitation of sensitive data and system functionalities.
For more things that can go wrong, see the Common Attack Patterns related to this card in the table below.
What are we going to do about it?
- Ensure that all tools used for compiling the application are up-to-date and free from known vulnerabilities.
- Configure the application with secure settings by default and regularly review these settings to align with evolving security standards.
- Create comprehensive security documentation and ensure it is effectively communicated and accessible to all operational teams.
- Conduct regular security audits and provide ongoing training to operational teams to keep them informed about security best practices and application-specific requirements.
- Avoid using dangerous or risky components, and if their use is necessary, ensure they are securely deployed and configured.
For detailed advice on how to mitigate threats related to the card, see the ASVS and OWASP Developer Guide requirements in the table below.
Mappings
OWASP ASVS (v4.0): 1.14.3,14.1.1,14.1.2,14.1.3,14.1.4,14.1.5,14.2.1
OWASP DevGuide: SC1,SC12,SC13,FM1,FM2,FM3,FM4,FM5,SFL1,SFL2,SFL3,SFL4,SFL5,SFL6,SDC4,SDC5,SDC6,SDA1,SDA2,AC6,AC7,ACM8,PDT2,PDT8
STRIDE: Tampering
OWASP SCP: 90,137,148,151,152,153,154,175,176,177,178,179,186,192
OWASP AppSensor: -
CAPEC™: 70,121,127,133,176,180,191,207
SAFECode™: 4