SlideShare una empresa de Scribd logo
UNI Encounter 2013
Eibar-Ermua
Pablo Garaizar Sagarminaga
Universidad de Deusto
INTRODUCCIÓN A LAS
VULNERABILIDADES WEB
¿De qué vamos a hablar?
● OWASP Top 10, 2013 (release candidate).
● A1 - Injections
● A2 - Broken Authentication and Session Management
● A3 - Cross-Site Scripting (XSS)
● …
● Cómo aprender seguridad web.
● HTML5 y CSS3: ataques novedosos.
OWASP
The Open Web Application Security Project
https://www.owasp.org/index.php/Main_Page
OWASP Top 10, 2013
(release candidate)
A1 - Injection
SQL, OS, and LDAP injections
https://www.owasp.org/index.php/Top_10_2013-A1
SQL Injection
Ha ido evolucionando mucho con los años
● 1998 rain.forest.puppy, "NT Web Technology Vulnerabilities". Phrack Magazine Vol.
8, Issue 54.
● 1999 rain forest puppy, "How I Hacked PacketStorm. A look at hacking wwwthreads
via SQL". Advisory RFP2K01, rfp.labs.
● 2001 David Litchfield, "Web Application Disassembly with ODBC Error Messages",
NGS Software.
● 2002 Chrish Anley, "Advanced SQL Injection", "(more) Advanced SQL Injection",
NGS Software.
● 2002 Cesar Cerrudo, "Manipulating Microsoft SQL Server using SQL Injection".
Application Security.
● 2003 Kevin Spett, "Blind SQL Injection", Spi Dynamics.
● 2003 Ofer Maor, Amichai Shulman, "Blindfolded SQL Injection", Imperva.
SQL Injection
Ha ido evolucionando mucho con los años
● 2004 Ofer Maor, Amichai Shulman, "SQL Injection Signatures Evasion", Imperva.
● 2004 Cameron Hotchkies, "Blind SQL Injection Automation Techniques", BlackHat
Conferences.
● 2005 David Litchfield, "Data-mining with SQL Injection and Inference", NGS Software.
● 2007 David Litchfield, "Cursor Injection", NGS Software.
● 2008 David Litchfield, "Lateral SQL Injection: A new Class of Vulnerability in Oracle", NGS
Software.
● 2008 Chema Alonso, José Parada. "Time-Based Blind SQL Injection using heavy queries: A
practical approach for MS SQL Server, MS Access, Oracle and MySQL databases and
Marathon Tool". Informática64, Microsoft.
● 2009 Daniel Kachakil, "Select for XML SQL Injection. Fast data extraction using SQL
injection and XML statements", (dani@kachakil.com)
● ...
SQL Injection
Por una comilla de nada...
sql = "SELECT * FROM users WHERE user = '" + userName + "';";
userName -> ' or '1'='1
SELECT * FROM users WHERE user = '' OR '1'='1';
userName -> ';DROP TABLE users;--
SELECT * FROM users WHERE user = '';DROP TABLE users;--'
userName -> ';SELECT * FROM data WHERE name LIKE '%
SELECT * FROM users WHERE user = '';SELECT * FROM data WHERE name
LIKE '%';
SQL Injection
Por una comilla de nada...
http://es.xkcd.com/strips/exploits-de-una-madre/
DEMO
phpBB2 modificado
SQL Injection
Campos sin comillas (numéricos):
sql = "SELECT * FROM users WHERE id = " + userID + ";";
userID -> 1 OR 1=1
SELECT * FROM users WHERE id = 1 OR 1=1;
userID -> 1;DROP TABLE users
SELECT * FROM users WHERE id = 1;DROP TABLE users;
userID -> 1; SELECT * FROM data WHERE name LIKE '%'
SELECT * FROM users WHERE id = 1;SELECT * FROM data WHERE name
LIKE '%';
SQL Injection
A veces no se sabe el número de campos en la tabla: usamos mensajes de error
sql = "SELECT * FROM users WHERE user = " + userName + ";";
userName -> ' HAVING 1=1--
SELECT * FROM users WHERE user = '' HAVING 1=1--';
userName -> ' GROUP BY campo1 HAVING 1=1--
SELECT * FROM users WHERE user = '' GROUP BY campo1 HAVING 1=1--';
userName -> ' GROUP BY campo1, campo2 HAVING 1=1--
SELECT * FROM users WHERE user = '' GROUP BY campo1, campo2 HAVING
1=1--';
SQL Injection
Si no hay mensajes de error, Blind SQL Injection
● Si no hay error, se muestra la página normal.
● http://myblog.com/post.asp?id=33 AND 1=1
● SELECT * FROM posts WHERE id = 33 AND 1=1
● Si hay error, se muestra otra página.
● http://myblog.com/post.asp?id=33 AND 1=0
● SELECT * FROM posts WHERE id = 33 AND 1=0
● Google Hacking:
– inurl:"php?id="
– inurl:"asp?id="
DEMO
Reto hacking de El lado del mal
SQL Injection
Blind SQL Injection, herramientas
● SQLbfTools:
– http://www.reversing.org/node/view/11
● ./mysqlbf.exe "http://web/vulnerable.php?ID=3" "now()"
"word"
● SQL Ninja:
– http://sqlninja.sourceforge.net/sqlninjademo1.html
● Absinthe:
– http://www.0x90.org/releases/absinthe/download.php
SQL Injection
Para practicar, retos hacking de El lado del mal (Informatica64)
● Reto 1:
– http://www.informatica64.com/retohacking
● Reto 2:
– http://retohacking2.elladodelmal.com
● Reto 3:
– http://retohacking3.elladodelmal.com
● Reto 4:
– http://retohacking4.elladodelmal.com
● ...
A2 - Broken Authentication and Session Management
Compromise passwords, keys, session tokens, etc.
https://www.owasp.org/index.php/Top_10_2013-A2
DEMO
Autenticación con Flash o Java local
A3 - Cross-Site Scripting (XSS)
Allows attackers to execute scripts in the victim’s browser
https://www.owasp.org/index.php/Top_10_2013-A3
Cross-Site Scripting (XSS)
Diferentes tipos y alcances
● Tipo 0: Basado en DOM.
– Una página maliciosa abre una página local con permisos de Zona
Local y ejecuta código con esas credenciales.
– Típicamente en phising o SPAM.
● Tipo 1: No persistente.
– El más común, necesita Ingeniería Social para explotarse.
– Típicamente en webs de búsquedas, se muestra a su vez la cadena
consultada (si tiene código, será ejecutado).
● Tipo 2: Persistente.
– El código está almacenado en una BD, fichero, o similar.
– No requiere mucha Ingeniería Social para que la víctima lo ejecute.
– Típicamente en foros o similares.
Cross-Site Scripting (XSS)
Técnicas de evasión de filtros
● Evitar espacios.
● Listas negras de tags:
– <scr<script>ipt>
● Codificación alternativa:
– <IMG
SRC=&#0000106&#0000097&#0000118&#0000097&#0000115...>
● Strings con caracteres nulos:
– perl -e 'print "<SCR0IPT>alert("XSS")</SCR0IPT>";' >
out
● XSS en Flash:
– <EMBED SRC="http://ha.ckers.org/xss.swf"
AllowScriptAccess="always"></EMBED>
DEMO
phpBB2 modificado
A4 - Insecure Direct Object References
References to an internal implementation object, such as a file, directory, or database key
https://www.owasp.org/index.php/Top_10_2013-A4
DEMO
RFI en PHP
A5 - Security Misconfiguration
Keeping all software up to date
https://www.owasp.org/index.php/Top_10_2013-A5
The Exploit Database
Búsqueda de avisos + exploits ordenados por temas y fechas
http://www.exploit-db.com/
A6 - Sensitive Data Exposure
Sensitive data deserves extra protection such as encryption
https://www.owasp.org/index.php/Top_10_2013-A6
Seguridad a través de la oscuridad
robots.txt
http://www.casareal.es/robots.txt
User-agent: *
Disallow:
Disallow: /_*/
Disallow: /ES/FamiliaReal/Urdangarin/
Disallow: /CA/FamiliaReal/Urdangarin/
Disallow: /EU/FamiliaReal/Urdangarin/
Disallow: /GL/FamiliaReal/Urdangarin/
Disallow: /VA/FamiliaReal/Urdangarin/
Disallow: /EN/FamiliaReal/Urdangarin/
Sitemap: http://www.casareal.es/sitemap.xml
Seguridad a través de la oscuridad
Meta-datos: Fear the FOCA!
http://www.informatica64.com/foca.aspx
A7 - Missing Function Level Access Control
Attackers are able to forge requests in order to access unauthorized functionality
https://www.owasp.org/index.php/Top_10_2013-A7
DEMO
Cron en Moodle
Proteger el cron en Moodle
Similar para v1.9, 2.x, etc.
http://docs.moodle.org/19/en/Cron
A8 - Cross-Site Request Forgery (CSRF)
Forces a logged-on victim’s browser to send a forged HTTP request
https://www.owasp.org/index.php/Top_10_2013-A8
Cross-Site Request Forgery (CSRF)
XSRF o "sea-surf"
● Explota la confianza que tiene un sitio en el
navegador de un cliente autenticado.
– El servidor: acepta las credenciales de la sesión de
usuario almacenada en el navegador.
– El cliente: accede a una web que fuerza a su
navegador a realizar acciones no deseadas en un sitio
en el que previamente se ha autenticado.
● Contramedida: tokens específicos en cada
formulario.
DEMO
phpBB2 modificado
A9 - Using Components with Known Vulnerabilities
Vulnerable components, such as libraries, frameworks, and other software modules
https://www.owasp.org/index.php/Top_10_2013-A9
The Exploit Database
Búsqueda de avisos + exploits ordenados por temas y fechas
http://www.exploit-db.com/
A10 - Unvalidated Redirects and Forwards
Attackers can redirect victims to phishing or malware sites
https://www.owasp.org/index.php/Top_10_2013-A10
Ataques de redirección
PoCs: IE/Firefox Redirection Issue – FB Oauth2 Bypass – BugCrowd
http://soroush.secproject.com/blog/2013/03/iefirefox-redirection-issue-fb-oauth2-bypass-bugcrowd/
Cómo aprender seguridad web
sin acabar en la cárcel ;-)
OWASP WebGoat
Aplicación J2EE preparada para ser atacada
https://www.owasp.org/index.php/Category:OWASP_WebGoat_Project
SEED (Weliang Du)
Developing Instructional Laboratories for Computer SEcurity EDucation
http://www.cis.syr.edu/~wedu/seed/
p0wnlabs
Laboratorios para experimentar, de pago, aunque hay gratuitos
http://p0wnlabs.com/free
Hacking-Lab
Laboratorio online para aprender (conexión por VPN)
https://www.hacking-lab.com/
HTML5 y CSS3
ataques novedosos
http://www.slideshare.net/x00mario/stealing-the-pie
“All user input is evil until proven otherwise”
Ken Cox
Muchas gracias ;-)
and... happy hacking!
Referencias
● OWASP: The Open Web Application Security Project.
● El lado del mal, retos hacking, por Chema Alonso.
● Fear the FOCA! Informática64.
● IE/Firefox Redirection Issue – FB Oauth2 Bypass – BugCrowd, por
Soroush Dalili.
● Scriptless Attacks: Stealing the pie without touching the sill, por Mario
Heiderich, Felix Schuster y Marcus Niemietz.
● The Exploit Database.
● Wikipedia.
Todas las imágenes son propiedad de
sus respectivos dueños, el resto del
contenido está licenciado bajo
Creative Commons by-sa 3.0

Más contenido relacionado

Similar a Introducción a las vulnerabilidades web

La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidadesLa Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
Nextel S.A.
 
Inyecciones sql para todos
Inyecciones sql para todosInyecciones sql para todos
Inyecciones sql para todoscsaralg
 
Presentación Workshop php Barcelona Seguridad
Presentación Workshop php Barcelona SeguridadPresentación Workshop php Barcelona Seguridad
Presentación Workshop php Barcelona Seguridad
guestbfa74a
 
PyGoat Analizando la seguridad en aplicaciones Django.pdf
PyGoat Analizando la seguridad en aplicaciones Django.pdfPyGoat Analizando la seguridad en aplicaciones Django.pdf
PyGoat Analizando la seguridad en aplicaciones Django.pdf
Jose Manuel Ortega Candel
 
Lord Epsylon - XSSer: the cross site scripting framework [RootedCON 2012]
Lord Epsylon - XSSer: the cross site scripting framework [RootedCON 2012]Lord Epsylon - XSSer: the cross site scripting framework [RootedCON 2012]
Lord Epsylon - XSSer: the cross site scripting framework [RootedCON 2012]
RootedCON
 
Ponencia sql avanzado y automatizado
Ponencia sql avanzado y automatizadoPonencia sql avanzado y automatizado
Ponencia sql avanzado y automatizadon3xasec
 
