Mostrando entradas con la etiqueta auditoría de seguridad informática. Mostrar todas las entradas
Mostrando entradas con la etiqueta auditoría de seguridad informática. Mostrar todas las entradas

miércoles, 18 de febrero de 2015

¿Qué es un análisis forense de sistemas informáticos?

El análisis forense es un área perteneciente al ámbito de la seguridad informátcia surgida a raíz del incremento de los diferentes incidentes de seguridad. En el análisis forense se realiza un análisis psoterior de los incidentes de seguridad, mediante el cual se trata de reconstruir como se ha penetrado o vulnerado en el sistema. Por tanto, cuando se está realizando un análisis forense se intenta responder a las preguntas que ofrecerán las respuestas e información adecuadas para preservar nuestros sistemas de información con riesgos minimizados.

Desgracidamente, muchos consultores de seguridad se limitan a proporcionar listas detalladas con conclusiones de sus pruebas, sin intentar realizar un el análisis de orden superior para responder a la pregunta "por qué".

 Figura 1. "Para un atacante nunca es imposible penetrar en un sistema informático, únicamente es improbable".

       ¿Quién ha realizado el ataque?

   ¿Cómo se realizo?
 
   ¿Qué vulnerabilidades se han explotado?

   ¿Qué hizo el intruso una vez que accedió al sistema?

   Etcétera.

El área de la ciencia forense es la que más ha evolucionado dentro de la seguridad, ya que (tal y como se muestra en las siguientes figuras) los incidentes de seguridad han incrementado en los últimos años. Además, los ataques son difrentes y por tanto hay que actualizar las técnicas de análisis en cada momento.

 
 Figura 2. Gráfico correspondiente a la "cibercriminalidad" del Ministerio del Interior.

El procedimiento utilizado para llevar a cabo un análisis forense es el siguiente:

• Estudio￿ preliminar. En esta fase se realiza un estudio inicial mediante entrevistas y documentación entregada por el cliente con el objetivo de tener una idea inicial del problema que nos vamos a encontrar.

• Adquisición￿de￿datos. Se realiza una obtención de los datos e informaciones esenciales para la investigación. Se duplican o clonan los dispositivos implicados para un posterior análisis. En esta fase habrá que tener mucho cuidado en la adquisición de los datos puesto que cabe la posibilidad de
incumplir los derechos fundamentales del atacante.

• Análisis￿e￿investigación. Se realiza un estudio con los datos adquiridos en la fase anterior. En esta fase también habrá que tener mucho cuidado puesto que cabe la posibilidad de incumplir los derechos fundamentales del atacante.

• Realización￿del￿informe. En esta fase se elabora el informe que será remitido a la dirección de la organización o empresa. Posteriormente, se podrá usar para acompañar la denuncia que realicemos a la autoridad competente.

 Figura 3. Ejemplo de fases proporcionado por ragonjar.org

¿Qué es un análisis forense?

Una vez hemos visto cuál ha sido la motivación que produce el análisis forense,
nos centraremos y describiremos más detalladamente dicha ciencia.

El análisis forense en un sistema informático es una ciencia moderna que permite reconstruir lo que ha sucedido en un sistema tras un incidente de seguridad. Este análisis puede determinar quién, desde dónde, cómo, cuándo y qué acciones ha llevado a cabo un intruso en los sistemas afectados por un incidente de seguridad.

Incidentes de seguridad
 Un incidente de seguridad es cualaquier acción fuera de la ley o no autorizada: ataques de denegación de servicio, extorsión, posesión de pornografía infantil, envío de correos electrónicos ofensivos, fuga de información confidencial dentro de la organización..., en cual está involucrado algún sistema telemático de nuestra organización.

Figura 4. Visualización ejemplo de un archivo log.

Las fuentes de información que se utilizan para realizar un análisis forense, son diversas:

     - Correos electrónicos.
     - IDS/IPS.
     - Archivos de logs de los cortafuegos.
     - Archivos de logs de los sistemas.
     - Entrevistas con los responsables de 
       seguridad y de los sistemas.
     - Etcétera.

Figura 5. Esquema de sistema información en red.

Metodología en un incidente de seguridad 
    
Los incidentes de seguridad normalmente son muy complejos y su resolución presenta muchos problemas. A continuación se muestran las siguientes fases en la prevención, gestión y detección de incidentes:

