Está en la página 1de 37

Tcnicas del

Penetration Testing
Victor H. Montero
vmontero@cybsec.com

Septiembre de 2005
Buenos Aires - ARGENTINA

Tcnicas del Penetration Testing


2005

Agenda
- Qu es un Penetration Test?
- El rol del PenTest en la Seguridad Informtica.
- Objetivo y alcance.
- Metodologa de Penetration Test.
- Casos de la vida real.

Tcnicas del Penetration Testing


Qu es un Penetration Test?

2005

Consiste en emular y simular comportamientos y tcnicas que


pueden ser utilizadas por los intrusos con el objetivo de
analizar el nivel de seguridad y la exposicin de los sistemas
ante posibles ataques.
Permite detectar
vulnerabilidades en
los Sistemas
Informticos y
corregirlas en forma
rpida y eficaz.
3

Tcnicas del Penetration Testing


Qu es un Penetration Test?

2005

Es un conjunto de metodologas y tcnicas que permiten


realizar una evaluacin integral de las debilidades de los
sistemas informticos.
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

informtico,

permitiendo

demostrar los riesgos funcionales de


las vulnerabilidades detectadas
4

Tcnicas del Penetration Testing


La Seguridad Informtica en los sistemas

2005

La Seguridad Informtica es Dinmica.


Da a da se reportan vulnerabilidades que podran poner en
jaque los sistemas informticos de cualquier organizacin.
Esto conlleva a la constante actualizacin 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

Tcnicas del Penetration Testing


La Seguridad Informtica en los sistemas

2005

Vulnerabilidades de Seguridad Informtica reportadas


En los ltimos aos, 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

Tcnicas del Penetration Testing


La Seguridad Informtica en los sistemas

2005

Cmo 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 informtica global de toda una instalacin


es igual al componente de menor nivel de seguridad.
7

Tcnicas del Penetration Testing


La Seguridad Informtica en los sistemas

2005

Metodologa de una intrusin

Los ataques pueden ser perpetrados


en forma Externa o Interna.
Servidores
Internos

Los ataques externos son


ms fciles de detectar y
repeler que los ataques
internos. El intruso interno ya

Barreras de
Proteccin

tiene acceso a la red interna o


incluso al mismo Server que
quiere atacar.
8

Tcnicas del Penetration Testing


Objetivos de un Penetration Test

2005

- Evaluar un proyecto o sistema informtico.


- Demostrar los riesgos existentes.
- Conocer la situacin real de la Organizacin.
- Mantenimiento de la seguridad informtica.

Tcnicas del Penetration Testing


Alcance de un Penetration Test

2005

La composicin del Penetration Test se define a travs del


alcance del mismo.
ste debe concretarse en reuniones previas; puede tener un
alcance amplio y cubrir toda la organizacin, o puede ser
focalizado sobre un determinado sistema o equipo, por ejemplo
un sistema de Home Banking conectado a Internet.
Tambin se define en esta instancia el tiempo de ejecucin. El
Penetration Test debe ser una foto que refleje el estado de la
seguridad informtica de las instalaciones, por lo tanto, los
proyectos de este tipo no suelen extenderse a ms de 30 das.
10

Tcnicas del Penetration Testing


Alcance de un Penetration Test

2005

En forma general, y de acuerdo al alcance, los proyectos de


Penetration Test pueden categorizarse en:

Externos.
Internos.

11

Tcnicas del Penetration Testing


Alcance de un Penetration Test

2005

Penetration Test Externo


Durante su ejecucin se somete a los sistemas a pruebas de
seguridad informtica que simulan las que se producen durante la
realizacin de un ataque y/o intento de intrusin desde afuera de la
instalacin. Algunas de las actividades principales pueden ser:

Barrido de lneas telefnicas.

Situacin de la seguridad en centrales telefnicas.

Anlisis del sistemas de acceso remoto.

Situacin de la seguridad en la conexin a Internet.

Seguridad en la conexin con otras redes.

Seguridad en aplicaciones Web.

Seguridad en redes wireless.

12

Tcnicas del Penetration Testing


Alcance de un Penetration Test

2005

Penetration Test Interno


Durante su ejecucin se somete a los sistemas a pruebas de
seguridad informtica que simulan las que se producen durante la
realizacin de un ataque y/o intento de intrusin desde dentro de la
instalacin. 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

Tcnicas del Penetration Testing


Quien realiza el Penetration Test?

2005

Equipo interdisciplinario de personas, con know-how y


experiencia en proyectos de Penetration Testing
Normalmente se contratan
informtica especializadas.

Empresas

de

seguridad

Confianza en la Empresa a contratar


(referencias).
Explicacin detallada de las actividades
a realizar.

14

Tcnicas del Penetration Testing


Metodologas y Estndares

2005

A nivel mundial existen estndares relacionados con Penetration


