Source: http://docplayer.es/1874484-Evaluaciones-de-seguridad-en-entornos-tic.html
Timestamp: 2018-06-18 06:20:31+00:00

Document:
Evaluaciones de Seguridad en entornos TIC: - PDF
Evaluaciones de Seguridad en entornos TIC:
Download "Evaluaciones de Seguridad en entornos TIC:"
Lucía Lozano Gil
1 Evaluaciones de Seguridad en entornos TIC: Fundamentos. Metodologías. Herramientas. Autor: Consultor: : D. Miquel Font Roselló Ingeniería Técnica de Telecomunicación 10/01/13
3 Agradecimientos Este Trabajo de Fin de Carrera marca, sin duda alguna, un hito en mi vida. Por ello, no puedo más que agradecer a todos aquellos que, de alguna manera u otra, han contribuido a la consecución de este logro. En primer lugar, a mis familiares y amigos que, de forma comprensiva, han sabido perdonar mis prolongadas ausencias. También quiero recordar a todos aquellos que no creyeron en la viabilidad de esta empresa. Con su falta de fe, redoblaron en mí mi motivación y mi empeño por alcanzar el objetivo. Sin embargo, si hay alguien de quien me acuerdo en este instante, es de mi mujer Inma y de mi hijo Diego. Ella, no sólo ha creído en mí en todo momento, sino que además me ha ayudado, soportado, animado y sustentado para que yo pudiese alcanzar este sueño. Él, con sólo una sonrisa suya, puede hacer desaparecer cualquier traza de dificultad o de desánimo. Por último, pero no menos importante, quiero agradecer la inestimable ayuda de D. Miquel Font Roselló en el desarrollo de este Trabajo de Fin de Carrera. Su continua tutorización y directriz han contribuido significativamente a dirigir este proyecto a buen puerto. Possunt quia posse videntur. (Pueden los que creen que pueden).- Publius Vergilius Maro (70 a.c a.c.)
5 Palabras Clave Hacking Hacking ético Criptografía Seguridad Seguridad de la Información Seguridad de red Seguridad informática Test de Penetración - Evaluaciones de Seguridad Auditoría de Seguridad Análisis de Vulnerabilidades Seguridad Redes Inalámbricas Malware Seguridad de Servidores Web Seguridad de Aplicaciones. Resumen Con la globalización de la red de redes y la proliferación de servicios de todo tipo que sobre ésta se ofrecen, la evaluación de la seguridad de las aplicaciones, los sistemas, las redes, el software base, el middleware, etc.; toma una relevancia cada vez mayor. Además, debido a la relativamente reciente aparición de diferentes marcos legislativos en múltiples países, las evaluaciones de seguridad son cada vez más frecuentes. Llegando a ser, en algunos casos, de carácter obligatorio y con una periodicidad definida. Al igual que los agentes policiales que tienen que aprender la jerga, las acciones y los comportamientos de los criminales para poder capturarlos, las evaluaciones de seguridad permiten encontrar y reparar las vulnerabilidades y los agujeros de seguridad en los sistemas y redes. Para ello, se tiene que pensar como un criminal y usar las mismas tácticas (i.e. metodologías), herramientas y procesos que ellos emplean. El presente trabajo es una introducción a lo que se conoce como, entre otros términos, Evaluación de Seguridad TIC. En él se recogen los fundamentos teóricos y técnicos sobre las que se basan, la jerga y definiciones empleadas, las metodologías que se siguen y las herramientas que se utilizan.
7 Tabla de Contenidos 1 Introducción Motivaciones Objetivos Enfoque y metodología Entregables Planificación Laboratorio de pruebas Esbozo de la memoria Fundamentos de evaluaciones de seguridad Elementos básicos de la Seguridad de la Información Hackers Éticos: definición y tipos Terminología Hacking y tipos de ataques Metodologías para evaluaciones de seguridad The Open Source Security Testing Methodology Manual (OSSTMM) The Information Systems Security Assesment Framework (ISSAF) Metodología del EC Council Reconocimiento Descripción general Herramientas Demostración Escaneo y enumeración Descripción general Herramientas Demostración Obtención de acceso Ataques a nivel de red: Sniffers y evasión Descripción general Herramientas Demostración Ataques a nivel de sistema Descripción general Herramientas Demostración Ataques de bajo perfil técnico: Ingeniería Social Descripción general Ataques a servidores y aplicaciones web Descripción general Herramientas Demostración Ataques a redes inalámbricas Descripción general Herramientas Demostración Ataques a través de Malware... 65
8 6.6.1 Descripción general Herramientas Demostración Conclusiones Líneas de ampliación Glosario Bibliografía... 84
10 Índice de Figuras Figura 1: planificación proyecto a nivel alto...2 Figura 2: planificación proyecto a nivel medio...3 Figura 3: planificación proyecto a nivel detalle...3 Figura 4: diagrama de red laboratorio...4 Figura 5: fases de la metodología OSSTMM...19 Figura 6: marco de trabajo ISSAF...20 Figura 7: subfases hacking ético según el EC Council...22
11 1 Introducción 1.1 Motivaciones Gobiernos, cuerpos de seguridad, empresas, instituciones financieras, hospitales, empresas privadas, etc., amasan una gran cantidad de información confidencial sobre empleados, clientes, productos, investigaciones, estados financieros, etc. La mayor parte de esta información es recogida, procesada y almacenada en sistemas de información electrónicos y transmitida, a través de redes, a otros sistemas. Para las personas individuales, la seguridad de la información puede tener un efecto significativo sobre su privacidad. Por tanto, en el escenario antes descrito, es un requisito, a veces ético y/o legal, el comprobar si los controles de seguridad aplicados por una organización están cumpliendo con la misión encomendada, si son suficientes, adecuados y óptimos. Para realizar dichas comprobaciones, existen las evaluaciones de seguridad, objeto principal del presente trabajo. 1.2 Objetivos Los objetivos del presente trabajo son: Presentar una introducción a la Seguridad de la Información. Presentar una introducción a las evaluaciones de seguridad. Describir las diferentes metodologías estándares y estándares de facto que se usan en la actualidad para llevar a cabo las evaluaciones de seguridad. Describir las fases que componen la metodología más usada en la actualidad en la realización de evaluaciones de seguridad. Enumerar y describir las herramientas que componen el estado del arte en las evaluaciones de seguridad. Relacionar los conceptos teórico-técnicos sobre los que se basan las evaluaciones de seguridad con los conceptos aprendidos durante el desarrollo de la carrera. 1 de 84
12 Reforzar los conocimientos teóricos con ejercicios prácticos realizados sobre un laboratorio virtual creado ad hoc. Utilizar técnicas de gestión de proyectos para garantizar la correcta finalización del trabajo dentro de los límites de tiempo, cumpliendo con los requisitos y restricciones marcados y con el grado de calidad requerido en el ámbito académico de un Trabajo de Fin de Carrera. 1.3 Enfoque y metodología Entregables Como entregables frutos de la realización del presente trabajo se obtendrán: La presente memoria. Un conjunto de vídeos con la grabación de los laboratorios prácticos llevados a cabo como demostración de algunas de las técnicas / herramientas utilizadas en las evaluaciones de seguridad en entornos TIC Planificación A continuación se incluye la planificación temporal de este Trabajo de Fin de Carrera a diferentes niveles de detalle: Figura 1: planificación proyecto a nivel alto. 2 de 84
13 Figura 2: planificación proyecto a nivel medio. Figura 3: planificación proyecto a nivel detalle. 3 de 84
14 1.3.3 Laboratorio de pruebas Para reforzar los conocimientos teóricos con ejercicios prácticos, se ha creado un laboratorio virtual que se describe con el siguiente diagrama: Figura 4: diagrama de red laboratorio. Se trata de un laboratorio virtual porque cuatro de las máquinas representadas en el diagrama son maquinas virtualizadas con el producto Oracle Virtual Box. Este producto forma parte de la familia de productos de virtualización de Oracle Corporation. 4 de 84
15 Virtual Box se instala sobre un sistema operativo anfitrión como una aplicación. Esta aplicación permite que sistemas operativos adicionales, conocidos como sistemas operativos huéspedes, puedan ser cargados y ejecutados cada uno con su propio entorno virtual. Entre los sistemas operativos de tipo anfitrión soportados por el producto Virtual Box tenemos los siguientes: Linux, Mac OS X, Windows XP, Windows Vista, Windows 7, Windows 8, Solaris y OpenSolaris. Entre los principales sistemas operativos de tipo huésped soportados por el producto Virtual Box tenemos los siguientes: Linux, Windows (diferentes versiones), BSD, OS/2, Solaris, etc. El laboratorio trata de modelar la arquitectura de red que presentan muchas organizaciones con servicios y presencia en Internet. El laboratorio se compone de cinco máquinas, la máquina host (dcamacho-laptop) y cuatro máquinas guest (fw.victim.com, webdns.victim.com, wrkstn01.victim.com y wrkstn02.victim.com). Desde la máquina con nombre dcamacho-laptop, se realizarán la mayoría de ataques, escáneres, intentos de intrusión, etc. Simulando, por tanto, ser una máquina bajo el control de un hacker malicioso intentando circunvalar los controles de seguridad de la organización ficticia victim.com. La máquina con nombre fw.victim.com, representa la máquina que hace de pasarela entre las subredes DMZ, LAN interna de la organización e Internet. Realiza funciones de NAT (Network Address Translation) tanto de fuente como de destino para ocultar las direcciones IP de la subredes DMZ y LAN interna. Además, realiza funciones de filtrado de paquetes (i.e. de cortafuegos) a través de la implementación de un cortafuegos en arquitectura multihomed (i.e. un sistema con varias tarjetas de interfaz de red) con la herramienta Iptables. Un cortafuegos es un componente hardware y/o software que ayuda a mantener la seguridad de una red. Su principal objetivo es controlar el tráfico de entrada y de salida analizando los paquetes de datos y determinando si autoriza o no el tráfico conforme a un conjunto de reglas establecidas. Los cortafuegos suelen ser ubicados lógicamente de forma que se convierten en nodos de interconexión entre redes con diferentes perfiles de confianza. Existen diferentes generaciones de cortafuegos según las capacidades que éstos muestran, las cuáles son fruto de la evolución en el tiempo de los cortafuegos. En el laboratorio de pruebas, se va a utilizar un cortafuegos de segunda generación; es decir, un cortafuegos con estado (statefull firewall). Los cortafuegos con estado son aquellos que tienen la capacidad de almacenar suficientes paquetes hasta llegar a conocer el estado de una conexión. De esta forma, puede discernir si un paquete está iniciando una conexión, forma parte de una conexión establecida o no forma parte de ninguna conexión. A continuación, se incluye la configuración específica del cortafuegos implementado con la herramienta iptables: 5 de 84
16 Qué? Cómo? Cuándo? Por qué? Qué? Cómo? Cuándo? Por qué? Qué? Cómo? Cuándo? Por qué? Qué? Cómo? Cuándo? Por qué? Requerimiento 1 El cortafuegos debe iniciarse sin ninguna regla de filtrado establecida. Se eliminarán todas las reglas del cortafuegos. Cada vez que se active el cortafuegos. Evitar que diferentes configuraciones de cortafuegos se solapen. Requerimiento 2 Cuando un paquete no coincida con ninguna regla debe ser descartado. Se utilizarán las políticas por defecto. Mientras el cortafuegos esté activado. Para evitar que paquetes que no han sido explícitamente activados o denegados pueden pasar a través del cortafuegos. Requerimiento 3 Las direcciones de los equipos ubicados en las redes DMZ e interna deben quedar ocultas a externos. Así mismo, los puertos de los servicios publicados en el servidor bastión de la red DMZ deben ser diferentes a los puertos bien conocidos asociados a dichos servicios. Se configurará NAT de fuente y de destino. Mientras el cortafuegos esté activado. Para ahorrar direcciones IP públicas y por motivos de seguridad (ocultando las direcciones IP y puertos bien conocidos utilizados en las redes DMZ e interna al exterior). Requerimiento 4 El cortafuegos recibirá y responderá a peticiones ICMP. Se autorizará el tráfico ICMP de entrada de tipo 8 y se autorizará el tráfico ICMP de salida de tipo 0. Cuando expresamente así se solicite. Para permitir operaciones de diagnóstico. 6 de 84
17 Qué? Cómo? Cuándo? Por qué? Qué? Cómo? Cuándo? Por qué? Qué? Cómo? Cuándo? Por qué? Requerimiento 5 El cortafuegos permitirá la navegación web por parte de los usuarios de la red interna. Se autorizará el tráfico TCP con origen la red interna y con destino los puertos 80,443 y se autorizará el tráfico TCP establecido con origen los puertos 80,443 y con destino la red interna. Mientras el cortafuegos esté activado. Los usuarios de la red interna necesitan la navegación web para realizar su desempeño. Requerimiento 6 El cortafuegos permitirá el acceso universal al servicio web activo en el servidor bastión ubicado en la red DMZ. Se autorizará el tráfico TCP con origen universal y con destino los puertos 8080,8443 del servidor bastión ubicado en la red DMZ y se autorizará el tráfico TCP establecido con origen los puertos 8080,8443 del servidor bastión ubicado en la red DMZ y con destino universal. Mientras el cortafuegos esté activado. El modelo implica la prestación de servicios a través sitios web. Requerimiento 7 El cortafuegos permitirá el acceso universal al servicio de resolución de nombres activo en el servidor bastión ubicado en la red DMZ. Se autorizará el tráfico UDP con origen universal y con destino el puerto 53 del servidor bastión ubicado en la red DMZ y se autorizará el tráfico UDP establecido con origen el puerto 53 del servidor bastión ubicado en la red DMZ y con destino universal. Mientras el cortafuegos esté activado. El modelo implica el control de la resolución de nombres de la zona victim.com. 7 de 84
18 Qué? Cómo? Cuándo? Por qué? Qué? Cómo? Cuándo? Por qué? Qué? Cómo? Cuándo? Por qué? Requerimiento 8 El cortafuegos permitirá el acceso desde la red interna al servicio de la herramienta de configuración WEBMIN activo en el servidor bastión ubicado en la red DMZ. Se autorizará el tráfico TCP con origen la interna y con destino el puerto del servidor bastión ubicado en la red DMZ y se autorizará el tráfico TCP establecido con origen el puerto del servidor bastión ubicado en la red DMZ y con destino la red interna. Mientras el cortafuegos esté activado. El modelo implica la utilización de la herramienta de configuración con interfaz basada en web WEBMIN. Requerimiento 9 El cortafuegos permitirá el acceso desde el servidor bastión ubicado en la red DMZ al servicio de resolución de nombres universal. Se autorizará el tráfico UDP con origen el servidor bastión ubicado en la red DMZ y con destino el puerto 53 universal y se autorizará el tráfico UDP establecido con origen el puerto 53 universal y con destino el servidor bastión ubicado en la red DMZ. Mientras el cortafuegos esté activado. El servicio DNS ubicado en el servidor bastión de la red DMZ reenviará las consultas que no sean para la zona victim.com y que no estén almacenadas en memoria caché al sistema jerárquico DNS universal. Requerimiento 10 El cortafuegos permitirá el acceso a la red interna al servicio de resolución de nombres activo en el servidor bastión ubicado en la red DMZ. Se autorizará el tráfico UDP con origen la red interna y con destino el puerto 53 del servidor bastión ubicado en la red DMZ y se autorizará el tráfico UDP establecido con origen el puerto 53 del servidor bastión ubicado en la red DMZ y con destino la red interna. Mientras el cortafuegos esté activado. Dado que los usuarios de la red interna necesitan la navegación web para realizar su desempeño, esto implica que los usuarios de la red interna puedan resolver nombres de dominio. 8 de 84
19 # # UOC # Subject: End Degree Project. # Student: Diego Camacho. # Revision number: _01 # # # IPTABLES # # EXPLICACIÓN: IPTABLES es un mandato del sistemas operativo Linux que permite crear, mantener e inspeccionar el cortafuegos del kernel de Linux. El cortafuegos del kernel de Linux está formado por tablas. Las cuáles, a su vez, están compuestas de cadenas. Las cadenas son listas de reglas que indican características de filtrado que finalmente son las que determinan si un paquete es o no autorizado en su tránsito. En cada tabla existen una serie de cadenas definidas y, además, nuevas cadenas pueden ser definidas por el usuario. La tabla por defecto es la tabla FILTER, la cuál tiene definida las cadenas INPUT (para paquetes con sockets locales como destino), FORWARD (para paquetes siendo encaminados por el sistema) y OUTPUT (para paquetes generados localmente). # # Clear all. Implements requirement nº1. # # EXPLICACIÓN: Borramos todas las cadenas definidas por el usuario que pudiera haber (-X) y todas las cadenas predefinidas (-F) de la tabla por defecto (i.e. FILTER). iptables -X iptables -F # # Default policies. Implements requirement nº2. # # # EXPLICACIÓN: Establecemos las políticas por defecto de las tres cadenas predefinidas (INPUT, FORWARD, OUTPUT) de la tabla por defecto FILTER. La política por defecto es rechazar. Es decir, cualquier paquete que no tenga una coincidencia con una regla será descartado. iptables -P INPUT DROP iptables -P FORWARD DROP iptables -P OUTPUT DROP 9 de 84
20 # # Source NAT. Implements requirement nº3. # # EXPLICACIÓN: realizamos un NAT de fuente sobre todos los paquetes procedentes de la red DMZ y de la red interna ( /23) y que salgan por la interfaz eth0. Es decir, a todos los paquetes provenientes de las redes DMZ e interna se le cambiará la dirección IP origen por la dirección que dinámicamente se le haya asignado a la interfaz eth0. iptables -t nat -A POSTROUTING -s /23 -o eth0 -j MASQUERADE # # Destination NAT. Implements requirement nº3. # # EXPLICACIÓN: realizamos un NAT de destino sobre todos los paquetes entrantes por la interfaz eth0 y con puerto destino 80 ó 443 por protocolo nivel 4 TCP, o con puerto destino 53 por protocolo nivel 4 UDP. Esto es necesario por dos motivos: 1º) tenemos servicios publicados en nuestra red DMZ y queremos que puedan ser consumidos desde el exterior; 2º) La dirección IP visible desde el exterior es la dirección IP asignada a la interfaz eth0 de nuestro cortafuegos. iptables -t nat -A PREROUTING -p tcp --dport 80 -i eth0 -j DNAT --to :8080 iptables -t nat -A PREROUTING -p tcp --dport 443 -i eth0 -j DNAT --to :8443 iptables -t nat -A PREROUTING -p udp --dport 53 -i eth0 -j DNAT --to # # Allow ping request to FW from ALL (commented out). Implements requirement nº4. # # EXPLICACIÓN: esta regla permite que el cortafuegos reciba peticiones ICMP de tipo ECHO REQUEST (--icmp-type 8). Para evitar ataques que utilizan el protocolo ICMP, sólo se habilitará esta opción con fines de diagnóstico bajo demanda. ##iptables -A INPUT -p icmp --icmp-type 8 -s 0/0 -m state --state NEW,ESTABLISHED,RELATED -j ##ACCEPT 10 de 84
21 # # Allow ping responses to ALL from FW (commented out). Implements requirement nº4. # # EXPLICACIÓN: esta regla permite que el cortafuegos envíe respuestas ICMP de tipo ECHO REPLY (--icmp-type 0). Para evitar ataques que utilizan el protocolo ICMP, sólo se habilitará esta opción con fines de diagnóstico bajo demanda. ##iptables -A OUTPUT -p icmp --icmp-type 0 -d 0/0 -m state --state ESTABLISHED,RELATED -j ##ACCEPT # # Allow web answers to LAN from "Internet". Implements requirement nº5. # iptables -A FORWARD -i eth0 -p tcp -m state --state ESTABLISHED,RELATED -m multiport --source-port 80,443 --destination /24 -j ACCEPT # # Allow web requests to HTTP SERVER in DMZ from "INTERNET". Implements requirement nº6. # iptables -A FORWARD -i eth0 -p tcp --destination m multiport --destination-port 8080,8443 -j ACCEPT # # Allow dns requests to DNS SERVER in DMZ from "INTERNET". Implements requirement nº7. # iptables -A FORWARD -i eth0 -p udp --destination destination-port 53 -j ACCEPT # # Allow dns answers to DNS SERVER in DMZ from EXTERNAL DNS SERVERS in "INTERNET". Implements requirement nº9. # iptables -A FORWARD -i eth0 -p udp -m state --state ESTABLISHED,RELATED --destination source-port 53 -j ACCEPT 11 de 84
22 # # Allow web answers to ALL from WEB SERVER in DMZ. Implements requirement nº6. # iptables -A FORWARD -i eth1 -p tcp --source m state --state ESTABLISHED,RELATED -m multiport --source-port 8080,8443 -j ACCEPT # # Allow web answers to LAN from WEBMIN in DMZ. Implements requirement nº8. # iptables -A FORWARD -i eth1 -p tcp --source m state --state ESTABLISHED,RELATED -m multiport --source-port destination /24 -j ACCEPT # # Allow dns answers to ALL from DNS SERVER in DMZ. Implements requirement nº7. # iptables -A FORWARD -i eth1 -p udp --source m state --state ESTABLISHED,RELATED --source-port 53 -j ACCEPT # # Allow dns requests to ALL from DNS SERVER in DMZ. Implements requirements nº9 and nº10. # iptables -A FORWARD -i eth1 -p udp --source destination-port 53 -j ACCEPT # # Allow web requests to WEB SERVERS in "INTERNET" from LAN. Implements requirement nº5. # iptables -A FORWARD -i eth2 -p tcp --source /24 -m multiport --destination-port 80,443 -j ACCEPT # # Allow web requests to WEB SERVER and WEBMIN in DMZ from LAN. Implements requirement nº8. # iptables -A FORWARD -i eth2 -p tcp --source /24 -m multiport --destination-port 8080,8443, destination j ACCEPT 12 de 84
23 # # Allow dns requests to DNS SERVER in DMZ from LAN. Implements requirement nº10. # iptables -A FORWARD -i eth2 -p udp --source /24 --destination destinationport 53 -j ACCEPT La máquina con nombre webdns.victim.com, representa un servidor bastión (i.e. un servidor perteneciente a una organización y que es accesible desde Internet y que, normalmente, provee servicios) que presenta los servicios de contenido web (i.e. servidor web) y de resolución de nombres (i.e. servidor DNS). En relación al servidor web, se ha desplegado una aplicación Java que nos permitirá realizar evaluaciones de seguridad de aplicaciones web. Dicha aplicación es la aplicación WebGoat. Esta aplicación es una aplicación J2EE construida con vulnerabilidades de forma deliberada para impartir formación sobre seguridad en aplicaciones web. Por su parte, el servicio de resolución de nombres se ha implementado con el servidor de nombres de código abierto BIND. El servidor de nombres se ha configurado para que sea el servidor de nombres con autoridad sobre la zona victim.com. Por último, se encuentran las máquina con nombres wrkstn01.victim.com y wrkstn02.victim.com. Estas máquinas modelan las estaciones de trabajo habituales de los usuarios finales ubicadas en la LAN interna de la organización. Es posible que se realicen algunas técnicas de ataque, o de otro tipo, desde estas máquinas, ya que, como demuestran las estadísticas, el 80% de los ataques telemáticos se llevan a cabo por personal interno de la organización. En función del entorno en el que se encuentre el alumno, y tal y como se refleja en el diagrama anterior, las direcciones IP de la máquina host y la de la interfaz eth0 del cortafuegos pueden variar. Esto hecho, en cualquier caso, quedará claramente reseñado en los vídeos que se grabarán por cada uno de los ejercicios prácticos incluidos en este proyecto. 13 de 84
24 1.4 Esbozo de la memoria La presente memoria se estructura en los siguientes bloques: Punto 1: Introducción. Definición de objetivos, planificación, motivación, escenario de prueba, etc., del presente trabajo. Punto 2: Fundamentos de las evaluaciones de seguridad. En este punto se describirán los fundamentos teórico-técnicos en los que se basan las evaluaciones de seguridad en entornos TIC. Igualmente, se enumerarán y describirán la jerga y las definiciones utilizadas en las mismas. Punto 3: Metodologías para evaluaciones de seguridad. En este punto se describirán las metodologías estándares y estándares de facto que se utilizan en la actualidad para conducir las evaluaciones de seguridad. Punto 4: Reconocimiento. Como se detallará más adelante durante el desarrollo de esta memoria, una de las metodologías más usada a la hora de realizar evaluaciones de seguridad en entornos TIC es la metodología creada por el EC Council. En un primer nivel, está metodología se estructura en tres fases principales consecutivas en el tiempo: preparación, evaluación y conclusión. A su vez, la fase evaluación se estructura en cinco subfases consecutivas en el tiempo: reconocimiento, escaneo y enumeración, obtención de acceso, manteniendo acceso y ocultación. En este punto describiremos la subfase de reconocimiento, enumeraremos y describiremos las herramientas que se usan en la misma y haremos una demostración práctica de alguna de las herramientas más significativas. Punto 5: Escaneo y enumeración. En este punto describiremos la subfase de escaneo y enumeración, listaremos y describiremos las herramientas que se usan en la misma y haremos una demostración práctica de alguna de las herramientas más significativas. Punto 6: Obteniendo acceso. En este punto describiremos la subfase de obteniendo acceso, enumeraremos y describiremos las herramientas que se usan en la misma y haremos una demostración práctica de alguna de las herramientas más significativas. Punto 7: Conclusiones. En este punto listaremos aquellas conclusiones significativas que hayamos obtenido a lo largo de la ejecución del presente trabajo. Además, incluiremos las posibles líneas de ampliación en el estudio de las evaluaciones de seguridad en entornos TIC que se podrían seguir. 14 de 84
25 2 Fundamentos de evaluaciones de seguridad 2.1 Elementos básicos de la Seguridad de la Información Los tres elementos básicos que conforman la base de la Seguridad de la Información son: confidencialidad, integridad, y disponibilidad. Es importante conocer qué significan cada uno de ellos y qué ataques se asocian con cada elemento. Confidencialidad: se refiere a las medidas necesarias para prevenir la revelación de información o datos a personas o sistemas no autorizados. La utilización de contraseñas es el medio más básico y común de asegurar la confidencialidad. Consecuentemente, los ataques contra las contraseñas son el tipo de ataque más habitual relacionado con la confidencialidad. Integridad: se refiere a los métodos y acciones llevadas a cabo para proteger la información de la alteración o revisión no autorizada. La integridad suele ser asegurada a través de un tipo de función llamada hash. Una función hash es un algoritmo matemático de un sólo sentido que aplicado a un argumento de entrada de longitud arbitraria, genera como salida un número de longitud fija. Con el cambio de un simple bit del argumento de entrada, la función hash genera un valor hash de salida diferente. Disponibilidad: se refiere a la capacidad de poder usar los sistemas y los datos por parte de los usuarios legítimos cuando éstos así lo necesitan. Los ataques relacionados con la disponibilidad se encuadran dentro de los ataques conocidos como de Denegación de Servicio (DOS - Denial of Service attacks). Los ataques DOS están diseñados para evitar que los usuarios legítimos puedan acceder a servicios o recursos alojados en sistemas. Estos tres elementos forman lo que en el ámbito de la Seguridad de la Información se conoce como la triada de la seguridad o por el acrónimo CIA (Confidentiality Integrity Availability). 15 de 84
26 2.2 Hackers Éticos: definición y tipos Un Hacker Ético es alguien que emplea las mismas herramientas y técnicas que usan los criminales, con el soporte y aprobación total por parte de un cliente, para ayudar a reforzar la seguridad de una red o de un sistema o sistemas. En contraposición, un Cracker, también conocido como un Hacker malicioso, usa las mismas capacidades, herramientas y técnicas para una ganancia personal o con propósitos destructivos. En términos más formales, un Cracker persigue un objetivo fuera del interés del propietario de la red o sistema. Además de las definiciones dadas, la comunidad hacking se puede englobar en uno de los tres grupos siguientes: Sombreros blancos (white hats): considerados los chicos buenos, se trata de los Hackers éticos. Aquellos contratados por un cliente para un objetivo específico de prueba y mejora de la seguridad. Sombreros negros (black hats): considerados los chicos malos, se trata de los Crakers. Utilizan sus capacidades para una ganancia personal o con intenciones maliciosas. Sombreros grises (gray hats): el grupo más difícil de categorizar. Se trata de aquellos que tratan de demostrar, con o sin consentimiento, la existencia de debilidades o vulnerabilidades de seguridad en los sistemas o redes. En cualquier caso, realizar actividades de hacking sin permiso explícito es un delito. 2.3 Terminología Hacking y tipos de ataques En primer lugar, se definirá qué es una Evaluación de Seguridad. Una Evaluación de Seguridad es cualquier prueba que es realizada para evaluar el nivel de seguridad de una red o un sistema. Las evaluaciones de seguridad pueden pertenecer a dos categorías: una Auditoría de Seguridad (también conocida como Evaluación de Vulnerabilidades) o un Test de Penetración. 16 de 84
27 Por su parte, una Auditoría de Seguridad escanea y prueba un sistema o red en busca de vulnerabilidades, pero no intenta intencionadamente explotar ninguna de ellas. Es decir, sólo señala las vulnerabilidades encontradas en beneficio de un cliente. Por otro lado, una Prueba de Penetración (o Prueba de Intrusión) es una prueba claramente definida de los controles de seguridad de un sistema o red para identificar los riesgos y vulnerabilidades de seguridad, y se compone de tres fases principales: preparación: define el periodo de tiempo durante el cuál se desarrolla la prueba, el alcance de la misma, el tipo de ataque que están permitidos y las personas / perfiles que los llevarán a cabo. evaluación: es la fase donde se llevan a cabo los asaltos contra los controles de seguridad. conclusión: también conocida como post-evaluación, es la fase donde se preparan los informes finales para el cliente, detallando los resultados obtenidos y, habitualmente, las recomendaciones oportunas para mejorar la seguridad. En referencia a los informes finales entregables generados en esta fase, se citan a continuación algunos de los informes típicos que se suelen entregar como resultado de un Test de Penetración: Un informe ejecutivo con la postura global de la organización con respecto a la seguridad. Los nombres de todos los participantes y las fechas de todas las pruebas. Un listado de todos los resultados, habitualmente clasificados por nivel de riesgo en orden descendente. Un análisis de cada resultado y, si existen, pasos de resolución recomendados. Ficheros de registro y cualquier otra prueba obtenida a partir del conjunto de herramientas utilizado. Los Test de Penetración tratan de emular las actividades y metodologías empleadas por los criminales. Para ello, se clasifican en función del conocimiento inicial que se tiene del TOE (Target of Evaluation). Los elementos en los que se estructura la mencionada taxonomía se denominan black box (caja negra), white box (caja blanca) y gray box (caja gris): En las pruebas de tipo black box, el hacker ético no tiene conocimiento alguno sobre el TOE. Esta prueba está diseñada para simular un atacante externo y desconocido, es el tipo de prueba que más tiempo necesita y suele ser el tipo de prueba con un mayor coste económico. 17 de 84
28 En la pruebas de tipo white box, el evaluador (i.e. hacker ético) tiene conocimiento completo de la red, sistema, y de la infraestructura que está evaluando. Este tipo de prueba se realiza de forma mucho más rápida, tiene un coste económico más bajo y trata de emular a una amenaza interna con un alto nivel de conocimientos sobre la infraestructura del objetivo. Las pruebas de tipo gray box, también conocidas como pruebas de conocimiento parcial, se diferencian de las pruebas de tipo white box en el nivel de privilegios del evaluador. En las pruebas de tipo white box, se asume que el nivel de privilegios del evaluador son los propios de un administrador de red. En las pruebas de tipo gray box, lo único que se asume es que el atacante es un interno. Este tipo de prueba está especialmente indicado para evaluar las posibilidades de conseguir una escalada de privilegios por parte de un usuario interno a la infraestructura. En lo referente a los tipos de ataques que existen, se incluye a continuación la siguiente taxonomía de los mismos según el EC Council: Ataques a sistemas operativos: este tipo de ataques apuntan al error común que se suele cometer cuando se instala un sistema operativo, y se dejan en éste valores y configuraciones por defecto. También se incluyen en esta categoría, aquellos ataques que se aprovechan de las vulnerabilidades que puedan existir en un sistema operativo recién instalado y aún no parcheado. Ataques a nivel de aplicación: este tipo de ataques apuntan a las aplicaciones que se ejecutan por encima de los sistemas operativos. Muchas aplicaciones son desarrolladas sin seguir un ciclo seguro de desarrollo de software, lo que permite que sean liberadas con multitud de vulnerabilidades en ellas. Ataques a código empaquetado : este tipo de ataques apuntan al código estándar o estándar de facto que suele ir incorporado en muchas aplicaciones. Básicamente, se trata de atacar fragmentos de código que, por reutilización, suelen ir incorporados en muchas aplicaciones. Ataques a configuraciones erróneas: este tipo de ataque apuntan a sistemas que, por descuido o deliberadamente, no se encuentran configurados de forma segura. Este tipo de ataques toman ventaja de aquellos administradores que, simplemente, quieren hacer las cosas lo más fáciles posibles a los usuarios finales, generando en el empeño multitud de vulnerabilidades. 18 de 84
29 3 Metodologías para evaluaciones de seguridad 3.1 The Open Source Security Testing Methodology Manual (OSSTMM) La OSSTMM es una metodología para la medida y la ejecución de pruebas / evaluaciones de seguridad. Los casos de prueba de la OSSTMM se dividen en canales que de forma colectiva prueban: controles sobre datos e información, niveles de concienciación del personal sobre la seguridad, controles contra la ingeniería social y el fraude, redes de telecomunicación y de ordenadores, dispositivos inalámbricos, dispositivos móviles, controles de acceso de seguridad física, procesos de seguridad, así como ubicaciones físicas como edificios, perímetros y bases militares. La OSSTMM se focaliza en los detalles técnicos de exactamente qué elementos deben ser probados, qué hacer antes, durante y después de una prueba de seguridad; así como en cómo medir los resultados. Nuevas pruebas provenientes de mejores prácticas internacionales, leyes, regulaciones y asuntos éticos son regularmente añadidas y actualizadas. Figura 5: fases de la metodología OSSTMM. 19 de 84
Administración y Seguridad de Sistemas 2016 Ethical Hacking
Administración y Seguridad de Sistemas 2016 Ethical Hacking Carina Indarte Juan Ignacio Larrambebere Guillermo Leopold Agustín Romano Ethical Hacking Introducción Footprinting Doxing Áreas de testeo y
La importancia de las pruebas de penetración (Parte I)
Publicado en Revista.Seguridad (http://revista.seguridad.unam.mx) Inicio > La importancia de las pruebas de penetración (Parte I) La importancia de las pruebas de penetración (Parte I) Por Erika Gladys

References: resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución