2. Nociones y terminología.................................................................................... 10
2.1.
Introducción al lenguaje de redes y TCP/IP. ............................................. 10
2.2. Nociones de seguridad. .............................................................................. 12
Clasificación de los ataques............................................................... 12
Fases de un ataque. ............................................................................ 14
Niveles de seguridad.......................................................................... 16
La política de seguridad..................................................................... 17
Adquisición de información............................................................... 18
Técnicas de explotación más comunes: los “buffer overflow”.......... 21
Contramedidas de seguridad.............................................................. 25
2.2.1.
2.2.2.
2.2.3.
2.2.4.
2.2.5.
2.2.6.
2.2.7.
iii
3. Ataques comunes en la WWW. ......................................................................... 27
Contenido
3.1.
Inyección de sentencias SQL..................................................................... 27
Fundamento. ...................................................................................... 27
Algunos ejemplos de explotación. ..................................................... 30
Solución. ............................................................................................ 32
3.1.1.
3.1.2.
3.1.3.
3.2. Cross Site Scripting (XSS). ....................................................................... 34
Fundamentos...................................................................................... 34
Ejemplos de cadenas peligrosas que pueden ser inyectadas.............. 37
Solución. ............................................................................................ 38
3.2.1.
3.2.2.
3.2.3.
3.3. Vulnerabilidades en scripts CGI escritos en Perl....................................... 39
“Poison NULL byte”. ........................................................................ 39
Ejecución de comandos con “|”. ........................................................ 41
3.3.1.
3.3.2.
3.4. Abuso de “register_globals” en PHP. ........................................................ 42
3.5. Directory Traversal. ................................................................................... 43
3.6. Metacaracteres del shell............................................................................. 46
3.7. Vulnerabilidades en el servidor web Apache. ........................................... 47
3.8.
Las diez vulnerabilidades más comunes.................................................... 50
3. Análisis de seguridad. ........................................................................................ 66
3.1. Análisis de seguridad del servidor MySQL y bases de datos asociadas.... 67
Vulnerabilidades encontradas. ........................................................... 67
Detalle de vulnerabilidades, soluciones propuestas y recomendac. .. 67
Ausencia de permisos y usuarios en la base de datos. ................... 67
El servidor MySQL es visible desde otras máquinas de la LAN... 68
Conclusiones...................................................................................... 68
3.1.1.
3.1.2.
3.1.2.1.
3.1.2.2.
3.1.3.
iv
Contenido
3.2. Análisis de seguridad de la Aplicación propiamente dicha. ...................... 68
Vulnerabilidades encontradas. ........................................................... 69
Detalle de vulnerabilidades, soluciones propuestas y recomendac. .. 69
Validación de entrada de usuario insuficiente. .............................. 69
Susceptibilidad a ataques de inyección SQL. ................................ 71
Contraseñas de alumnos débiles en el servicio de “encuesta”....... 72
Revelación de información sensible a través de ficheros.. ............ 73
Posible inyección de etiquetas HTML y JavaScript. ..................... 74
Falsa sensación de seguridad en la herramienta de admin............. 75
Conclusiones...................................................................................... 76
3.3. Análisis de seguridad de los servidores web. ............................................ 77
Vulnerabilidades encontradas en “apache”........................................ 78
Detalle de vulnerabilidades, soluciones propuestas y recomendac. .. 79
Versiones de software servidor Apache y PHP anticuadas. .......... 79
Servicio SSH anticuado. ................................................................ 79
Apache permite listar directorios web sin “index”. ....................... 79
Servicios innecesarios en “apache”. .............................................. 81
Conclusiones...................................................................................... 82
Política de seguridad en bases de datos y servidor MySQL. ..................... 86
3.1.1.
Justificación. ...................................................................................... 86
3.1.2. Modelo propuesto. ............................................................................. 86
3.1.3.
Implementación. ................................................................................ 88
3.1.4. Mejoras conseguidas.......................................................................... 89
3.2.
Sistema de usuarios y autentificación........................................................ 89
Justificación. ...................................................................................... 90
3.2.1.
3.2.2.
Criterios de diseño. ............................................................................ 90
3.2.3. Modelo propuesto. ............................................................................. 91
3.2.4.
El problema de la integridad de la autentificación. ........................... 93
Autentificación basada en Apache................................................. 93
3.2.4.1.
Autentificación basada en Apache con módulo acceso MySQL... 94
3.2.4.2.
3.2.4.3.
Autentificación basada únicamente en código PHP. ..................... 96
v
Contenido
3.2.5.
3.2.6.
3.2.7.
3.2.7.1.
3.2.7.2.
El problema de la “caché” de datos de usuario..........
Links de descarga
http://lwp-l.com/pdf7051
Comentarios de: Análisis de seguridad, optimización y mejora de un portal web basado en PHP y MySQL (0)
Comentarios de: Análisis de seguridad, optimización y mejora de un portal web basado en PHP y MySQL (0)
No hay comentarios