Sitio para la difusión de conocimiento informático. 

Twitter RSS

¿Qué es Ethical Hacking?

¿Qué es Ethical Hacking?

A continuación haremos una breve introducción a distintos conceptos utilizados para identificar y diferenciar un “ethical hacking”, de un “pen test”, “security audit”, “vulnerability assessment”; tipos de Pen Test y sus limitaciones.

1) Definiendo Términos.
2) Tipos de “Pen Test” y faces.
3) Limitaciones.
4) Otros métodos para detectar Vulnerabilidades de Seguridad.

 

1) Definiendo Términos:

– Threat (amenaza): agente o actor que puede causar daño.
– Vulnerability (vulnerabilidad): una falla que alguien podría explotar para causar daño.
– Risk (riesgo): código o técnica que una amenaza utiliza para tomar ventaja sobre una vulnerabilidad.

El trabajo de un “pen tester” es modelar las acciones del mundo real que nos amenazan para encontrar vulnerabilidades,  luego explotar estas vulnerabilidades en un ambiente controlado, y así determinar los riesgos del negocio de a una organización. De esta forma se podrán recomendar las defensas apropiadas que pueden ser integradas a la operación de la organización afectada.

Muchas personas utilizan los siguientes términos de forma indistinta sin reparar en su significado:
– Ethical Hacking (hackeo ético).
– Penetration Testing (test de penetración).
– Security/Vulnerability Assessment (asesoramiento en seguridad y vulnerabilidades).

Esto nos lleva a muchas confusiones, por lo que vamos a reconocer el significado de cada uno.

 

1.1) Definición de “Ethical Hacking”

– Hacking (def. tradicional): manipular tecnología para hacer algo para lo que no está diseñado.
– Hacking (def. siniestra): acceder a computadoras y sistemas de redes sin permiso.

Usando el término “ética” en conjunción con “hacking” debería de quitar lo “sinietro” a el hackeo: “Ethical Hacking” -> usar técnicas de ataque para encontrar fallas de seguridad, con el permiso del dueño de la organización que es objetivo de estos ataques, con el objetivo de mejorar la seguridad.

Según wikipedia el término de “White Hat Hacker” puede ser usado indistintamente con “Ethical Hacker”.

 

1.2) Definición de “Penetration Testing”

Penetration Testing pone foco en encontrar vulnerabilidades en un ambiente objetivo al cual un atacante podría penetrar a sistemas de redes o computadoras, y/o robar información:
– Refiere al uso de herramientas y/o técnicas, similares a las utilizadas por los criminales, para encontrar una vulnerabilidad (“para prevenir un crimen, debes prensar como un criminal”).
– El objetivo es penetrar o comprometer el sistema objetivo y obtener acceso a información para determinar el impacto al negocio.

De esta forma, bajo circunstancias controladas, se deben explotar estas fallas en una forma profesional, y segura, siguiendo los objetivos y reglas acordados con el dueño de la organización, para determinar los riesgos y potencial impacto. Todo esto con el objetivo de ayudar a la organización a mejorar sus prácticas de seguridad. Es por esto que “Penetration Testing” es una sub-sección del “ethical hacking”.

 

1.3) Security Assessment (vulnerability assessment)

– Para muchas personas estos términos son utilizados de forma indistinta:
Security Assessmente = Vulnerability Assessment = Penetration Testing;
pero son diferentes:
– Pen Testing: se enfoca en penetrar o robar información. Va más profundo y se enfoca en fallas técnicas.
– Security/Vulnerability Assessment: se enfoca en encontrar vulnerabilidades de seguridad, las cuales que podrían ser usados o no para penetrar en sistemas o robar información. Las asesorías son más amplias e incluyen la revisión de políticas y procedimientos.

 

1.4) Auditorías de seguridad

Las auditorías implican testear rigurosamente una serie de estándares, la mayoría de las veces se lleva a cabo con un detallado “checklist”.
Si bien se podrían crear un “checklist” para llevar a cabo un “pen test”, o asesorías, no son tan profundos y rigurosos como una auditoría.

 

1.5) Motivación

– Encontrar vulnerabilidades antes que los “chicos malos”.
– Tomar decisiones sobre necesidades del negocio y recursos.
– Detectar fallas en con un “pen test” comúnmente ofrece más pruebas respecto a como estamos expuestos al mundo real, y las acciones a tomar en seguridad; en comparación a otros métodos de descubrimiento de vulnerabilidades.

 