Testing:

BS 7799 e ISO 17799 (Internacional)

Open Source Security Testing Methodology Manual

Federal Information System Controls Audit Manual (FISCAM)

15

Tcnicas del Penetration Testing


Principales etapas de un Penetration Test

2005

16

Tcnicas del Penetration Testing


Metodologa

2005

Cmo se realiza un Penetration Test?


Se utiliza una metodologa de evaluacin de seguridad informtica
que incluye cuatro grandes etapas:
1)

Descubrimiento

2)

Exploracin

3)

Evaluacin

4)

Intrusin

Si bien el orden de las etapas no es arbitrario, en muchos casos se


paralelizan o adelantan tareas dependiendo de las caractersticas de
la plataforma evaluada.
17

Tcnicas del Penetration Testing


Metodologa - Descubrimiento

2005

Etapa de Descubrimiento
Se centra en entender los riesgos del negocio asociado al uso de los
activos informticos involucrados.
Se realizan investigaciones tratando de recolectar informacin pblica
sobre la plataforma tecnolgica del cliente, utilizando para ello
tcnicas pasivas de relevamiento de informacin.
Este procedimiento permite empezar a delimitar las reas sobre las
que luego se focalizar la evaluacin.

18

Tcnicas del Penetration Testing


Metodologa - Descubrimiento

2005

En esta fase, se recolecta la mayor cantidad de evidencia sobre la


Empresa para la cual se van a realizar las pruebas.
Esta informacin suele ser:
- Rangos de direcciones IP asignados
- Direcciones IP de servicios tercerizados
- Direccin fsica de la empresa
- Nmeros telefnicos
- Nombres de personas y cuentas de correo electrnico
- Fuentes de informacin
- Anlisis de la pgina WEB
- Existencia de redes inalmbricas (WiFi)

19

Tcnicas del Penetration Testing


Metodologa - Descubrimiento

2005

20

Tcnicas del Penetration Testing


Metodologa - Exploracin

2005

Etapa de Exploracin
Se busca focalizar los objetivos para las posteriores etapas de
Evaluacin e Intrusin, trabajando en base a los datos obtenidos
durante la etapa de Descubrimiento.
En esta etapa se aplican tcnicas no intrusivas para identificar todos
los potenciales blancos.
Incluye el anlisis de protocolos, relevamiento de plataforma y
barreras de proteccin, scanning telefnico, scanning de puertos TCP
y UDP, deteccin remota de servicios y sistemas operativos, anlisis
de banners y bsqueda de aplicaciones web.
21

Tcnicas del Penetration Testing


Metodologa - Exploracin

2005

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) tcnicas activas de reconocimiento.
Las tareas que predominan en esta etapa son:
- Deteccin de mdems activos
- Confirmacin de rangos de direcciones IP
- Deteccin de equipos activos e identificacin de Sistemas Operativos
- Deteccin de servicios activos e identificacin Software y versiones
- Deteccin de barreras de proteccin
- Relevamiento de aplicaciones Web
- Anlisis de caractersticas de configuracin en redes WiFi

22

Tcnicas del Penetration Testing


Metodologa - Exploracin

2005

Tcnica de Scanning
La tcnica de scanning permite a los intrusos barrer todo un conjunto
de potenciales blancos en busca de alguna caracterstica.
Se utiliza por sobre todo en la deteccin de equipos, servicios y
mdems activos.
- El scanning es legal?
- Acceso pblico y gratuito a las herramientas
- La utilizacin de los mismos puede traer graves consecuencias
- Existen pases con leyes que repudian y castigan esta actividad

23

Tcnicas del Penetration Testing


Metodologa - Evaluacin

2005

Etapa de Evaluacin
Se basa en el anlisis de todos los datos encontrados para la
deteccin

determinacin

de

vulnerabilidades

de

seguridad

informtica que afectan a los sistemas evaluados.


Durante esta etapa se realizan las evaluaciones de seguridad en
todos los posibles niveles, destacndose las siguientes tareas:
- Ejecucin de herramientas de scanning de vulnerabilidades.
- Bsqueda manual de vulnerabilidades.
- Enumeracin de usuarios y datos de configuracin.
24

Tcnicas del Penetration Testing


Metodologa - Evaluacin

2005

Herramientas de scanning de vulnerabilidades


- Buscan

automticamente

vulnerabilidades

conocidas

en

los

Sistemas Operativos y servicios que se estn ejecutando.


- Permiten,

en

algunos

casos,

explotar

las

vulerabilidades

detectadas.
- Poseen mecanismos para la generacin y administracin de
reportes de distinta ndole (Gerenciales, Tcnicos, etc).
- Facilitan la actualizacin de las bases de datos de vulnerabilidades.
- Algunas herramientas (gratuitas y comerciales): Nessus, Languard,
ISS, Retina...
25