1)￿Preparación￿y￿prevención. En esta fase se toman acciones para preparar la organización antes de que ocurra un incidente. Por tanto, se deberá empezar por tratar de analizar qué debe ser protegido y qué medidas técnicas y organizativas tienen que implementarse. Una vez hechos los diversos análisis se podrá considerar que la organización ya tiene identificadas las situaciones que pueden provocar un incidente de seguridad y ha seleccionado los controles necesarios para reducirlas.

Pero aun hecho dicho análisis, siempre hay situaciones que no van a poder ser protegidas, por lo que se tendrá que elaborar un plan de continuidad de negocio. Dicho plan está formado por un conjunto de planes de contingencia para cada una de las situaciones que no están controladas.

2)￿Detección￿del￿incidente. La detección de un incidente de seguridad es una de las fases más importante en la securización de los sistemas. Hay que tener en cuenta que la seguridad absoluta es muy difícil y es esta fase la que nos sirve para clasificar y priorizar los incidentes acaecidos en nuestra organización. La clasificación es la siguiente:

• Accesos no autorizados: un usuario no autorizado accede al sistema.

• Código malicioso: ha habido una infección de programas maliciosos (virus, gusano spyware, troyano, etc.) en un sistema.

Figura 6. Ejemplo de detección código malicioso.

Programas maliciosos

   A) Virus: es un archivo ejecutable que desempeña acciones (dañar archivos, reproducirse, etc) en un ordenador sin nuestro consentimiento.
   B) Gusano: es un código malicioso que se reproduce y extiende a un gran número de ordenadores.
  C) Spyware: es un programa que recopila información de un ordenador y la envía a terceras personas sin el consentimiento del propietario.
   D)Troyano: también conocido como caballo de troya, es un programa que obtiene las contraseñas haciéndose pasar por otro programa. 

- Denegación de servicio: incidente que deja sin dar servicio (dns, web, correo electrónico, etc.) a un sistema.

- Phishing: consiste en suplantar la identidad de una persona o empresa para estafar. Dicha estafa se realiza mediante el uso de ingeniería social consiguiendo que un usuario revele información confidencial (contraseñas, cuentas bancarias, etc.). El atacante suplanta la imagen de una empresa u organización y captura ilícitamente la información personal que los usuarios introducen en el sistema.

Dos casos de phishing

En el año 2006 la Agencia Estatal de Administración Tributaia (AEAT) sufrió un ataque de phishing que se llevó a cabo mediante dos fases. La primera un envío masivo de correos electrónicos suplantando la identidad de la AEAT. En la segunda fase trataron de obtener dinero ilegalmente con la información que solicitaron haciéndoso pasar por AEAT.
 
Figura 7. Ejemplo de phishing.

Aprovechando las fechas del cierre del impuesto de valor añadido (IVA) se solicitaba el acceso a un enlace para poder optar a la deducción fiscal. Al acceder a la web trampa, se solicitaban datos como la tarjeta de crédito, entre otros, para obtener la información y poder estafar a los usuarios. La siguiente figura muestra las webs trampas. 

Éstas eran idénticas a la web de la AEAT por esas fechas.

Figura 8. Ejemplo de formulario fraudulento para obtener datos personales.

• Recogida de información: un atacante obtiene información para poder realizar
otro tipo de ataque (accesos no autorizados, robo, etc.).

• Otros: engloba los incidentes de seguridad que no tienen cabida en las categorías anteriores.

La detección de un incidente de seguridad se realiza a través de diversas fuentes.

A continuación se enumeran algunas de ellas:

• Alarma de los antivirus.
• Alarmas de los sistemas de detección de intrusión y/o prevención (IDS y/o
IPS).
• Alarmas de sistemas de monitorización de los sistemas (zabbix, nagios,
etc.).
• Avisos de los propios usuarios al detectar que no funcionan correctamente los sistemas informáticos.
• Avisos de otras organizaciones que han detectado el incidente.
• Análisis de los registros de los sistemas.

Una vez detectado el incidente a través de cualquier vía, para poder gestionarlo es recomendable tener al menos los siguientes datos:

•  Hora y fecha en la que se ha notificado el incidente.

•  Quién ha notificado el incidente.

• Clasificación del incidente (accesos no autorizados, phishing, denegación de servicio, etc.).

• Hardware y software involucrado en el incidente (si se pueden incluir los
números de serie, es recomendable).

• Contactos para gestionar el incidente.
• Cuándo ocurrió el incidente.

Si en dicha incidencia se encuentran involucrados datos de carácter personal,es de obligado cumplimiento, según el Real Decreto de Desarrollo de la LOPD, un registro de incidencias. En la figura 5 se muestra un ejemplo de un registro de incidencias.

