Técnicas del Penetration Testing



Documentos relacionados
Penetration Test Metodologías & Usos

Adelantándose a los Hackers

Elementos requeridos para crearlos (ejemplo: el compilador)

Cómo trabaja el Atacante? El atacante trabaja en 5 pasos, los cuales son: Ethical-Hacker.net. Reconocimiento. Borrado de Huellas.

3-ANÁLISIS DE VULNERABILIDADES

Test de intrusión (Penetration Test) Introducción

Seguridad Informática con Software Libre

La importancia de las pruebas de penetración (Parte I)

Hacking en 5 pasos usando Software libre


El estado del arte de la Seguridad Informática

Aspectos Básicos de Networking

CONCEPTOS GENERALES SOBRE SEGURIDAD INFORMATICA

Seguridad en Servicios de Hosting

MANUAL DE AYUDA TAREA PROGRAMADA COPIAS DE SEGURIDAD

Normas de Seguridad de Datos de la Industria de Tarjetas de Pago (PCI)

S o l u c i o n e s I n f o r m a t i c a s. Soluciones a un solo clic

Introducción a las redes de computadores

ANEXO TÉCNICO No. 2 SERVICIOS DE SEGURIDAD DE LA INFORMACION PARA LA SOLUCIÓN PROVISTA

La Empresa en Riesgo?

Tener la WiFi abierta implica tener nuestra conexión a Internet compartida, además de otros riesgos:

Unidad III. Software para la administración de proyectos.

Presentación. Porqué formarte con nosotros?

TRANSFERENCIA DE FICHEROS FTP

Roles y Características

Control de Acceso: Detección de Intrusiones, Virus, Gusanos, Spyware y Phishing

RETO FORENSE EPISODIO III Resumen Ejecutivo

Práctica de Seguridad en Redes

IAP TÉCNICAS DE AUDITORÍA APOYADAS EN ORDENADOR (TAAO)

SISTEMA DE PAPELES DE TRABAJO PARA AUDITORÍA SPT AUDIT

Visión General de GXportal. Última actualización: 2009

Capacitación Rational Funcional Tester

DIPLOMADO EN SEGURIDAD INFORMATICA

Autenticación Centralizada

SISTEMA DE RASTREO Y MARCADO ANTIRROBO

WINDOWS : TERMINAL SERVER

GeneXus BPM Suite X. Última actualización: 01 de Setiembre de 2008

Paso 2 Una vez se ha completado la instalación y ejecutado el programa, veremos esto

SISTEMA DE RASTREO Y MARCADO ANTIRROBO

Estado de la Seguridad Informática

Metasploit framework, al igual que nessus, su versión paga es mucho más informática que la gratuita.

Política de Seguridad

UD 1: Adopción de pautas de seguridad informática

Metodología básica de gestión de proyectos. Octubre de 2003

Sistema de Control de Accesos API-WIN

Del Penetration Test a la Realidad

Descripción. Este Software cumple los siguientes hitos:

METODOLOGÍA PARA REALIZAR UNA AUDITORÍA INFORMÁTICA.

Certified Offensive and Defensive Security Professional - Entrenamiento E-learning - 3-SCANNING.

White Paper Gestión Dinámica de Riesgos

AUDITORÍAS TÉCNICAS PARA LA CERTIFICACIÓN DE LOS SISTEMAS DE RECOGIDA DE INICIATIVAS CIUDADANAS EUROPEAS


Infraestructura Tecnológica. Sesión 2: Mejoras adicionales al servidor de archivos

POLÍTICA DE PRIVACIDAD PARA APLICACIONES MÓVILES GRUPOCOPESA. 1. información que se obtiene la aplicación y su utilización

Auditorías de Seguridad: revisión como método de prevención. Vicente Aguilera Díaz Internet Security Auditors, S.L.

Consideraciones para el reconocimiento del Dispositivo de Protección USB en una red.

SOLUCIONES EN SEGURIDAD INFORMATICA

(PHP y APACHE), y el programa de comunicación Skype, para controlar de manera

Seguridad Informática: Test de intrusión

Funcionalidades Software SAT GotelGest.Net (Software de Servicio de Asistencia Técnica)

la red de Internet PRODIGY para poder tener acceso al sistema RAGNVALD vía Internet

Semana 10: Fir Fir w e a w lls

Instalación del Software Magaya