Tcnicas del Penetration Testing


Metodologa - Evaluacin

2005

Bsqueda manual de vulnerabilidades


Como complemento a la ejecucin de herramientas automticas, es
necesario verificar la existencia de vulnerabilidades conocidas que
puedan afectar a las versiones del software identificado en cada
servicio.
Existen numerosos sitios con informacin sobre vulnerabilidades
reportadas.

Algunos de ellos poseen bases de datos con exploits

pblicos, que deben ser descargados y examinados para verificar si


pueden ser tiles en la etapa de Intrusin.

26

Tcnicas del Penetration Testing


Metodologa - Evaluacin

2005

Bsqueda manual de vulnerabilidades


Sitios de inters...
- 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

Tcnicas del Penetration Testing


Metodologa - Intrusin

2005

Etapa de Intrusin
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

Tcnicas del Penetration Testing


Metodologa - Intrusin

2005

La etapa de Intrusin puede categorizarse como la ms compleja de


las 4 etapas en un proyecto de Penetration Testing.
Tambin es la ms emocionante para el equipo de trabajo, ya que es
donde

se

ve

reflejado

en

mayor

medida

el

conocimiento

profesionalismo del mismo.


Durante esta etapa se utiliza toda la informacin recabada en las
fases previas, para evaluar todas las alternativas posibles que
puedan permitir efectuar una intrusin y escalacin 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 ms indicado para
realizar las tareas.

29

Tcnicas del Penetration Testing


Metodologa - Intrusin

2005

Qu datos tenemos?
- Nombres de usuarios de diversos equipos
- Exploits remotos
- Lneas telefnicas que admiten el acceso remoto
- Ubicacin y caractersticas de nodos Wireless
- Mapa de la plataforma, surgido del anlisis de
barreras de proteccin, seguimiento de rutas
y deteccin de hosts activos
- Aplicaciones Web vulnerables
- Recursos compartidos
30

Tcnicas del Penetration Testing


Metodologa - Intrusin

2005

Y con esto qu podemos hacer?


- Fuerza bruta sobre servicios que autentiquen va nombre de usuario /
contrasea
- Ejecucin de Exploits remotos
- Prueba de usuarios y contraseas por defecto en accesos telefnicos y
servicios conocidos
- Cracking de clave de encriptacin WEP (si es necesario) y asociacin
con red Wireless
- Explotacin de vulnerabilidades en aplicaciones Web que permitan la
ejecucin de cdigo remoto.
- Bsqueda de informacin de accesos en recursos compartidos
- Ingeniera Social

31

Tcnicas del Penetration Testing


Metodologa - Intrusin

2005

Escalacin de privilegios
Es

raro

que

en

el

primer

intento

consigamos

una

cuenta

administrativa en el servidor ms crtico del cliente.


Sin embargo, ese es uno de nuestros objetivos.
La escalacin 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 explotacin combinada de dos
o ms vulnerabilidades para hacerse efectivo.

32

Tcnicas del Penetration Testing


Metodologa - Intrusin

2005

Escalacin de privilegios
Ejemplo 1: Caso real en un Penetration Test Interno
-

Servidores UNIX con servicios por defecto habilitados.

A travs del servicio RUsers se enumeran usuarios vlidos del sistema y


estaciones de trabajo clientes.

Se analizan las estaciones de trabajo usadas como cliente, y se encuentran


recursos compartidos con informacin 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

Tcnicas del Penetration Testing


2005

Escalacin de privilegios
Ejemplo 1: Caso real en un Penetration Test Interno
-

Se logra acceder a un equipo productivo, explotando una relacin 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 escalacin contina, hasta tomar el control total no solo a nivel sistema


operativo

sino

de

aplicaciones

(bases

de

datos)

dispositivos

de

comunicaciones centrales..

34

Tcnicas del Penetration Testing


Metodologa - Intrusin

2005

Escalacin de privilegios
Ejemplo I1: Caso real en un Penetration Test Externo
-

El cliente es un banco del extranjero.


permetro de la entidad.

Se detecta un servidor Web en el

El servidor se usa principalmente para testing,

pero est activo y publicado en Internet.


-

Se detecta que el equipo corre una versin de IIS cuya instalacin 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 cdigo
necesario para poder ejecutar comandos remotamente desde un formulario
web de manera ms comoda. El mismo formulario permite tambin subir
archivos al servidor.
35

Tcnicas del Penetration Testing


Metodologa - Intrusin

2005

Escalacin 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

informacin

privilegiado a la base de datos.

que

permite

obtener

acceso

La misma, resulta ser una copia

desactualizada de la base utilizada en el sistema de Home Banking.


-

Investigando un poco la topologa 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 tambin existe en la base productiva, con los mismos


privilegios, y la misma contrasea

36

Tcnicas del Penetration Testing


2005

Preguntas?

37

También podría gustarte