Using Components with Known Vulnerabilities
El desarrollo de aplicaciones en muchos casos hace uso de cĂłdigo y dependencias de terceros, lo que implica que los problemas de seguridad que tengan los incluimos en la aplicaciĂłn. Para ello debe analizarse frecuentemente las dependencias de los proyectos y/o productos. Los componentes suelen tener el mismo nivel de privilegios que el Producto, por lo que sus vulnerabilidades pueden tener gran impacto.
Riesgo de la vulnerabilidad
Puertas traseras que permitan el acceso al Producto o sus datos.
EjecuciĂłn de cĂłdigo remoto.
Escalada de privilegios.
UtilizaciĂłn malintencionada del Producto.
Â
CĂłdigo vulnerable 1:
[...]
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.42</version>
</dependency>
[...] |
SoluciĂłn:
Se deben actualizar la la versión más reciente de la dependencia, comprobando que esta libre de vulnerabilidades. En caso de existir, se tratarán de mitigar.
[...]
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>${mysql.last.secure.version}</version>
</dependency>
[...] |
Referencias:
https://owasp.org/www-project-dependency-check/
https://cheatsheetseries.owasp.org/cheatsheets/Vulnerable_Dependency_Management_Cheat_Sheet.html