PROCESO DE VENTA CONSULTIVA MÓDULO DE GESTIÓN DE OPORTUNIDADES DE NEGOCIO

Gestión de Proyectos con Open Project

Beneficios estratégicos para su organización. Beneficios. Características V


Software de administración de impresoras MarkVision

Acronis License Server. Guía del usuario

Vulnerabilidades de los sistemas informáticos

Proceso Unificado de Rational PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes:

CRM. Customer Relationship Management Sistema de Gestión Inteligente de Mercadeo y Ventas. Sistema de Gestión Inteligente de Mercadeo y Ventas

Guía de Apoyo Project Web Access. (Jefe de Proyectos)

1 El trabajo expuesto está subvencionado por el proyecto de la URJC PGRAL-2001/14

Marco Normativo de IT

Infraestructura Tecnológica. Sesión 1: Infraestructura de servidores

SIEWEB. La intranet corporativa de SIE

Sistema Gestión Licitación para la compra del desarrollo y migración del Sistema de Gestión de Activos y Configuraciones para Plan Ceibal

Windows Server 2012: Infraestructura de Escritorio Virtual

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso

Requerimientos Técnicos para mantenimiento anual de certificación del Área Perimetral

Gestión de Redes IP. Presentación realizada por: Ing. Pablo Borrelli. Gestión de Redes IP 1

SCT Software para la calibración de transductores de fuerza. Versión 3.5. Microtest S.A.

Clientes de XProtect Acceda a su vigilancia

Configuración y uso de la aplicación SG SmartPanics: usuario final. PRESENTACIÓN DE LA APLICACIÓN

TECNOLOGIAS DE INFORMACION GUBERNAMENTAL OFICINA DE GERENCIA Y PRESUPUESTO

Ethical Hacking. Capacitación IT 13/03/2013. Federico

COMO CONFIGURAR UNA MAQUINA VIRTUAL EN VIRTUALBOX PARA ELASTIX

Escudo Movistar Guía Rápida de Instalación Dispositivos Symbian

D.T.Informática S.L. [Sistema hada] hilo Administrador Desarrollo Activo

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACIÓN

Diseño dinámico de arquitecturas de información

Programa de soporte y gestión de incidencias efectivo y fácil de usar

Soporte. Misión y Visión

Manual AGENDA DE RESPALDO

Solución Streaming SIVE

Configuración de Aspel-SAE 5.0 para trabajar Remotamente

Gestión de Configuración del Software

Transcripción:

Técnicas del Penetration Testing Victor H. Montero vmontero@cybsec cybsec.comcom Septiembre de 2005 Buenos Aires - ARGENTINA

Agenda - Qué es un Penetration Test? - El rol del PenTest en la Seguridad Informática. - Objetivo y alcance. - Metodología de Penetration Test. - Casos de la vida real. 2

Qué es un Penetration Test? Consiste en emular y simular comportamientos y técnicas que pueden ser utilizadas por los intrusos con el objetivo de analizar el nivel de seguridad y la exposición de los sistemas ante posibles ataques. Permite detectar vulnerabilidades en los Sistemas Informáticos y corregirlas en forma rápida y eficaz. 3

Qué es un Penetration Test? Es un conjunto de metodologías y técnicas que permiten realizar una evaluación integral de las debilidades de los sistemas informáticos. Consiste en un modelo que reproduce intentos de acceso de un potencial intruso desde los diferentes puntos de entrada que existan, tanto internos como remotos, a cualquier entorno informático, permitiendo demostrar los riesgos funcionales de las vulnerabilidades detectadas 4

La Seguridad Informática en los sistemas La Seguridad Informática es Dinámica. Día a día se reportan vulnerabilidades que podrían poner en jaque los sistemas informáticos de cualquier organización. Esto conlleva a la constante actualización de los sistemas y de los conocimientos necesarios para afrontar los nuevos riesgos que aparecen con las distintas vulnerabilidades. Ahora podemos estar seguros. En diez minutos, ya no. 5

La Seguridad Informática en los sistemas Vulnerabilidades de Seguridad Informática reportadas En los últimos años, se registra una estabilidad en la cantidad de vulnerabilidades reportadas. Esto se debe principalmente al incremento en los controles de seguridad en el proceso de desarrollo de software. CERT/CC 6

