Auditoría de código de una aplicación con la herramienta de HP Fortify
Enviado por Transformando México • 6 de Enero de 2020 • Ensayo • 3.073 Palabras (13 Páginas) • 1.024 Visitas
Trabajo: Auditoría de código de una aplicación con la herramienta de HP Fortify
Materia: Seguridad en el software
Nombre Alumno: Victor Andres Frias Benitez
Nombre Maestra: Rosa Barba Varela
UNIR México[pic 1]
Fecha: 26 de agosto de 2019
Contenido
Vulnerabilidades 3
1. Contraseña codificada 4
= Explicación del código = 4
= Grafica = 5
= Posible solución = 5
2. Configuración incorrecta de Spring Boot: Actuator Endpoint Security Disabled 6
= Explicación del código = 6
= Grafica = 7
= Posible solución = 7
3. Manipulación de encabezado: SMTP 7
= Explicación del código = 7
= Grafica = 8
= Posible solución = 9
4. Evaluación dinámica de código: deserialización insegura 9
= Explicación del código = 9
= Grafica = 10
= Posible solución = 10
5. Gestión de claves: clave de cifrado codificada 11
= Explicación del código = 11
= Grafica = 12
= Posible solución = 12
6. Gestión de contraseñas: contraseña vacía 12
= Explicación del código = 12
= Grafica = 13
= Posible solución = 14
7. Credenciales de una tienda Android WebView 14
= Explicación del código = 14
= Grafica = 15
= Posible solución = 15
8. Conectarse a una base de datos con una contraseña vacía. 15
= Explicación del código = 15
= Grafica = 16
= Posible solución = 16
9. Usuario y contraseña codificados para configurar la autenticación 16
= Explicación del código = 17
= Grafica = 17
= Posible solución = 17
10. Almacenamiento de cache 18
= Explicación del código = 18
= Grafica = 18
= Posible solución = 18
Vulnerabilidades
En esta sección se describirán las vulnerabilidades críticas que fueron escaneadas con la herramienta HP Fortify SCA la cual es la encargada de reducir los riesgos del software identificando las vulnerabilidades de seguridad que representan las mayores amenazas para su organización. Determina la causa raíz de la vulnerabilidad, correlaciona y prioriza los resultados y proporciona prácticas recomendadas para que los desarrolladores puedan crear el código de una forma más segura.
Contraseña codificada
Las contraseñas codificadas pueden comprometer la seguridad del sistema de una manera que no se puede remediar fácilmente.
= Explicación del código =
Este código se ejecutará con éxito, pero cualquiera que tenga acceso a él tendrá acceso a la contraseña. Después de que el programa se haya enviado, es probable que no haya forma de cambiar el usuario de la base de datos "scott" con una contraseña de "tigre" a menos que el programa esté parcheado. Un empleado con acceso a esta información puede usarla para ingresar al sistema. Peor aún, si los atacantes tienen acceso al código de bytes de la aplicación, pueden usar el comando javap -c para acceder al código desensamblado, que contendrá los valores de las contraseñas utilizadas. El resultado de esta operación podría ser similar al siguiente para el ejemplo anterior:
javap -c ConnMngr.class
22: ldc #36; //String jdbc:mysql://ixne.com/rxsql
24: ldc #38; //String scott
26: ldc #17; //String tiger
En el entorno móvil, la administración de contraseñas es especialmente importante dado que existe un nivel tan alto posibilidad de pérdida de dispositivo.
= Grafica = [pic 2]
= Posible solución =
Las contraseñas nunca deben estar codificadas y generalmente deben ofuscarse y administrarse en una fuente externa. El almacenamiento de contraseñas en texto sin formato en cualquier parte del sistema permite a cualquier persona con permisos suficientes leer y potencialmente usar mal la contraseña. Como mínimo, las contraseñas se deben cifrar antes de almacenarlas.
...