1.6) Solucionar Riesgos y Vulnerabilidades

No todas las vulnerabilidades descubiertas deben ser solucionadas. La recomendación será solucionar las vulnerabilidades de riesgo “alto“. Sin embargo la organización puede decidir aceptar el riesgo en vez de mitigarlo, según los propósitos del negocio.

Es por esto que nuestros hallazgos deben ser presentados en términos lo menos técnicos posibles, para ampliar su comprensión a actores que no están familiarizados con los mismos.

 

2) Tipos de Ethical Hacking y Penetation testing

– Testeos de servicios de Red.
– Testeos del lado del cliente.
– Aplicaciones Web.
– Test Dial-UP remoto (War Dialing).
– Testeo de Seguridad Wireless.
– Testeos de Ingeniería Social.

 

2.1) Algunos adicionales

– Test de Seguridad Física.
– Test de robo de equipamiento.
– Ataques de Encriptación.
– Testeo de Seguridad de un Producto.

 

2.2) Fases de un ataque

– Tanto los ataques maliciosos como los éticos coinciden en varias fases en sus ataques:
– Reconocimiento.
– Escaneo.
– Explotación.
Los ataques maliciosos comúnmente agregan las siguientes fases:
– Mantener el Acceso.
– Borrado de Huellas (cubriendo la tarea).

Estas fases no tienen por que seguir un orden; y un atacante puede saltar de una fase a otra según se presente la oportunidad.

 

3) Limitaciones de un Pen Tester y Ethical Hacking

Un Pen Test no puede encontrar todas las vulnerabilidades de un ambiente. Hay limitaciones basadas en los recursos y contratos de un test:
– Limitaciones de alcance.
– Limitaciones de tiempo.
– Limitaciones de acceso a los pen testers.
– Limitaciones en los métodos utilizados por los pen testers (DoS es una limitación común).

 

3.1) Limitaciones adicionales

Están asociadas a las limitaciones del equipo de pen testers y sus herramientas:
– limitaciones en sus habilidades.
– limitaciones de imaginación de los pen testers.
– limitaciones de conocimiento: la mayoría de los pen testers no escriben sus propias herramientas, y aunque lo hagan no tiene suficiente tiempo para escribir las mismas para una falla específica de un ambiente concreto.

Es por esto que debemos minimizar estas limitaciones y asegurarnos de que nuestros pen testers cuenten con la mayor habilidad y experiencia posible.

 

4) Otros métodos para detectar Vulnerabilidades de Seguridad

Algunos argumentan que hay otros métodos más eficiente de detectar vulnerabilidades de seguridad:- Revisión de configuraciones: Puede ser manual o automatizado (MBSA, CIS, etc.).
– Revisión de la Arquitectura: Puede ayudar a determinar donde se debe aplicar la defensa en profundidad, lo cual puede ser difícil de discernir para un pen test.
– Entrevistas con el personal del ambiente objetivo: Ayuda a encontrar fallas en procedimientos y concientización de seguridad.
– Auditorías Detalladas.

4.1 Para que hacer pen testing o ethical hacking?

Test de penetración y ethical hacking chequea las cosas tal como están:- Qué es lo que ve actualmente un atacante: Ayuda a determinar el nivel de riesgo mejor que una revisión de arquitectura o configuración.
– Ayuda a encontrar errores que otros métodos no pueden encontrar: Problemas desconocidos que no pueden ser detectados durante una revisión de configuración. Va más allá de una auditoría.
– Pen testing y ethical hacking tienen un impacto diferente en el consumo de tiempo del personal del ambiente a investigar: Se realizan entrevistas más profundas, pero se obtienen mejores resultados.

 

 

Nota: A continuación les dejo algunos links relacionados:

http://www.pentest-standard.org/index.php/Main_Page
http://www.checkusernames.com/
https://www.owasp.org/index.php/Category:OWASP_Testing_Project
https://www.owasp.org/index.php/Category:OWASP_Application_Security_Verification_Standard_Project

http://www.secdev.org/projects/scapy/demo.html
http://www.edge-security.com/
http://www.edge-security.com/theharvester.php
http://code.google.com/p/theharvester/
http://code.google.com/p/theharvester/downloads/list
http://www.edge-security.com/proxystrike.php

http://traceroute.org/
http://tracert.com/

http://spl0it.wordpress.com/