La Seguridad Informática en los sistemas Cómo hacen los intrusos para ingresar en los sistemas? Definitivamente, no como en Hollywood. Los intrusos aprovechan vulnerabilidades de seguridad, descuidos, y configuraciones inseguras para ingresar en forma no autorizada. El nivel de seguridad informática global de toda una instalación es igual al componente de menor nivel de seguridad. 7

La Seguridad Informática en los sistemas Metodología de una intrusión Los ataques pueden ser perpetrados en forma Externa o Interna. Los ataques externos son más fáciles de detectar y repeler que los ataques internos. El intruso interno ya tiene acceso a la red interna o incluso al mismo Server que quiere atacar. Barreras de Protección Servidores Internos 8

Objetivos de un Penetration Test - Evaluar un proyecto o sistema informático. - Demostrar los riesgos existentes. - Conocer la situación real de la Organización. - Mantenimiento de la seguridad informática. 9

Alcance de un Penetration Test La composición del Penetration Test se define a través del alcance del mismo. Éste debe concretarse en reuniones previas; puede tener un alcance amplio y cubrir toda la organización, o puede ser focalizado sobre un determinado sistema o equipo, por ejemplo un sistema de Home Banking conectado a Internet. También se define en esta instancia el tiempo de ejecución. El Penetration Test debe ser una foto que refleje el estado de la seguridad informática de las instalaciones, por lo tanto, los proyectos de este tipo no suelen extenderse a más de 30 días. 10

Alcance de un Penetration Test En forma general, y de acuerdo al alcance, los proyectos de Penetration Test pueden categorizarse en: Externos. Internos. 11

Alcance de un Penetration Test Penetration Test Externo Durante su ejecución se somete a los sistemas a pruebas de seguridad informática que simulan las que se producen durante la realización de un ataque y/o intento de intrusión desde afuera de la instalación. Algunas de las actividades principales pueden ser: Barrido de líneas telefónicas. Situación de la seguridad en centrales telefónicas. Análisis del sistemas de acceso remoto. Situación de la seguridad en la conexión a Internet. Seguridad en la conexión con otras redes. Seguridad en aplicaciones Web. Seguridad en redes wireless. 12

Alcance de un Penetration Test Penetration Test Interno Durante su ejecución se somete a los sistemas a pruebas de seguridad informática que simulan las que se producen durante la realización de un ataque y/o intento de intrusión desde dentro de la instalación. Algunas de las actividades principales pueden ser: Testing del nivel de seguridad en los dispositivos de red Internos. Testing de seguridad de los principales servidores. Testing de seguridad general de las estaciones de trabajo. Testing de seguridad de las aplicaciones. 13

Quien realiza el Penetration Test? Equipo interdisciplinario de personas, con know-how y experiencia en proyectos de Penetration Testing Normalmente se contratan a Empresas de seguridad informática especializadas. Confianza en la Empresa a contratar (referencias). Explicación detallada de las actividades a realizar. 14

Metodologías y Estándares A nivel mundial existen estándares relacionados con Penetration Testing: BS 7799 e ISO 17799 (Internacional) Open Source Security Testing Methodology Manual Federal Information System Controls Audit Manual (FISCAM) 15

Principales etapas de un Penetration Test 16

Metodología Cómo se realiza un Penetration Test? Se utiliza una metodología de evaluación de seguridad informática que incluye cuatro grandes etapas: 1) Descubrimiento 2) Exploración 3) Evaluación 4) Intrusión Si bien el orden de las etapas no es arbitrario, en muchos casos se paralelizan o adelantan tareas dependiendo de las características de la plataforma evaluada. 17

Metodología - Descubrimiento Etapa de Descubrimiento Se centra en entender los riesgos del negocio asociado al uso de los activos informáticos involucrados. Se realizan investigaciones tratando de recolectar información pública sobre la plataforma tecnológica del cliente, utilizando para ello técnicas pasivas de relevamiento de información. Este procedimiento permite empezar a delimitar las áreas sobre las que luego se focalizará la evaluación. 18

Metodología - Descubrimiento En esta fase, se recolecta la mayor cantidad de evidencia sobre la Empresa para la cual se van a realizar las pruebas. Esta información suele ser: - Rangos de direcciones IP asignados - Direcciones IP de servicios tercerizados - Dirección física de la empresa - Números telefónicos - Nombres de personas y cuentas de correo electrónico - Fuentes de información - Análisis de la página WEB - Existencia de redes inalámbricas (WiFi) 19