Figura 9. Ejemplo de formulario para comunicar incidencias a la AEPD.
 
3)￿Respuesta￿inicial. En esta fase se trata de obtener la máxima información posible para determinar qué tipo de incidente de seguridad ha ocurrido y así poder analizar el impacto que ha tenido en la organización. La información obtenida en esta fase será utilizada en la siguiente para poder formular la estrategia a utilizar. Dicha información será fruto como mínimo de:

Entrevistas con los administradores de los sistemas.

• Revisión de la topología de la red y de los sistemas.
• Entrevistas con el personal de la empresa que hayan tenido algo que ver
con el incidente con el objetivo de contextualizarlo.
• Revisar los logs de la detección de la intrusión.

4)￿Formulación￿de￿una￿estrategia￿de￿respuesta￿
ante￿el￿incidente. 

Una vez recabada la información de la fase anterior, hay que analizarla para después tomar una decisión sobre cómo actuar. Las estrategias a utilizar dependerán de varios factores: criticidad de los sistemas afectados, si el incidente ha salido a la luz pública, la habilidad del atacante, cómo de sensible es la información a la que se ha tenido acceso, si el sistema de información está caído y la repercusión que esto tiene, etc.

Estrategias de respuesta

Si la web corporativa ha sido atacada y modificada, una estrategia recomendada en este caso sería: reparar la web, monitorizarla, investigarla mientras este online. En el caso que haya un robo de información la estrategia recomendada seria: clonar los sistemas que hayan sido implicados, investigar el robo, realizar un informe, registrarlo en el registro de incidencias cumpliendo la LOPD y denunciarlo ante los Cuerpos del Estado o en los juzgados.

5)￿Investigación￿del￿incidente. En esta fase se determina quién, cuándo, dónde, qué, cómo y por qué ha ocurrido el incidente. Para investigar dicho incidente se divide el proceso en dos fases:

• Adquisición￿de￿los￿datos. La obtención de los datos es la acumulación de pistas y hechos que podrían ser usados durante el análisis forense de los ordenadores para la obtención de evidencias.

Obtención de datos
Los datos a obtener son los siguientes: evidencias de los sistemas involucrados (obtención de los datos volátiles, obtención de la fecha y hora del sistema, obtención del timestamp de los ficheros involucrados, obtención de los ficheros relevantes, obtención de las copias de seguridad, etc.), evidencias de los equipos de comunicaciones (logs de los IDS/IPS, logs de los routers, logs de los cortafuegos, obtención de las copias de seguridad, logs de autenticación de los servidores, logs de la VPN, etc.), obtención de los testimonios de los afectados, etc.
• Análisis￿forense. En esta fase se revisan todos los datos adquiridos en la fase anterior.

6)￿Redacción￿del￿informe. En esta última fase se redacta un informe que será entregado a la dirección de la organización o empresa así como a los cuerpos de policía del Estado o al juzgado si el incidente se denuncia. Dicho informe puede ser de dos clases: ejecutivo y técnico. 

El informe ejecutivo es un informe enfocado a personas sin conocimientos técnicos, mientras que el informe técnico explica de una manera técnicamente detallada el procedimiento del
análisis. Se describirá más adelante, en el apartado relativo a la redacción del informe.


En próximos post, trataremos los diferentes tipos de Análisis Forenses, y sus principales características.

sábado, 10 de enero de 2015

Para proteger nuestros sistemas (I): ¿Qué es un pentesting?

Pen Test o “Test de penetracion(Penetration Tests o Pentesting)son los términos más comunes para denominar el conjunto de técnicas utilizadas para realizar una auditoría de seguridad y análisis forense de datos para evaluar el grado de seguridad de redes, sistemas de computación y/o información, tanto como las aplicaciones que participan en el sistema, esto incluye el sitio web.


Figura 1. Lara Croft, protagonista del videojuego 'Tomb Raider'.
  
Cada día, aumenta la preocupación por la Ciberseguridad y los Ciberataques, indistintamente de la responsabilidad que ocupes en la empresa y/o institución, es seguro que llevas tiempo preocupado por mejorar los sistemas de protección, o te has propuesto hacerlo. 

Es ususal que la Pyme encargue el proyecto de diseño de su web, porque desea comercializar sus productos, o repercutir en positivo en la Reputación Online de su imagen de marca; la implementación sistemas de seguridad dota de cierta confianza a los responsables, obviando realizar las recomendadas Auditorías de Seguridad Informática

 Figura 2.  'Kali Linux' de los creadores de 'Back Track 5'  (software libre para realizar Pentesting). 

