Cornucopia (CJ)
Roman peut exploiter l'application car elle a été compilée ou déployée de manière non sécurisée ou sa configuration n'est pas sécurisée par défaut, ou parce que les informations de sécurité n'ont pas été documentées ou transmises aux équipes opérationnelles, ou l'utilisateur n'a pas été averti et l'accès bloqué quand les fonctionnalités de sécurité ne sont pas supportées ou sont désactivées
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.
- 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.
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 (v5.0): 3.1.1,3.4.3,3.4.7,3.6.1,3.7.5,8.2.1,8.2.2,8.2.3,8.2.4,8.3.1,8.4.2,13.1.1,13.2.1,13.2.2,13.2.3,13.3.1,13.3.2,13.4.1,13.4.2,13.4.3,13.4.4,13.4.5,13.4.6,13.4.7,15.2.3,15.2.5,16.3.2,16.3.3,16.3.4
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
CAPEC™: 70,121,127,133,176,180,191,207
SAFECode™: 4
CAPEC Map
| Code | Title | ASVS |
|---|---|---|
| 70 | Try Common or Default Usernames and Passwords | 13.2.3 |
| 121 | Exploit Non-Production Interfaces | 13.4.1,13.4.5,15.2.3 |
| 127 | Directory Indexing | 13.4.3,16.3.3 |
| 133 | Try All Common Switches | 13.2.1,13.4.2,13.4.4,13.4.5,13.4.6 |
| 176 | Configuration/Environment Manipulation | 1.3.8,3.7.5,8.3.1,8.4.2,13.1.1,13.2.4,15.2.5,16.3.3,16.3.4 |
| 180 | Exploiting Incorrectly Configured Access Control Security Levels | 8.2.1,8.2.2,8.2.3,8.2.4,13.2.2,13.3.2,16.3.2 |
| 191 | Read Sensitive Constants Within an Executable | 13.3.1,13.4.7 |
| 207 | Removing Important Client Functionality | 3.1.1,3.4.3,3.4.7,3.6.1,3.7.5 |