Metodología - Descubrimiento 20

Metodología - Exploración Etapa de Exploración Se busca focalizar los objetivos para las posteriores etapas de Evaluación e Intrusión, trabajando en base a los datos obtenidos durante la etapa de Descubrimiento. En esta etapa se aplican técnicas no intrusivas para identificar todos los potenciales blancos. Incluye el análisis de protocolos, relevamiento de plataforma y barreras de protección, scanning telefónico, scanning de puertos TCP y UDP, detección remota de servicios y sistemas operativos, análisis de banners y búsqueda de aplicaciones web. 21

Metodología - Exploración En el trascurso de esta fase, se exploran todas las posibles puertas de entrada a los sistemas, utilizando para ello (a diferencia de la etapa anterior) técnicas activas de reconocimiento. Las tareas que predominan en esta etapa son: - Detección de módems activos - Confirmación de rangos de direcciones IP - Detección de equipos activos e identificación de Sistemas Operativos - Detección de servicios activos e identificación Software y versiones - Detección de barreras de protección - Relevamiento de aplicaciones Web - Análisis de características de configuración en redes WiFi 22

Metodología - Exploración Técnica de Scanning La técnica de scanning permite a los intrusos barrer todo un conjunto de potenciales blancos en busca de alguna característica. Se utiliza por sobre todo en la detección de equipos, servicios y módems activos. - El scanning es legal? - Acceso público y gratuito a las herramientas - La utilización de los mismos puede traer graves consecuencias - Existen países con leyes que repudian y castigan esta actividad 23

Metodología - Evaluación Etapa de Evaluación Se basa en el análisis de todos los datos encontrados para la detección y determinación de vulnerabilidades de seguridad informática que afectan a los sistemas evaluados. Durante esta etapa se realizan las evaluaciones de seguridad en todos los posibles niveles, destacándose las siguientes tareas: - Ejecución de herramientas de scanning de vulnerabilidades. - Búsqueda manual de vulnerabilidades. - Enumeración de usuarios y datos de configuración. 24

Metodología - Evaluación Herramientas de scanning de vulnerabilidades - Buscan automáticamente vulnerabilidades conocidas en los Sistemas Operativos y servicios que se estén ejecutando. - Permiten, en algunos casos, explotar las vulerabilidades detectadas. - Poseen mecanismos para la generación y administración de reportes de distinta índole (Gerenciales, Técnicos, etc). - Facilitan la actualización de las bases de datos de vulnerabilidades. - Algunas herramientas (gratuitas y comerciales): Nessus, Languard, ISS, Retina... 25

Metodología - Evaluación Búsqueda manual de vulnerabilidades Como complemento a la ejecución de herramientas automáticas, es necesario verificar la existencia de vulnerabilidades conocidas que puedan afectar a las versiones del software identificado en cada servicio. Existen numerosos sitios con información sobre vulnerabilidades reportadas. Algunos de ellos poseen bases de datos con exploits públicos, que deben ser descargados y examinados para verificar si pueden ser útiles en la etapa de Intrusión. 26

Metodología - Evaluación Búsqueda manual de vulnerabilidades Sitios de interés... - Security Focus: http://www.securityfocus.com/bid - Packet Storm Security: http://packetstormsecurity.org - SecuriTeam: http://www.securiteam.com - Security Tracker: http://www.securitytracker.com/ - Open Source Vulnerability Database: http://osvdb.org/ - Security Forest: http://www.securityforest.com/ - CERT: http://www.cert.org/ - CVE: http://cve.mitre.org/ - Exploit World: http://www.insecure.org/sploits.html - Phrack: http://www.phrack.org/ 27

Metodología - Intrusión Etapa de Intrusión Se focaliza en realizar pruebas de los controles de seguridad y ataques por medio de secuencias controladas a las vulnerabilidades propias de los sistemas identificados. Aquí se utiliza el conocimiento adquirido en etapas previas para buscar alternativas que permitan acceder a los sistemas y obtener el control de los mismos. Es en esta fase donde se prueba la eficiencia del equipo que lleva a cabo el Penetration Test. 28

