Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Web Hacking
Agenda
Agenda (Cont.)
1
Ethical Hacker Security Training – Web Hacking
Generalidades
2
Ethical Hacker Security Training – Web Hacking
3
Ethical Hacker Security Training – Web Hacking
Vulnerabilidades en IIS
4
Ethical Hacker Security Training – Web Hacking
Exploits Unicode
Los caracteres ASCII de los puntos son reemplazados por su
equivalente Unicode (%2E).
Los caracteres ASCII de las barras slash son reemplazados por
su equivalente Unicode (%c0%af).
Unicode 2.0 permite múltiples códigos posibles para cada
caracter.
Unicode para "/": 2f, c0af, e080af, f08080af, f8808080af, .....
Unicode se puede utilizar con fines maliciosos para pasar los
filtros que solo verifican Unicode corto.
GET/scripts/..%c0%af../winnt/system32/cmd.exe?/c+dir=c:\ HTTP/1.0
5
Ethical Hacker Security Training – Web Hacking
6
Ethical Hacker Security Training – Web Hacking
7
Ethical Hacker Security Training – Web Hacking
Esto implica:
Escoger, verificar, testear y aplicar los parches.
Actualizar los parches aplicados previamente con nuevos parches.
Listar los parches que fueron previamente instalados en un software
específico.
Asignar y desplegar los parches aplicados.
Microsoft
Baseline Security
Analyzer (MBSA)
determina el
estado de
seguridad de uno
o varios equipos,
basándose en las
recomendacione
s de seguridad
de Microsoft.
1. Parches y actualizaciones
Ejecutar la utilidad MBSA en un intervalo regular para verificar el
estado de las últimas actualizaciones.
2. Auditorías y Logs
Habilitar para que se guarden en los logs los intentos de login
fallidos.
Relocalizar y asegurar los archivos de logs del servidor web.
3. IISLockdown
Ejecutar IISLockdown y URLScan para asegurar los servidores
web.
Sitios y Directorios Virtuales.
8
Ethical Hacker Security Training – Web Hacking
4. Servicios
Deshabilitar servicios del sistema innecesarios.
Correr los servicios esenciales con el menor privilegio.
5. Mapeo de Scripts
En el caso del IIS, las extensiones que no son utilizadas por
las aplicaciones deben ser mapeadas a 404.dll (.idq, .htw, .ida,
.shtml, .shtm, .stm, idc, .htr, .printer).
6. Protocolos
Deshabilitar WebDAV.
Deshabilitar NetBIOS y SMB (Bloquear los puertos 137, 138,
139, y 445).
7. Filtros ISAPI
Eliminar los filtros ISAPI que no se utilizan.
8. Cuentas
Eliminar las cuentas que no se utilizan.
Deshabilitar el usuario guest.
Renombrar la cuenta de Administrador.
Deshabilitar las conexiones de usuarios null.
Habilitar el administrador para que haga el login de manera
local.
9. Metabase de IIS
El acceso a la metabase debe ser restringido mediante permisos
NTFS.
9
Ethical Hacker Security Training – Web Hacking
13. Puertos
Restringir las aplicaciones Web para que solo utilicen el puerto
80 y el 443.
Contramedidas
Contramedidas (Cont.)
IISLockdown:
IISLockdown restringe el acceso anónimo a las herramientas del
sistema, así como la capacidad de escribir los directorios vía Web.
Deshabilitar WebDAV.
Instalar el filtro ISAPI URLScan.
URLScan:
Es una herramienta de seguridad que recibe todas las solicitudes hacia
el servidor y las filtra basándose en las reglas que estén fijadas por el
administrador.
10
Ethical Hacker Security Training – Web Hacking
Controles
Perimetrales
FTP
RPC
HTTP(S)
VNC
Web Server Database
31337 Firewall Server
11
Ethical Hacker Security Training – Web Hacking
Por lo tanto, son otro vector de ataque que puede ser utilizado para
explotar y comprometer un sistema.
Anatomía de un Ataque
Cross-site scripting.
SQL injection.
Command injection.
Manipulación de parámetros/formularios.
Cookie/session poisoning.
Buffer overflow.
Directory traversal.
Cookie snooping.
Secuestro de credenciales de autenticación.
Cryptographic interception.
Manipulación de Logs.
Interceptación de mensaje de error.
12
Ethical Hacker Security Training – Web Hacking
Contramedidas
Validación de todos los encabezados, cookies, cadenas de consulta,
campos de los formularios y campos ocultos (todos los parámetros)
contra especificaciones rigurosas.
Implementar una estricta política de seguridad.
Filtrar la salida de los scripts puede mitigar las vulnerabilidades XSS
evitando que estas sean transmitidas a los usuarios.
SQL Injection
13
Ethical Hacker Security Training – Web Hacking
Contramedidas
Verificar las entradas de los usuarios cuando realizan consultas a la
base de datos.
Validar todas las variables que son enviadas a la base de datos.
Command Injection
Contramedidas
Utilizar librerías específicas del lenguaje para evitar problemas como
comandos shell.
Validar los datos para prevenir contenido malicioso.
Estructurar los request para que todos los parámetros sean tratados
como datos, en lugar de potenciales ejecutables.
Los entornos J2EE permiten el uso de “sandbox” , que previenen la
ejecución de comandos del sistema.
14
Ethical Hacker Security Training – Web Hacking
Cookie/Session Poisoning
Contramedidas
No almacenar en una cookie contraseñas en texto plano o pobremente
encriptadas.
Implementar un timeout para las cookies.
Las credenciales de autenticación de una cookie deben estar
asociadas a una dirección IP.
Proporcionar funciones de salida.
Manipulación de Parámetros/Formularios
Contramedidas
Comprobar la validez de los campos.
15
Ethical Hacker Security Training – Web Hacking
Buffer Overflow
Contramedidas
Validar la longitud de los datos ingresados en los formularios.
Mantener un cuidado especial cuando se utilizan los bucles for y while
para copiar datos.
StackGuard y StackShield para Linux son herramientas para defender
programas y sistemas contra estos ataques.
Directory Traversal
16
Ethical Hacker Security Training – Web Hacking
Contramedidas
Definir permisos de acceso para proteger las diferentes áreas del sitio
web.
Aplicar parches/actualizaciones para prevenir la explotación
vulnerabilidades como Unicode, afectadas por directory traversal.
Los servidores web deben ser constantemente actualizados.
Cookie Snooping/Poisoning
Contramedidas
Deben ser utilizados cookies encriptados.
Embeber la dirección IP de origen en la cookie.
El mecanismo de cookie puede ser integrado con SSL para asegurar el
acceso remoto a aplicaciones web.
17
Ethical Hacker Security Training – Web Hacking
Contramedidas
Siempre que sea posible implementar métodos de autenticación que
utilicen canales seguros.
SSL puede ser configurado de manera simple para encriptar todo el
tráfico entre el cliente y la aplicación.
Utilizar cookies de manera segura cuando sea posible.
18
Ethical Hacker Security Training – Web Hacking
Google Hacking
19
Ethical Hacker Security Training – Web Hacking
20
Ethical Hacker Security Training – Web Hacking
21
Ethical Hacker Security Training – Web Hacking
22
Ethical Hacker Security Training – Web Hacking
Web Hacking
Links, Referencias y
Lecturas Complementarias
Links
Zone-H - http://www.zone-h.org/
Metasploit - http://www.metasploit.org
Saint - http://www.saintcorporation.com/
Canvas - http://www.immunitysec.com
Core Impact - http://www.coresecurity.com/
MBSA -http://www.microsoft.com/technet/security/tools/mbsahome.mspx
Wget - http://www.gnu.org/software/wget/
WebSleuth - http://sandsprite.com/Sleuth/
BlackWidow - http://softbytelabs.com/us/bw/
WSDigger - http://www.foundstone.com/us/resources/proddesc/wsdigger.htm
Burp - http://portswigger.net/proxy/
Nikto - http://www.cirt.net/nikto2
Paros Proxy - http://www.parosproxy.org/index.shtml
Acunetix - http://www.acunetix.com/
Google Hacks - http://johnny.ihackstuff.com
Links (Cont.)
Webcracker - http://www.securityfocus.com/tools/706
THC Hydra - http://freeworld.thc.org/thc-hydra/
23
Ethical Hacker Security Training – Web Hacking
Web Hacking
Preguntas?
24