1 OSSTMM
2 www.upc.edu AGENDA Introducción Wireless Testing Human Security Testing Telecomunications Testing Data Network Testing
3 www.upc.edu Introducción OSSTMM Definiciones “Manual de la Metodología Abierta del Testeo de Seguridad” Estándar profesional para revisar la Seguridad de los Sistemas desde Internet Gruía que incluye aspectos a tener en cuenta al momento de realizar testeos de seguridad desde el exterior
4 www.upc.edu Introducción OSSTMM Creador: Peter Herzog & 150 voluntarios IdeaHamsters. Dar vueltas a una idea Inyectar ideas en empresas ISECOM Diciembre 2000:12 páginas Versión 2.0: >200 páginas
5 www.upc.edu Introducción ISECOM Organización sin ánimo de lucro SCARE (Source Code Analysis Risk Evaluation) HSM (Home Security Vacation Guide) HHS (Hacker High School: Information Awareness for Teens) BPP (Bad People Project)
6 www.upc.edu Introducción Primeras preguntas Solo hace referencia a la parte técnica? NO!: Credenciales del auditor Cómo comercializarlo Ética y legalidad Cómo presentar resultados: STAR Entonces, solo hay procedimiento??? NO!: Hay mucha ciencia detrás Entonces, se puede evaluar cada test? RAV: Valores de evaluación de riesgo: degradación de la seguridad (o elevación del riesgo) sobre un ciclo de vida específico Objetivo: Minimizar las presunciones El test debe ser consistente y repetible
7 www.upc.edu
8 Introducción Sección A -Seguridad de la Información 1. Revisión de la Inteligencia Competitiva 2. Revision de Privacidad 3. Recolección de Documentos Sección B – Seguridad de los Procesos 1. Testeo de Solicitud 2. Testeo de Sugerencia Dirigida 3. Testeo de las Personas Confiables
9 www.upc.edu Introducción Objetivos Objetivos de OSSTMM: El test se ha llevado acbo de forma correcta Se han auditado los canales necesarios El test cumple con las leyes vigentes Los resultados son cuantificables Los resultados son repetibles. Los resultados se basan en los resultados de los tests
10 www.upc.edu Introducción Términos Seguridad:
11 www.upc.edu Introducción Términos Cómo mejorar la seguridad: Mover el activo a un lugar donde exista una protección Cambiar la amenaza de tal forma que no sea dañina Eliminar la amenaza Porosidad: Puntos de interacción (operaciones) que pueden hacer disminuir la separación entre activos y amenazas.
12 www.upc.edu Introducción Operaciones Visibilidad “Opotunidades” – “Beneficio”-”Riesgo” (Policia) Número de objetivos del test. Activos! Acceso Punto de entrada. Lugares donde puede existir interacción 2 puertas y 5 ventanas= 7 Puertos abiertos Confianza Interacción entre entornos con diferente nivels de seguridad. Número de por forwarding
13 www.upc.edu Introducción Tipos de auditoría
14 www.upc.edu Introducción Controles INTERACTIVOS Autenticacion Seguro “Sometiminento” Continuidad Resistencia PROCESO No repudio Confidencialidad Privacidad Integridad Alarma Objetivo: Controlar la porosidad
15 www.upc.edu Introducción Controles Autenticación. Instancias de autenticación (Biométrico, Radius,…) Seguro. Seguros de robo, Sometimiento. Obligar a los usuarios a proveer las credenciales al entrar en un edificio. Continuidad. Método que asegure que haya continuidad a pesar de que algo falla. Resistencia. Métodos de recuperación rápida
16 www.upc.edu Introducción Controles No-repudio: Cámara de video Confidencialidad: Solo las partes pueden leer la información transmitida. Encriptar información Privacidad: Ocultar el método de interacción (despacho cerrado). Integridad. Hash Alarma. Notificación de eventos
17 www.upc.edu Introducción Limitaciones Vulnerabilidad: Afecta a acceso y confianza Debilidad: Afecta a controles Exposición: Afecta a la visibilidad “miedo”(concern): Confianza y acceso Anomalía
18 www.upc.edu Introducción Resumen
19 www.upc.edu Pasos para llevar a cabo un test 1.Definir activos y controles 2.Definir los entornos donde se encuentran los activos (red, firewalls, proxies) 3.Definir lo que está fuera del entorno necesario para mantener los activos operativos (procesos, comida, etc.) (alcance) 4.Definir cómo interaccionan los diferentes componentes (vectores) 5.Definir el material necesario para cada test el cual se puede llevar a cabo diferentes niveles/canales: fisico, humano, Wireless, telco, datos 6.Definir el tipo de test 7.Asegurar la conformidad
20 www.upc.edu Canales
21 www.upc.edu RAV Riesgo= Amenaza x Vulnerabilidad x Activo Nivel de protección? RAV esta basado en fórmulas complejas y pretende contestar a las siguientes preguntas:
22 www.upc.edu STAR Security Test Audit Report
23 www.upc.edu
24 Introducción Flujo
25 www.upc.edu In art, the end result is a thing of beauty, whereas in science, the means of reaching the end result is a thing of beauty. When a security test is an art then the result is unverifiable and that undermines the value of a test. One way to assure a security test has value is to know the test has been properly conducted. For that you need to use a formal methodology. The OSSTMM aims tobe it.
26 www.upc.edu Testeo Wireless Redes inalambricas: Medio inseguro Fácil capturar tramas Vector de inicialización:
27 www.upc.edu WEP (Wired Equivalent Privacy) estándar 802.11 claves compartidas de 64 o 128 bits Claves basadas en dos partes: Clave del usuario Vector de inicialización (24 bits) Queremos claves distintas para cada trama- >EL vector de inicialización cambia con cada trama…o no 40+24 104+24
28 www.upc.edu Cifrado RC4 1.Flujo de bits a partir de cada clave XOR entre el flujo de bits y los datos a cifrar El IV se incluye de forma NO CIFRADA El receptor usa el IV y la clave compartida A -> B: v,(P (+) RC4(iv, k));
29 www.upc.edu Cifrado
30 www.upc.edu Descifrado
31 www.upc.edu Problemas: 1. Longitud efectiva del cifrado RC4 es 24 bits. 2. 24 bits es insuficiente hoy en día 2^24 posibles IV diferentes Podemos encontrar dos paquetes con el mismo IV
32 www.upc.edu C1 = P1 (+) RC4(iv, k) C2 = P2 (+) RC4(iv, k) C1 (+) C2 = (P1 (+) RC4(iv, k)) (+) (P2 (+) RC4(iv, k)) = P1 (+) P2 Consecuencias: a) Si conocemos el texto plano de P1 entonces podemos conocer P2 P2= P1 (+) (P1 (+) P2)
33 www.upc.edu b) P1 (+) P2. Redundancia de textos planos. Se pueden buscar textos que al aplicarse XOR den P1 (+) P2 CONDICIONES DEL ATAQUE: -Tener un gran numero de tramas con parte del keystream utilizado anteriormente. -Conocer parcialmente el texto plano
34 www.upc.edu Explotación Conseguimos dos paquetes con el mismo IV: Conocido el texto en plano de uno de los mensajes es muy sencillo acceder a los contenidos del otro (Broadcast, mails, etc) Una vez tenemos el texto plano y su cifrado, tenemos el keystream para un IV determinado- >Tablas de IV.
35 www.upc.edu lsusb Iwconfig ifconfig eth3 down iwconfig eth3 mode monitor ifconfig eth3 up ESSID: SSIRULEZ airodump−ng −−channel 11 eth3
36 www.upc.edu Guardar bssid (MAC AP) y station (MAC CLIENT) airodump−ng −−write capture −−channel 11 −−bssid eth3 aireplay−ng −−deauth 10 −e −a −c eth3 aireplay−ng −−arpreplay −b −h eth3 http://www.wirelessdefence.org/Contents/Files/aircra ck-ptw-1.0.0.tar.gz aircrack−ptw.cap
37 www.upc.edu HUMAN SECURITY TESTING
38 www.upc.edu Human Security Testing “El factor determinante de la seguridad de las empresas es la capacidad de los usuarios de interpretar correctamente las políticas de seguridad y hacerlas cumplir” Kevin Mitnick, consultor de seguridad informática, ingeniero social y ex–hacker
39 www.upc.edu Human Security Testing Cuatro principios básicos y comunes a todas las personas: Todos queremos ayudar. El primer movimiento es siempre de confianza hacia el otro. No nos gusta decir No. A todos nos gusta que nos alaben. En una conferencia en 2005 pudo acceder al código de un teléfono móvil en desarrollo, incluso antes de su anuncio en el mercado con 6 llamadas de teléfono y escasos minutos.
40 www.upc.edu Human Security Testing Una cadena es tan fuerte como su eslabón más débil Las personas, el eslabón más débil de la seguridad informática El 94% de los usuarios no cumple los consejos básicos de uso y gestión de contraseñas en Internet
41 www.upc.edu Human Security Testing Ingeniería social
42 www.upc.edu Human Security Testing Ingeniería social
43 www.upc.edu Human Security Testing Shoulder Surfing
44 www.upc.edu Human Security Testing Masquerading / Piggybacking ¿Cómo entrar a zonas restringidas? Protecciones
45 www.upc.edu Human Security Testing Basureo (scavenging)
46 www.upc.edu Human Security Testing Requiere interacción con los usuarios Consideraciones para un test de calidad: 1.Redirigir las pruebas a personal bajo contrato y responsabilidades legales en cuanto a concienciación y obligaciones de seguridad 2.No hacer pruebas directas al personal que no ha sido informado en cuanto a seguridad que no tengan responsabilidades en el trabajo. 3.Derechos de los trabajadores! El analista debe abstenerse de identificar a las personas, únicamente usarlo como base estadística.
47 www.upc.edu Human Security Testing Estudios iniciales: Políticas Legislación y regulaciones Cultura Relaciones Cultura regional Económico
48 www.upc.edu Human Security Testing Verificar detección activa Observación de los canales de soporte y help desk Si monitorizados por control de calidad Comprobar la respuesta de los canales según: –Autenticación, peticiones repetitivas y su tratamiento, delegación,… Comprobación de tipo de respuesta de los canales de soporte sin confirmación de supervisor Tipo de asistencia a través del operación (personal o automática)
49 www.upc.edu Human Security Testing Administrador: Buenos dias, 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 sistemas.upc.edu 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 rudolf. Por favor, nada más conectar, no olvide cambiarla. Atacante: Por supuesto. Muchas gracias, ha sido muy amable. Administrador: De nada, un saludo.
50 www.upc.edu Human Security Testing Verificar acceso Proceso de acceso Autorización Autenticación
51 www.upc.edu Human Security Testing Comprobación de acceso Falsificación Fraude Phishing, smishing, vishing Abuso de acceso a recursos
52 www.upc.edu Human Security Testing
53 www.upc.edu Human Security Testing Phishing en Twitter
54 www.upc.edu Human Security Testing Verificación de controles No repudio Confidencialidad Privacidad Integridad
55 www.upc.edu Human Security Testing Verificar la concienciación en seguridad Planes de concienciación (cursos y charlas) Concienciación de las políticas de seguridad de la empresa Posibilidad de romper la política de seguridad o eludirla por un atacante
56 www.upc.edu Human Security Testing Verificar recursos “pirata” Separación entre recursos privados y personales con los de la empresa Verificar exposición de información personal Verificar privilegios de las credenciales
57 www.upc.edu Human Security Testing Principios fundamentales: Mínimo privilegio Conocimiento parcial Rotación de funciones Separación de funciones
58 www.upc.edu Diagramas DAES Estratégia Técnica Via
59 www.upc.edu Metadatos
60 www.upc.edu Metadatos Vocal-asesora de Doña Fátima Bañez Filtración del ERE del PSOE en la Razón
61 www.upc.edu SHODAN
62 www.upc.edu ¿Qué es SHODAN? SHODAN es un buscador Es muy diferente de otros buscadores (GOOGLE)(Yahoo) Los buscadores tradicionales buscan información en la web y la organizan para las búsquedas SHODAN interroga puertos y registra los banners, luego organiza estos banners para las búsquedas
63 www.upc.edu ¿Qué es SHODAN?
64 www.upc.edu ¿Qué es SHODAN? Símbolos cuotidianos Las operaciones + y – nos permiten incluir y/o excluir términos en la búsqueda El + es implícito
65 www.upc.edu ¿Qué es SHODAN? FILTROS: country: id de dos letras del país Hostname: texto específico en hostname o dominio Net: para rango específico Os: para sistema operativo concreto Port: para servicios específicos
66 www.upc.edu Pentesting Código de estado de HTTPdescripción 200 OKPetición aceptada 301 Moved PermanentlyAsignada una nueva URI permanente 302 FoundReside en otra URI 401 UnauthorizedPetición requiere autenticación 403 ForbiddenPetición denegada (sin tener en cuenta autenticación)
67 www.upc.edu Pentesting 200 OK banner nos carga una pagina web sin autenticación (al menos en un principio) 301 y 302 indica que no hay contenido (nos es útil para filtrar ruido de la búsqueda)
68 www.upc.edu Pentesting Servidores apache en Barcelona: apache city:”Barcelona” Dispositivos Cisco en España: Cisco country:ES Servidores apache en la subred 147 apache net:147.0.0.0/8 Microsoft-IIS corriendo en Windows 2003: microsoft-iis os:"windows 2003” 81.202.66.7
69 www.upc.edu FOCA Herramienta para la realización de procesos de fingerprinting e information gathering en trabajos de auditoría web.
70 www.upc.edu FOCA Práctica new project dominio -> start Ir al servidor -> Dominio->files->search Curiosear lo encontrado!
71 www.upc.edu Maltego Herramienta permite recolectar información (Information Gathering) de una manera sencilla, rápida y visual. Se basa en entidades, que son objetos sobre los que se aplicarán determinadas acciones que se conocen como transformadas. Utilizaremos transformadas de shodan
72 www.upc.edu Maltego Práctica
73 www.upc.edu Google Hacking Búsquedas avanzadas (Google dorks) Términos de consulta o símbolos que realizan acciones especiales Filtrado mucho más efectivo Operadores: Site,intitle,allintitle,inurl,allinurl,filetype,allintext,link,daterange,cache,info,…
74 www.upc.edu Google Hacking Clasificada en varias categorías: Vulnerabilidades Mensajes de error Archivos con contraseñas Portales de entrada Detección de servidor web Archivos sensibles Detección de dispositivos
75 www.upc.edu Google Hacking Consulta: intitle:index.of “parent directory” Búsqueda de directorios/archivos específicos intitle:index.of inurl:admin intitle:index.of ws_ftp.log Inurl: backup intitle:index.of inurl:admin Búsqueda de servidores Apache: intitle:index.of “Apache/*” “server at” IIS: intitle:index.of “Microsoft-IIS/* server at”
76 www.upc.edu Google Hacking Nombres de usuario: “access denied for user” “using password” Estructura de la base de datos Filetype:sql “# dumping data for table” Inyección de SQL “Unclosed quotation mark before the character string” Código fuente SQL: intitle:"Error Occurred" "The error occurred in” “incorrect syntax near” Contraseñas: filetype:inc intext:mysql_connect filetype:sql "identified by" - cvs Detección de archivos la base de datos: filetype:mdb inurl:users.mdb filetype:mdb inurl:email inurl:backup
77 www.upc.edu Google Hacking Nombres de usuario y contraseñas intitle:index.of passwd intitle:"Index.of..etc" passwd intitle:index.of pwd.db passwd intitle:index.of ws_ftp.ini intitle:index.of people.lst intitle:index.of passlist intitle:index.of.htpasswd intitle:index.of “.htpasswd” htpasswd.bak filetype:reg reg intext:"internet account manager“ filetype:mdb inurl:profiles “http://*:*@www”
78 www.upc.edu Protección del servidor Bloqueo de buscadores mediante robots.txt User-agent: googlebot Disallow: /directorio/archivos No indexar: No almacenar en caché:
79 www.upc.edu Google Hacking Práctica