HerramientasExplotacion-GRUPO5.pptx
HerramientasExplotacion-GRUPO5.pptxHerramientasExplotacion-GRUPO5.pptx
HerramientasExplotacion-GRUPO5.pptx
JhoseC1
 
Desarrollo seguro en NodeJS (OWASP top ten y JWT)
Desarrollo seguro en NodeJS (OWASP top ten y JWT)Desarrollo seguro en NodeJS (OWASP top ten y JWT)
Desarrollo seguro en NodeJS (OWASP top ten y JWT)
Raúl Requero García
 
Seguridad en Servidores Dedicados
Seguridad en Servidores DedicadosSeguridad en Servidores Dedicados
Seguridad en Servidores Dedicados
Nominalia
 
Elías Grande & Jorge Nuñez - Medusa, El nacimiento de los ICS [rooted2019]
Elías Grande & Jorge Nuñez - Medusa, El nacimiento de los ICS [rooted2019]Elías Grande & Jorge Nuñez - Medusa, El nacimiento de los ICS [rooted2019]
Elías Grande & Jorge Nuñez - Medusa, El nacimiento de los ICS [rooted2019]
RootedCON
 
Actividad No. 1.11: SQL Injection con sqlmap en Kali Linux
Actividad No. 1.11: SQL Injection con sqlmap en Kali LinuxActividad No. 1.11: SQL Injection con sqlmap en Kali Linux
Actividad No. 1.11: SQL Injection con sqlmap en Kali Linux
Francisco Medina
 
Pentesting 101 por Paulino Calderon
Pentesting 101 por Paulino CalderonPentesting 101 por Paulino Calderon
Pentesting 101 por Paulino Calderon
Websec México, S.C.
 
Cómo realizar un test de intrusión a una aplicación Web
Cómo realizar un test de intrusión a una aplicación WebCómo realizar un test de intrusión a una aplicación Web
Cómo realizar un test de intrusión a una aplicación Web
Eduardo Jalon
 
Charla OWASP
Charla OWASPCharla OWASP
Charla OWASP
alexav8
 
Mejores prácticas desarrollo de base de datos
Mejores prácticas desarrollo de base de datos Mejores prácticas desarrollo de base de datos
Mejores prácticas desarrollo de base de datos
Eduardo Castro
 
Lecciones aprendidas creando una red social
Lecciones aprendidas creando una red socialLecciones aprendidas creando una red social
Lecciones aprendidas creando una red social
Roberto Luis Bisbé
 
Javier Saez - Una panorámica sobre la seguridad en entornos web [rootedvlc2]
Javier Saez - Una panorámica sobre la seguridad en entornos web [rootedvlc2]Javier Saez - Una panorámica sobre la seguridad en entornos web [rootedvlc2]
Javier Saez - Una panorámica sobre la seguridad en entornos web [rootedvlc2]
RootedCON
 
Tu banca móvil, en forma simple y ¿segura? Estado de la seguridad en apps móv...
Tu banca móvil, en forma simple y ¿segura? Estado de la seguridad en apps móv...Tu banca móvil, en forma simple y ¿segura? Estado de la seguridad en apps móv...
Tu banca móvil, en forma simple y ¿segura? Estado de la seguridad en apps móv...
Cristián Rojas, MSc., CSSLP
 
