Análisis de Vulnerabilidades
Las Vulnerabilidades de seguridad informática han existido siempre. A medida que se hacían conocidas diferentes vulnerabilidades, también se publicaban herramientas de seguridad y parches con el objetivo de ayudar a los administradores. Actualmente, Internet representa una gran fuente de información donde existe mucha más cantidad de referencias sobre cómo ingresar a sistemas que sobre cómo protegerlos. La seguridad de la red comprende tanto la protección física de los dispositivos como también la integridad, confidencialidad y autenticidad de las transmisiones de datos que circulen por ésta.
La siguiente lista resume los puntos que comprende la seguridad de una red: La información debe estar protegida de una posible destrucción o modificación accidental o intencional (integridad). Los datos no deben estar disponibles a los accesos no autorizados (privacidad) Las transacciones no deben ser modificadas en su trayecto y se debe asegurar que quien las generó es quien dice ser (integridad,autenticidad y no repudio). Se mantenga la integridad física de los dispositivos de red como servidores, switches, etc. El uso de la red no debe ser con fines que no estén contemplados por las políticas de utilización. La red debe estar disponible siempre y con la eficiencia necesaria, aún ante fallas inesperadas (disponibilidad).
A través de un análisis de vulnerabilidades, un analista en seguridad puede examinar la robustez y seguridad de cada uno de los sistemas y dispositivos ante ataques y obtener la información necesaria para analizar cuáles son las contramedidas que se pueden aplicar con el fin de minimizar el impacto de un ataque. El análisis de vulnerabilidades debe realizarse: Cuando ocurran cambios en el diseño de la red o los sistemas. Cuando se realicen actualizaciones de los dispositivos. Periódicamente.
Métodos Caja Negra: Al analista se le proporciona sólo la información de acceso a la red o al sistema (podría ser sólo una dirección IP). A partir de esta información, el analista debe obtener toda la información posible Caja Blanca: El analista de seguridad tiene una visión total de la red a analizar, así como acceso a todos los equipos como super usuario. Este tipo de análisis tiene la ventaja de ser más completo y exhaustivo
Test de Penetración: Durante el test de penetración el analista de seguridad simula ser un atacante. Desde esta posición, se realizan varios intentos de ataques a la red, buscando debilidades y vulnerabilidades: Estudio de la red externa. Análisis de servicios disponibles. Estudio de debilidades. Análisis de vulnerabilidades en dispositivos de red. Análisis de vulnerabilidades de implementaciones y configuraciones. Denegación de servicio. El resultado del test de penetración mostrará una idea general del estado de la seguridad de los sistemas frente a los ataques. Si se encontraran una o más vulnerabilidades, no se realiza su explotación.
Como conclusión de este paso, se debe obtener un informe que indique: Pruebas de seguridad realizadas en el test. Lista de vulnerabilidades y debilidades encontradas. Referencia técnica a estas vulnerabilidades y sus contramedidas. Recomendaciones.
Las vulnerabilidades provienen de diferentes ámbitos y las podemos clasificar en: Vulnerabilidades de implementación. Vulnerabilidades de configuración. Vulnerabilidades de dispositivo. Vulnerabilidades de protocolo. Vulnerabilidades de aplicación
Existen diversas herramientas que se pueden utilizar para realizar un análisis de vulnerabilidades: Escaneo de puertos. Detección de vulnerabilidades. Analizador de protocolos. Passwords crackers. Ingeniería social. Trashing Existen sitios donde encontrará información muy diversa, desde publicaciones y bibliografía específica en seguridad, hasta repositorios de vulnerabilidades con sus exploits: CERT Computer Emergency Response Team SANS SysAdmin, Audit, Network, Security NSA National Security Agency NIST National Institute of Standards and Technology
Los pasos a seguir para llevar a cabo un análisis de vulnerabilidades comprenden Acuerdo de confidencialidad entre las partes Establecer las reglas de juego Reunión de información Test Interior Test exterior Documentación e informe
Acuerdo de confidencialidad entre las partes Es importante realizar un acuerdo de confidencialidad entre todas las partes involucradas en el análisis. A lo largo del desarrollo del análisis se puede obtener información crítica para la organización analizada. Desde el punto de vista de la organización, debe existir confianza absoluta con la parte analizadora. Desde el punto de vista del analizador, el acuerdo de confidencialidad le ofrece un marco legal sobre el cual trabajar. Es un respaldo formal a su labor.
Establecer las reglas del juego Antes de comenzar con el análisis de vulnerabilidades es necesario definir cuáles van a ser las tareas a realizar, y cuáles serán los límites, permisos y obligaciones que se deberán respetar. Durante el análisis, deben estar informadas la menor cantidad de personas, de manera que la utilización de la red por parte del personal sea normal, se deben evitar cambios en la forma de trabajo.
Reunión de información Un análisis de vulnerabilidades comienza con la obtención de información del objetivo. Si se ha seleccionado realizar un test por caja negra, el proceso de análisis será muy similar al proceso seguido por un atacante. Si utiliza un método de caja blanca, éste es el momento para recopilar la información de acceso a servicios, hosts y dispositivos, información de direccionamiento, y todo lo que considere necesario.
Test Interior El Test Interior trata de demostrar hasta donde se puede llegar con los privilegios de un usuario típico dentro de la organización. Para realizarlo se requiere que la organización provea una computadora típica, un nombre de usuario y una clave de acceso de un usuario común. Se compone de numerosas pruebas, entre las que podemos citar:
Revisión de Privacidad Testeo de Aplicaciones de Internet Testeo de Sistema de Detección de Intrusos Testeo de Medidas de Contingencia Descifrado de Contraseñas Testeo de Denegación de Servicios Evaluación de Políticas de Seguridad
Test Exterior El principal objetivo del Test Exterior es acceder en forma remota a los servidores de la organización y obtener privilegios o permisos que no deberían estar disponibles. El Test Exterior puede comenzar con técnicas de Ingeniería Social, para obtener información que luego se utilizará en el intento de acceso. Los pasos del estudio previo de la organización deben incluir:
1. Revisión de la Inteligencia Competitiva: Información recolectada a partir de la presencia en Internet de la organización. 2. Revisión de Privacidad: Es el punto de vista legal y ético del almacenamiento, transmisión y control de los datos basados en la privacidad del cliente. 3. Testeo de Solicitud: Es un método de obtener privilegios de acceso a una organización y sus activos preguntando al personal de entrada, usando las comunicaciones como un teléfono, e-mail, chat, boletines, etc. desde una posición privilegiada fraudulenta. 4. Testeo de Sugerencia Dirigida: En este método se intenta lograr que un integrante de la organización ingrese a un sitio o reciba correo electrónico, en este sitio o correo se podrían agregar herramientas que luego serán utilizadas en el intento de acceso.
Una vez que se recopiló esta información, se procede a realizar las siguientes pruebas: Sondeo de Red Identificación de los Servicios de Sistemas Búsqueda y Verificación de Vulnerabilidades Testeo de Aplicaciones de Internet Enrutamiento Testeo de Relaciones de Confianza Verificación de Radiación Electromagnética (EMR) Verificación de Redes Inalámbricas [802.11]
Documentación e Informe Como finalización del análisis de vulnerabilidades se debe presentar un informe donde se detalle cada uno de los tests realizados y los resultados. En este informe se debe especificar: Lista de vulnerabilidades probadas Lista de vulnerabilidades detectadas Lista de servicios y dispositivos vulnerables El nivel de riesgo que involucra cada vulnerabilidad encontrada en cada servicio y dispositivo. Como anexo se deben incluir los resultados de los programas utilizados.
Fin