8. 5 Web 2.0 “El término “Web 2.0” es comúnmente asociado con aplicaciones web que facilitan interactivamente el intercambio de información, interoperabilidad, diseño centrado en el usuario y colaboración”
9. 6 Web 2.0 "Yo creo que Web 2.0 es pura basura, ni siquiera nadie sabe que significa" "I think Web 2.0 is of course a piece of jargon, nobody even knows what it means" Tim Berners-Lee
10. 7 Web 2.0 “No se refiere a un cambio técnico, sino a las maneras en que los desarrolladores y los usuarios hacen uso de las aplicaciones en la web”
11. 8 Web 2.0 Crear software y distribuirlo Crear servicios basados en información
14. 11 "70% de los 100 sitios mas populares, han hospedado contenido malicioso ó han contenido redireccionamientospara víctimas de sitios legítimos a sitios maliciosos" (Websense, 2009)
16. 13 Reglas Básicas nuncaconfíeen el usuario filtre todo el input, limpie todo el output evite las excusas! piense como hacker! deje que la seguridadsea parte de su diseño
22. SQL Injection :: Ejemplo 19 $_POST[‘usuario’] = usuario123$_POST[‘clave’] = 123456 Página de login DB
23. SQL Injection :: Ejemplo $login=$_POST['login']; $password=$_POST['password']; $sql="SELECT * FROM user WHERE login = '$login‘ AND password = '$password'"; 20 lo anterior dacomoresultado: "SELECT * FROM user WHERE login = 'admin‘ AND password = '123456’";
25. SQL Injection :: Ejemplo 22 SELECT * FROM user WHERE login = '$login'AND password = '$password' lo anterior dacomoresultado: SELECT * FROM user WHERE login = 'admin' AND password = '1' OR 1=1 OR ''=''
26. 23 SQL Injection Inyección de consultas ?val=(DELETE FROM table); Recolección de datosarbitrarios ?id=column_name Denial of Service ?val=(BENCHMARK(100000000, MD5(RAND())); Modificación de Datos ?val=(UPDATE users SET is_admin=1);
27. Filtrar la entrada del usuario. addslashes("Admin’ or 1=1"); Usar las funciones específicas de la base de datos mysqli_real_escape_string("Admin’ or 1=1"); Usarsentenciaspreparadas (prepared statements) 24 SQL_Injection::Soluciones
30. XSS Consiste en inyectar código ejecutable en el navegador. Este ataque puede ser llevado a cabo utilizando: HTML JavaScript VBScript ActiveX Flash Cualquier otra tecnología que ejecute el cliente 27
38. Stored XSS 35 pone contenido malicioso en el sitio Accesa el sitio con el problema v v Víctima Atacante ejecuta contenido malicioso y roba los datos del usuario Sito web con vulnerabilidad
49. 46 “Cualquier aplicación que acepta pedidos HTTP (HTTP Request) de un usuario autenticado sin tener algún tipo de control para verificar que el pedido HTTP es único a la sesión del usuario, esta expuesto a un ataque.”
59. 56 Referencias Open Web Application Security Project http://www.owasp.org Chris Shiflett http://www.shiflett.orgGuia de Seguridad PHP http://php.net/manual/en/security.intro.phpBlack Hat http://www.blackhat.com Yahoo Search http://search.yahoo.com Google Search http://www.google.com