Seguridad
SeguridadSeguridad
Seguridad
VLASLOV
 
Seguridad WEB - Principios básicos.
Seguridad WEB - Principios básicos.Seguridad WEB - Principios básicos.
Seguridad WEB - Principios básicos.
Oscar Javier Gentilezza Arenas
 

Similar a Introducción a las vulnerabilidades web (20)

La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidadesLa Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
La Web como plataforma de referencia: viejos ataques y nuevas vulnerabilidades
 
Inyecciones sql para todos
Inyecciones sql para todosInyecciones sql para todos
Inyecciones sql para todos
 
Presentación Workshop php Barcelona Seguridad
Presentación Workshop php Barcelona SeguridadPresentación Workshop php Barcelona Seguridad
Presentación Workshop php Barcelona Seguridad
 
PyGoat Analizando la seguridad en aplicaciones Django.pdf
PyGoat Analizando la seguridad en aplicaciones Django.pdfPyGoat Analizando la seguridad en aplicaciones Django.pdf
PyGoat Analizando la seguridad en aplicaciones Django.pdf
 
Lord Epsylon - XSSer: the cross site scripting framework [RootedCON 2012]
Lord Epsylon - XSSer: the cross site scripting framework [RootedCON 2012]Lord Epsylon - XSSer: the cross site scripting framework [RootedCON 2012]
Lord Epsylon - XSSer: the cross site scripting framework [RootedCON 2012]
 
Ponencia sql avanzado y automatizado
Ponencia sql avanzado y automatizadoPonencia sql avanzado y automatizado
Ponencia sql avanzado y automatizado
 
HerramientasExplotacion-GRUPO5.pptx
HerramientasExplotacion-GRUPO5.pptxHerramientasExplotacion-GRUPO5.pptx
HerramientasExplotacion-GRUPO5.pptx
 
Desarrollo seguro en NodeJS (OWASP top ten y JWT)
Desarrollo seguro en NodeJS (OWASP top ten y JWT)Desarrollo seguro en NodeJS (OWASP top ten y JWT)
Desarrollo seguro en NodeJS (OWASP top ten y JWT)
 
Seguridad en Servidores Dedicados
Seguridad en Servidores DedicadosSeguridad en Servidores Dedicados
Seguridad en Servidores Dedicados
 
Elías Grande & Jorge Nuñez - Medusa, El nacimiento de los ICS [rooted2019]
Elías Grande & Jorge Nuñez - Medusa, El nacimiento de los ICS [rooted2019]Elías Grande & Jorge Nuñez - Medusa, El nacimiento de los ICS [rooted2019]
Elías Grande & Jorge Nuñez - Medusa, El nacimiento de los ICS [rooted2019]
 
Actividad No. 1.11: SQL Injection con sqlmap en Kali Linux
Actividad No. 1.11: SQL Injection con sqlmap en Kali LinuxActividad No. 1.11: SQL Injection con sqlmap en Kali Linux
Actividad No. 1.11: SQL Injection con sqlmap en Kali Linux
 
Pentesting 101 por Paulino Calderon
Pentesting 101 por Paulino CalderonPentesting 101 por Paulino Calderon
Pentesting 101 por Paulino Calderon
 
Cómo realizar un test de intrusión a una aplicación Web
Cómo realizar un test de intrusión a una aplicación WebCómo realizar un test de intrusión a una aplicación Web
Cómo realizar un test de intrusión a una aplicación Web
 
Charla OWASP
Charla OWASPCharla OWASP
Charla OWASP
 
Mejores prácticas desarrollo de base de datos
Mejores prácticas desarrollo de base de datos Mejores prácticas desarrollo de base de datos
Mejores prácticas desarrollo de base de datos
 
Lecciones aprendidas creando una red social
Lecciones aprendidas creando una red socialLecciones aprendidas creando una red social
Lecciones aprendidas creando una red social
 
Javier Saez - Una panorámica sobre la seguridad en entornos web [rootedvlc2]
Javier Saez - Una panorámica sobre la seguridad en entornos web [rootedvlc2]Javier Saez - Una panorámica sobre la seguridad en entornos web [rootedvlc2]
Javier Saez - Una panorámica sobre la seguridad en entornos web [rootedvlc2]
 
Tu banca móvil, en forma simple y ¿segura? Estado de la seguridad en apps móv...
Tu banca móvil, en forma simple y ¿segura? Estado de la seguridad en apps móv...Tu banca móvil, en forma simple y ¿segura? Estado de la seguridad en apps móv...
Tu banca móvil, en forma simple y ¿segura? Estado de la seguridad en apps móv...
 
Seguridad
SeguridadSeguridad
Seguridad
 
Seguridad WEB - Principios básicos.
Seguridad WEB - Principios básicos.Seguridad WEB - Principios básicos.
Seguridad WEB - Principios básicos.
 

Más de Pablo Garaizar

De la robótica educativa al pensamiento computacional
De la robótica educativa al pensamiento computacionalDe la robótica educativa al pensamiento computacional
De la robótica educativa al pensamiento computacional
Pablo Garaizar
 
¿Cómo se crea una experiencia lúdica?
¿Cómo se crea una experiencia lúdica?¿Cómo se crea una experiencia lúdica?
¿Cómo se crea una experiencia lúdica?
Pablo Garaizar
 
Luces y sombras en el uso de la tecnología en clase
Luces y sombras en el uso de la tecnología en claseLuces y sombras en el uso de la tecnología en clase
Luces y sombras en el uso de la tecnología en clase
Pablo Garaizar
 