Realizar Pentesting, no es una operación fácil y requiere estar dotados de los suficientes conocimientos y experiencia los sistemas, aplicaciones, comportamientos de los sistemas operativos, etcétera... que nos proponemos auditar.  

Estas técnicas, se denominan comumente: Black, White o Ethical Hacker y tienen como objetivos proponer a la empresa o institución, las vulnerabilidades del sistema analizado. Se usan para acceder al propio sistema, y en esto se diferencian del “análisis de vulnerabilidades” que en ningún momento comtempla la penetración en la red interna.
 
Es habitual entregar el informe de auditoría de seguridad indicando que es posible acceder a todo el sistema o gran parte; además, se suelen detectar vulnerabilidades de nivel inferior (fallos de configuración), que terminan dejando la puerta de atrás abierta a los posibles atacantes (intesados en la información o en destrozar parte de ella). 


Técnicas de este tipo, también son usadas por grupos como Anonymous. Hace unas horas han declarado la guerra a los terroristas con motivo del atentado a Charlie Hebdo. Estoy completamente seguro de que van a jugar un papel protagonista, una vez más, en la lucha contra los delicuentes y asesinos.
 
 Figura 3.  Anonymous, uno de los grupos que promueven el 'Hacktivismo Ético'.


Técnicamente, si la empresa realiza con cierta frecuencia auditorías de seguridad, se puden encontrar vulnerabilidades provocadas por errores simples. Comparto uno de los casos de ataque que ha sufrido  la web de la Presidencia Europea de España


Los sistemas de información, tienen ciclo vital. Durane ese ciclo han debido soportar entre otros, las auditorías de seguridad; no obstante, no debería ser un contrato por obra o prestación de servicio puntualmente, sino un servicio de prevención de ataques 24x7. De la misma forma, el sistema debería soportar Pentesting desde la fase de diseño, y su posterior implantación. De lo contrario, si has contratado un servicio anual, o puntual, la única conclusión es que te van a demostrar que es posible penetrar en el sistema.

 Figura 4.  Esquema de las Fases del Pentesting.

El Pentesting no es una acción concreta, sino múltiples procesos(etapas) dividas por entornos, áreas y trabajos concretos. En esto influye la evaluación del grado de los riesgos que comportan las vulnerabilidades del sistema. Quiere esto decir, que siempre se comienza por la parte que más riesgo (aperturas) comporta para el resto del sistema.


Tras acuerdo con el cliente para realizar los diferentes procesos de análisis (esque suceptible de modificación y/o adaptación), se realizan las siguientes actividades:

  • Fase de reconocimiento: Es seguro, de las etapas que más tiempo requiere. En ella, se definen objetivos y se recopila toda la información posible para posteriormente utilzizar durante todo el Pentesting. La profundidad del análisis, viene dada por los objetivos se hayan fijado previamente, no obstante, los datos tipos requeridos en esta fases son:nombres y direcciones de correo de los empleados de la organización, topología de la red, direcciones IP, metadatos en documentos, información exif, etcétera.
  •  
  • Fase de escaneo: Con la información recopilada, se analizan los posibles vectores de ataque. Es fase desiva para evaluar (escanear) puertos y servicios del sistema. Una vez hecho esto, se está en disposición de poder escanear las vulnerabilidades y permitirnos definir los vectores de ataque.
  •  
  • Fase de enumeración: En la que se trata de obtener los datos referentes a los usuarios, nombres de equipos, servicios de red, etcétera. Para ello, se realzian conexiones activas y se ejecuntan consultas de forma persistente.
  •  
  • Fase de acceso: En esta etapa el objerivo es haber econtrado las puertas abiertas a raíz de toda la información sobre el sistema obtenida en las fases anteriores.  
  •  
  • Fase de mantenimiento de acceso: Tras conseguir el acceso, se proponen las soluciones y se tratan de implantar de forma permanete para no dejar posibles huecos.

 Figura 5.  Kit de herraminetas básicas 'Network Tools'.

 Con todo este trabajo, se genera la documentación correspondiente al pentesting. Servirá como guía (hitos) para tomar las decisiones necesarias para preservar la seguridad.


 En próximos post, tratareos con más detalle estas técnicas y las herramientas que podemos utilizar para ejecutar los trabajos.

          -------------------- TO BE CONTINUED --------------------