Metodología - Intrusión La etapa de Intrusión puede categorizarse como la más compleja de las 4 etapas en un proyecto de Penetration Testing. También es la más emocionante para el equipo de trabajo, ya que es donde se ve reflejado en mayor medida el conocimiento y profesionalismo del mismo. Durante esta etapa se utiliza toda la información recabada en las fases previas, para evaluar todas las alternativas posibles que puedan permitir efectuar una intrusión y escalación de privilegios exitosa. Es importante que el cliente esté informado de aquellas pruebas que pueden acarrear problemas en el funcionamiento de servicios, de modo que se planifique en conjunto el momento más indicado para realizar las tareas. 29

Metodología - Intrusión Qué datos tenemos? - Nombres de usuarios de diversos equipos - Exploits remotos - Líneas telefónicas que admiten el acceso remoto - Ubicación y características de nodos Wireless - Mapa de la plataforma, surgido del análisis de barreras de protección, seguimiento de rutas y detección de hosts activos - Aplicaciones Web vulnerables - Recursos compartidos 30

Metodología - Intrusión Y con esto qué podemos hacer? - Fuerza bruta sobre servicios que autentiquen vía nombre de usuario / contraseña - Ejecución de Exploits remotos - Prueba de usuarios y contraseñas por defecto en accesos telefónicos y servicios conocidos - Cracking de clave de encriptación WEP (si es necesario) y asociación con red Wireless - Explotación de vulnerabilidades en aplicaciones Web que permitan la ejecución de código remoto. - Búsqueda de información de accesos en recursos compartidos - Ingeniería Social 31

Metodología - Intrusión Escalación de privilegios Es raro que en el primer intento consigamos una cuenta administrativa en el servidor más crítico del cliente. Sin embargo, ese es uno de nuestros objetivos. La escalación de privilegios es el proceso por el cual se logra obtener nuevos niveles de acceso en una plataforma dada. Muchas veces, este proceso no es inmediato, y requiere la explotación combinada de dos o más vulnerabilidades para hacerse efectivo. 32

Metodología - Intrusión Escalación de privilegios Ejemplo 1: Caso real en un Penetration Test Interno - Servidores UNIX con servicios por defecto habilitados. - A través del servicio RUsers se enumeran usuarios válidos del sistema y estaciones de trabajo clientes. - Se analizan las estaciones de trabajo usadas como cliente, y se encuentran recursos compartidos con información de accesos administrativos a equipos UNIX de desarrollo. - Se accede a estos equipos UNIX, y se detecta en los mismos la existencia de relaciones de confianza establecidas desde equipos productivos. - Con este dato, se comienza a analizar si existen relaciones de confianza de servidores de desarrollo a servidores productivos. 33

Escalación de privilegios Ejemplo 1: Caso real en un Penetration Test Interno - Se logra acceder a un equipo productivo, explotando una relación de confianza para el usuario root del equipo. - Este equipo productivo, a su vez, posee relaciones de confianza con otros equipos productivos, y de desarrollo, lo que posibilita la toma de control de la plataforma productiva del negocio. - La escalación continúa, hasta tomar el control total no solo a nivel sistema operativo sino de aplicaciones (bases de datos) y dispositivos de comunicaciones centrales.. 34

Metodología - Intrusión Escalación de privilegios Ejemplo I1: Caso real en un Penetration Test Externo - El cliente es un banco del extranjero. Se detecta un servidor Web en el perímetro de la entidad. El servidor se usa principalmente para testing, pero está activo y publicado en Internet. - Se detecta que el equipo corre una versión de IIS cuya instalación por defecto no ha sido modificada. - Bajo estas condiciones, se utiliza el cmd.exe que se incluye en el directorio de scripts para generar en el servidor un archivo.asp con el código necesario para poder ejecutar comandos remotamente desde un formulario web de manera más comoda. El mismo formulario permite también subir archivos al servidor. 35

Metodología - Intrusión Escalación de privilegios Ejemplo I1: Caso real en un Penetration Test Externo - Investigando el servidor, se detecta una base de datos local activa, y se encuentran archivos con información que permite obtener acceso privilegiado a la base de datos. La misma, resulta ser una copia desactualizada de la base utilizada en el sistema de Home Banking. - Investigando un poco la topología de la plataforma, se da con el equipo que mantiene la base de datos productiva de Home Banking. El usuario DBA existente en la copia también existe en la base productiva, con los mismos privilegios, y la misma contraseña 36

Preguntas? 37