Aspectos psicológicos en el diseño de juegos de mesa
Aspectos psicológicos en el diseño de juegos de mesaAspectos psicológicos en el diseño de juegos de mesa
Aspectos psicológicos en el diseño de juegos de mesa
Pablo Garaizar
 
Educación basada en evidencias
Educación basada en evidenciasEducación basada en evidencias
Educación basada en evidencias
Pablo Garaizar
 
Neuromandangas: descubre cómo NO programarás mejor gracias a los últimos avan...
Neuromandangas: descubre cómo NO programarás mejor gracias a los últimos avan...Neuromandangas: descubre cómo NO programarás mejor gracias a los últimos avan...
Neuromandangas: descubre cómo NO programarás mejor gracias a los últimos avan...
Pablo Garaizar
 
Neurobollocks: el nuevo aceite de serpiente
Neurobollocks: el nuevo aceite de serpienteNeurobollocks: el nuevo aceite de serpiente
Neurobollocks: el nuevo aceite de serpiente
Pablo Garaizar
 
Algunas cuestiones psicológicas que nos pueden ayudar a diseñar mejor
Algunas cuestiones psicológicas que nos pueden ayudar a diseñar mejorAlgunas cuestiones psicológicas que nos pueden ayudar a diseñar mejor
Algunas cuestiones psicológicas que nos pueden ayudar a diseñar mejor
Pablo Garaizar
 
Identidad digital y feminismo
Identidad digital y feminismoIdentidad digital y feminismo
Identidad digital y feminismo
Pablo Garaizar
 
Errores comunes en la visualización de datos y algunas soluciones
Errores comunes en la visualización de datos y algunas solucionesErrores comunes en la visualización de datos y algunas soluciones
Errores comunes en la visualización de datos y algunas soluciones
Pablo Garaizar
 
Decisiones tecnológicas, consecuencias ideológicas
Decisiones tecnológicas, consecuencias ideológicasDecisiones tecnológicas, consecuencias ideológicas
Decisiones tecnológicas, consecuencias ideológicas
Pablo Garaizar
 
Etica investigaciontecnologica2013
Etica investigaciontecnologica2013Etica investigaciontecnologica2013
Etica investigaciontecnologica2013Pablo Garaizar
 
Video-games 101: Unleashing the potential of students and teachers to create ...
Video-games 101: Unleashing the potential of students and teachers to create ...Video-games 101: Unleashing the potential of students and teachers to create ...
Video-games 101: Unleashing the potential of students and teachers to create ...
Pablo Garaizar
 
Scratch Eguna: From Scratch Day to Scratch every day
Scratch Eguna: From Scratch Day to Scratch every dayScratch Eguna: From Scratch Day to Scratch every day
Scratch Eguna: From Scratch Day to Scratch every day
Pablo Garaizar
 
Redes sociales en Internet: guía para madres y padres
Redes sociales en Internet: guía para madres y padresRedes sociales en Internet: guía para madres y padres
Redes sociales en Internet: guía para madres y padres
Pablo Garaizar
 
El problema de parada y los castores laboriosos
El problema de parada y los castores laboriososEl problema de parada y los castores laboriosos
El problema de parada y los castores laboriosos
Pablo Garaizar
 
Repaso rápido a los nuevos estándares web
Repaso rápido a los nuevos estándares webRepaso rápido a los nuevos estándares web
Repaso rápido a los nuevos estándares web
Pablo Garaizar
 
Las nuevas API de audio en HTML5
Las nuevas API de audio en HTML5Las nuevas API de audio en HTML5
Las nuevas API de audio en HTML5
Pablo Garaizar
 
El acceso a las TIC y la justicia social
El acceso a las TIC y la justicia socialEl acceso a las TIC y la justicia social
El acceso a las TIC y la justicia social
Pablo Garaizar
 
Aprendizaje y videojuegos
Aprendizaje y videojuegosAprendizaje y videojuegos
Aprendizaje y videojuegos
Pablo Garaizar
 

Más de Pablo Garaizar (20)

De la robótica educativa al pensamiento computacional
De la robótica educativa al pensamiento computacionalDe la robótica educativa al pensamiento computacional
De la robótica educativa al pensamiento computacional
 
¿Cómo se crea una experiencia lúdica?
¿Cómo se crea una experiencia lúdica?¿Cómo se crea una experiencia lúdica?
¿Cómo se crea una experiencia lúdica?
 
Luces y sombras en el uso de la tecnología en clase
Luces y sombras en el uso de la tecnología en claseLuces y sombras en el uso de la tecnología en clase
Luces y sombras en el uso de la tecnología en clase
 
Aspectos psicológicos en el diseño de juegos de mesa
Aspectos psicológicos en el diseño de juegos de mesaAspectos psicológicos en el diseño de juegos de mesa
Aspectos psicológicos en el diseño de juegos de mesa
 
Educación basada en evidencias
Educación basada en evidenciasEducación basada en evidencias
Educación basada en evidencias
 
Neuromandangas: descubre cómo NO programarás mejor gracias a los últimos avan...
Neuromandangas: descubre cómo NO programarás mejor gracias a los últimos avan...Neuromandangas: descubre cómo NO programarás mejor gracias a los últimos avan...
Neuromandangas: descubre cómo NO programarás mejor gracias a los últimos avan...
 
Neurobollocks: el nuevo aceite de serpiente
Neurobollocks: el nuevo aceite de serpienteNeurobollocks: el nuevo aceite de serpiente
Neurobollocks: el nuevo aceite de serpiente
 
Algunas cuestiones psicológicas que nos pueden ayudar a diseñar mejor
Algunas cuestiones psicológicas que nos pueden ayudar a diseñar mejorAlgunas cuestiones psicológicas que nos pueden ayudar a diseñar mejor
Algunas cuestiones psicológicas que nos pueden ayudar a diseñar mejor
 
Identidad digital y feminismo
Identidad digital y feminismoIdentidad digital y feminismo
Identidad digital y feminismo
 
Errores comunes en la visualización de datos y algunas soluciones
Errores comunes en la visualización de datos y algunas solucionesErrores comunes en la visualización de datos y algunas soluciones
Errores comunes en la visualización de datos y algunas soluciones
 
Decisiones tecnológicas, consecuencias ideológicas
Decisiones tecnológicas, consecuencias ideológicasDecisiones tecnológicas, consecuencias ideológicas
Decisiones tecnológicas, consecuencias ideológicas
 
Etica investigaciontecnologica2013
Etica investigaciontecnologica2013Etica investigaciontecnologica2013
Etica investigaciontecnologica2013
 
Video-games 101: Unleashing the potential of students and teachers to create ...
Video-games 101: Unleashing the potential of students and teachers to create ...Video-games 101: Unleashing the potential of students and teachers to create ...
Video-games 101: Unleashing the potential of students and teachers to create ...
 
Scratch Eguna: From Scratch Day to Scratch every day
Scratch Eguna: From Scratch Day to Scratch every dayScratch Eguna: From Scratch Day to Scratch every day
Scratch Eguna: From Scratch Day to Scratch every day
 
Redes sociales en Internet: guía para madres y padres
Redes sociales en Internet: guía para madres y padresRedes sociales en Internet: guía para madres y padres
Redes sociales en Internet: guía para madres y padres
 
El problema de parada y los castores laboriosos
El problema de parada y los castores laboriososEl problema de parada y los castores laboriosos
El problema de parada y los castores laboriosos
 
Repaso rápido a los nuevos estándares web
Repaso rápido a los nuevos estándares webRepaso rápido a los nuevos estándares web
Repaso rápido a los nuevos estándares web
 
Las nuevas API de audio en HTML5
Las nuevas API de audio en HTML5Las nuevas API de audio en HTML5
Las nuevas API de audio en HTML5
 
El acceso a las TIC y la justicia social
El acceso a las TIC y la justicia socialEl acceso a las TIC y la justicia social
El acceso a las TIC y la justicia social
 
Aprendizaje y videojuegos
Aprendizaje y videojuegosAprendizaje y videojuegos
Aprendizaje y videojuegos
 

Último

INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTALINFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
CrystalRomero18
 
Estructuras básicas_ conceptos de programación (1).docx
Estructuras básicas_ conceptos de programación  (1).docxEstructuras básicas_ conceptos de programación  (1).docx
Estructuras básicas_ conceptos de programación (1).docx
SamuelRamirez83524
 
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfDesarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
AlejandraCasallas7
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
vazquezgarciajesusma
 
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdfTrabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
jjfch3110
 
Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5
JulyMuoz18
 
Diagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestreDiagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestre
rafaelsalazar0615
 
trabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6ftrabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6f
zoecaicedosalazar
 
Alan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentaciónAlan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentación
JuanPrez962115
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
cdraco
 
Estructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdfEstructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdf
cristianrb0324
 
Posnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativaPosnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativa
Fernando Villares
 
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
DanielErazoMedina
 
proyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmusproyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmus
raquelariza02
 
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdfTrabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
cj3806354
 
Diagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdfDiagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdf
ManuelCampos464987
 
EduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesEduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clases
PABLOCESARGARZONBENI
 
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Telefónica
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
IsabellaRubio6
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
AlejandraCasallas7
 

Último (20)

INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTALINFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
 
Estructuras básicas_ conceptos de programación (1).docx
Estructuras básicas_ conceptos de programación  (1).docxEstructuras básicas_ conceptos de programación  (1).docx
Estructuras básicas_ conceptos de programación (1).docx
 
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfDesarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
 
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdfTrabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
 
Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5
 
Diagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestreDiagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestre
 
trabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6ftrabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6f
 
Alan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentaciónAlan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentación
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
 
Estructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdfEstructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdf
 
Posnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativaPosnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativa
 
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
 
proyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmusproyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmus
 
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdfTrabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
 
Diagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdfDiagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdf
 
EduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesEduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clases
 
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
 

Introducción a las vulnerabilidades web

  • 1. UNI Encounter 2013 Eibar-Ermua Pablo Garaizar Sagarminaga Universidad de Deusto INTRODUCCIÓN A LAS VULNERABILIDADES WEB
  • 2. ¿De qué vamos a hablar? ● OWASP Top 10, 2013 (release candidate). ● A1 - Injections ● A2 - Broken Authentication and Session Management ● A3 - Cross-Site Scripting (XSS) ● … ● Cómo aprender seguridad web. ● HTML5 y CSS3: ataques novedosos.
  • 3. OWASP The Open Web Application Security Project https://www.owasp.org/index.php/Main_Page
  • 4. OWASP Top 10, 2013 (release candidate)
  • 5. A1 - Injection SQL, OS, and LDAP injections https://www.owasp.org/index.php/Top_10_2013-A1
  • 6. SQL Injection Ha ido evolucionando mucho con los años ● 1998 rain.forest.puppy, "NT Web Technology Vulnerabilities". Phrack Magazine Vol. 8, Issue 54. ● 1999 rain forest puppy, "How I Hacked PacketStorm. A look at hacking wwwthreads via SQL". Advisory RFP2K01, rfp.labs. ● 2001 David Litchfield, "Web Application Disassembly with ODBC Error Messages", NGS Software. ● 2002 Chrish Anley, "Advanced SQL Injection", "(more) Advanced SQL Injection", NGS Software. ● 2002 Cesar Cerrudo, "Manipulating Microsoft SQL Server using SQL Injection". Application Security. ● 2003 Kevin Spett, "Blind SQL Injection", Spi Dynamics. ● 2003 Ofer Maor, Amichai Shulman, "Blindfolded SQL Injection", Imperva.
  • 7. SQL Injection Ha ido evolucionando mucho con los años ● 2004 Ofer Maor, Amichai Shulman, "SQL Injection Signatures Evasion", Imperva. ● 2004 Cameron Hotchkies, "Blind SQL Injection Automation Techniques", BlackHat Conferences. ● 2005 David Litchfield, "Data-mining with SQL Injection and Inference", NGS Software. ● 2007 David Litchfield, "Cursor Injection", NGS Software. ● 2008 David Litchfield, "Lateral SQL Injection: A new Class of Vulnerability in Oracle", NGS Software. ● 2008 Chema Alonso, José Parada. "Time-Based Blind SQL Injection using heavy queries: A practical approach for MS SQL Server, MS Access, Oracle and MySQL databases and Marathon Tool". Informática64, Microsoft. ● 2009 Daniel Kachakil, "Select for XML SQL Injection. Fast data extraction using SQL injection and XML statements", (dani@kachakil.com) ● ...
  • 8. SQL Injection Por una comilla de nada... sql = "SELECT * FROM users WHERE user = '" + userName + "';"; userName -> ' or '1'='1 SELECT * FROM users WHERE user = '' OR '1'='1'; userName -> ';DROP TABLE users;-- SELECT * FROM users WHERE user = '';DROP TABLE users;--' userName -> ';SELECT * FROM data WHERE name LIKE '% SELECT * FROM users WHERE user = '';SELECT * FROM data WHERE name LIKE '%';
  • 9. SQL Injection Por una comilla de nada... http://es.xkcd.com/strips/exploits-de-una-madre/
  • 11. SQL Injection Campos sin comillas (numéricos): sql = "SELECT * FROM users WHERE id = " + userID + ";"; userID -> 1 OR 1=1 SELECT * FROM users WHERE id = 1 OR 1=1; userID -> 1;DROP TABLE users SELECT * FROM users WHERE id = 1;DROP TABLE users; userID -> 1; SELECT * FROM data WHERE name LIKE '%' SELECT * FROM users WHERE id = 1;SELECT * FROM data WHERE name LIKE '%';
  • 12. SQL Injection A veces no se sabe el número de campos en la tabla: usamos mensajes de error sql = "SELECT * FROM users WHERE user = " + userName + ";"; userName -> ' HAVING 1=1-- SELECT * FROM users WHERE user = '' HAVING 1=1--'; userName -> ' GROUP BY campo1 HAVING 1=1-- SELECT * FROM users WHERE user = '' GROUP BY campo1 HAVING 1=1--'; userName -> ' GROUP BY campo1, campo2 HAVING 1=1-- SELECT * FROM users WHERE user = '' GROUP BY campo1, campo2 HAVING 1=1--';
  • 13. SQL Injection Si no hay mensajes de error, Blind SQL Injection ● Si no hay error, se muestra la página normal. ● http://myblog.com/post.asp?id=33 AND 1=1 ● SELECT * FROM posts WHERE id = 33 AND 1=1 ● Si hay error, se muestra otra página. ● http://myblog.com/post.asp?id=33 AND 1=0 ● SELECT * FROM posts WHERE id = 33 AND 1=0 ● Google Hacking: – inurl:"php?id=" – inurl:"asp?id="
  • 14. DEMO Reto hacking de El lado del mal
  • 15. SQL Injection Blind SQL Injection, herramientas ● SQLbfTools: – http://www.reversing.org/node/view/11 ● ./mysqlbf.exe "http://web/vulnerable.php?ID=3" "now()" "word" ● SQL Ninja: – http://sqlninja.sourceforge.net/sqlninjademo1.html ● Absinthe: – http://www.0x90.org/releases/absinthe/download.php
  • 16. SQL Injection Para practicar, retos hacking de El lado del mal (Informatica64) ● Reto 1: – http://www.informatica64.com/retohacking ● Reto 2: – http://retohacking2.elladodelmal.com ● Reto 3: – http://retohacking3.elladodelmal.com ● Reto 4: – http://retohacking4.elladodelmal.com ● ...
  • 17. A2 - Broken Authentication and Session Management Compromise passwords, keys, session tokens, etc. https://www.owasp.org/index.php/Top_10_2013-A2
  • 19. A3 - Cross-Site Scripting (XSS) Allows attackers to execute scripts in the victim’s browser https://www.owasp.org/index.php/Top_10_2013-A3
  • 20. Cross-Site Scripting (XSS) Diferentes tipos y alcances ● Tipo 0: Basado en DOM. – Una página maliciosa abre una página local con permisos de Zona Local y ejecuta código con esas credenciales. – Típicamente en phising o SPAM. ● Tipo 1: No persistente. – El más común, necesita Ingeniería Social para explotarse. – Típicamente en webs de búsquedas, se muestra a su vez la cadena consultada (si tiene código, será ejecutado). ● Tipo 2: Persistente. – El código está almacenado en una BD, fichero, o similar. – No requiere mucha Ingeniería Social para que la víctima lo ejecute. – Típicamente en foros o similares.
  • 21. Cross-Site Scripting (XSS) Técnicas de evasión de filtros ● Evitar espacios. ● Listas negras de tags: – <scr<script>ipt> ● Codificación alternativa: – <IMG SRC=&#0000106&#0000097&#0000118&#0000097&#0000115...> ● Strings con caracteres nulos: – perl -e 'print "<SCR0IPT>alert("XSS")</SCR0IPT>";' > out ● XSS en Flash: – <EMBED SRC="http://ha.ckers.org/xss.swf" AllowScriptAccess="always"></EMBED>
  • 23. A4 - Insecure Direct Object References References to an internal implementation object, such as a file, directory, or database key https://www.owasp.org/index.php/Top_10_2013-A4
  • 25. A5 - Security Misconfiguration Keeping all software up to date https://www.owasp.org/index.php/Top_10_2013-A5
  • 26. The Exploit Database Búsqueda de avisos + exploits ordenados por temas y fechas http://www.exploit-db.com/
  • 27. A6 - Sensitive Data Exposure Sensitive data deserves extra protection such as encryption https://www.owasp.org/index.php/Top_10_2013-A6
  • 28. Seguridad a través de la oscuridad robots.txt http://www.casareal.es/robots.txt User-agent: * Disallow: Disallow: /_*/ Disallow: /ES/FamiliaReal/Urdangarin/ Disallow: /CA/FamiliaReal/Urdangarin/ Disallow: /EU/FamiliaReal/Urdangarin/ Disallow: /GL/FamiliaReal/Urdangarin/ Disallow: /VA/FamiliaReal/Urdangarin/ Disallow: /EN/FamiliaReal/Urdangarin/ Sitemap: http://www.casareal.es/sitemap.xml
  • 29. Seguridad a través de la oscuridad Meta-datos: Fear the FOCA! http://www.informatica64.com/foca.aspx
  • 30. A7 - Missing Function Level Access Control Attackers are able to forge requests in order to access unauthorized functionality https://www.owasp.org/index.php/Top_10_2013-A7
  • 32. Proteger el cron en Moodle Similar para v1.9, 2.x, etc. http://docs.moodle.org/19/en/Cron
  • 33. A8 - Cross-Site Request Forgery (CSRF) Forces a logged-on victim’s browser to send a forged HTTP request https://www.owasp.org/index.php/Top_10_2013-A8
  • 34. Cross-Site Request Forgery (CSRF) XSRF o "sea-surf" ● Explota la confianza que tiene un sitio en el navegador de un cliente autenticado. – El servidor: acepta las credenciales de la sesión de usuario almacenada en el navegador. – El cliente: accede a una web que fuerza a su navegador a realizar acciones no deseadas en un sitio en el que previamente se ha autenticado. ● Contramedida: tokens específicos en cada formulario.
  • 36. A9 - Using Components with Known Vulnerabilities Vulnerable components, such as libraries, frameworks, and other software modules https://www.owasp.org/index.php/Top_10_2013-A9
  • 37. The Exploit Database Búsqueda de avisos + exploits ordenados por temas y fechas http://www.exploit-db.com/
  • 38. A10 - Unvalidated Redirects and Forwards Attackers can redirect victims to phishing or malware sites https://www.owasp.org/index.php/Top_10_2013-A10
  • 39. Ataques de redirección PoCs: IE/Firefox Redirection Issue – FB Oauth2 Bypass – BugCrowd http://soroush.secproject.com/blog/2013/03/iefirefox-redirection-issue-fb-oauth2-bypass-bugcrowd/
  • 40. Cómo aprender seguridad web sin acabar en la cárcel ;-)
  • 41. OWASP WebGoat Aplicación J2EE preparada para ser atacada https://www.owasp.org/index.php/Category:OWASP_WebGoat_Project
  • 42. SEED (Weliang Du) Developing Instructional Laboratories for Computer SEcurity EDucation http://www.cis.syr.edu/~wedu/seed/
  • 43. p0wnlabs Laboratorios para experimentar, de pago, aunque hay gratuitos http://p0wnlabs.com/free
  • 44. Hacking-Lab Laboratorio online para aprender (conexión por VPN) https://www.hacking-lab.com/
  • 45. HTML5 y CSS3 ataques novedosos
  • 47. “All user input is evil until proven otherwise” Ken Cox
  • 48. Muchas gracias ;-) and... happy hacking!
  • 49. Referencias ● OWASP: The Open Web Application Security Project. ● El lado del mal, retos hacking, por Chema Alonso. ● Fear the FOCA! Informática64. ● IE/Firefox Redirection Issue – FB Oauth2 Bypass – BugCrowd, por Soroush Dalili. ● Scriptless Attacks: Stealing the pie without touching the sill, por Mario Heiderich, Felix Schuster y Marcus Niemietz. ● The Exploit Database. ● Wikipedia.
  • 50. Todas las imágenes son propiedad de sus respectivos dueños, el resto del contenido está licenciado bajo Creative Commons by-sa 3.0