Está en la página 1de 15

Curso bsico hacking y pentesting

Instructor: Rodolfo Cecea Solano



Curso en base a lo aprendido en el curso de
elearnsecurity
Proceso de penetration testing
Un penetration tester tiene la misma experiencia que un hacker experimentado, el
penetration tester realiza una investigacin exhaustiva remota o local. De los fallos
de seguridad de un sistema por medio de una serie de pasos.

Si vemos una prueba de penetracin como un proceso, en lugar de un solo bloque
estructurado de tareas, nos asegura que la totalidad de las posibles vulnerabilidades
y fallos de seguridad han sido probados con el presupuesto ms bajo
Proceso de penetration testing
El xito de un paso depende de los pasos xitos que anteriores hayamos dado

Acontinuacion mostramos el lifetime de un test de penetracin: desde el contrato
hasta la entrega del reporte y la post consultoria despus de terminar nuestro trabajo
Contrato Obteniendo informacion Deteccion y escaneo del sistema Escaneo de vulnerabilidades Explotacion Creacion del reporte
Proceso de penetration testing
(contrato)
Cotizacin:
En esta etapa el penetration tester se le pedir la cotizacin del servicio por el
pentest de la red que va a tester, o la aplicacin web o inclusive toda la
organizacin de la empresa

La cotizacin puede variar de acuerdo a lo siguiente:
Tipe de contrato (black box | grey box | white box...)
Que tan largo sea el contrato en trminos de tiempo
Complejidad, en trminos del uso de aplicaciones
Nmero de objetivos (direcciones ip, dominios y otras cosas)

Otra cosa muy importante que se puede hacer sera especificar una tarifa por
hora, en caso de que no se pueda cuantificar la cantidad de trabajo requerida
Proceso de penetration testing
(contrato)
Propuesta de presentacin:
La mejor forma de obtener un trabajo es dar una propuesta slida y objetiva

Esta propuesta debe incluir:
Entender las necesidades del cliente (Que se entendi de acuerdo a los requerimientos del
cliente, en el paso anterior )
Proposicin de enfoque / metodologa (uso automatizado de herramientas de escaneo, pruebas
manuales, pruebas en sitio requeridas)
resultado final en cuanto a cmo quiere responder a sus necesidades y qu tipo de valor de
nuestro trabajo le traer a su negocio (continuidad, preservacin de confidencialidad,evitar
perdida de dinero debido incumplimiento)
Proposicin en trminos de precio y un estimado del tiempo requerido para realizar tu trabajo







Una propuesta no debe ser enviada hasta que los siguiente haya sido determinado
Tipo de contrato (evaluacion de vulnerabilidades, test de penetracion, black box, gray box
requerimiento de presencia en el sitio)
Alcnaze del compromiso (ips, dominios...)

Proceso de penetration testing
(contrato)
Trabajo legal:
Ya has obtenido el trabajo y ahora puedes ocuparte de los trmites legales que
determinarn las responsabilidades de ambas partes

Las compaas usualmente quieren que firmes documentos que asegura tu total
confidencialidad relacin a lo que encontremos o el uso de documentos
sensibles a los que estarn expuesto durante el trabajo. La empresa quiere
asegurarse que no divulgar la informacin confidencial a terceras personas.

Reglas del contrato es otro documento que tomara cuidado de lo definido en el
mbito del compromiso este documento pondr muy claro lo que tenemos derecho a
hacer y cundo






Proceso de penetration testing
(obteniendo informacion)
Infraestructura:
Como parte del contrato puede ser que se te entregue un determinado nmero de direccion ip
que puedes hacerles prueba o puedes ser que no se te entregue nada

En el primer caso ser limitado a realizar pruebas en solo las ip que se te han indicado, y
despues tendras que recolectar bloques de los ip's de la compaa por medio de herramientas
como whois o herramientas para DNS

Antes de esta fase, cada direccion ip proveida se ver como un numero para ti

Las metas de esta fase es dar un significado a esos nmeros ese significado lo determinaremos
para cada uno de estos puntos:
Si hay un host o un servidor conectado
Si hay un website asociado
Cual es el sistema operativo que se encuentra en ese host
Si obtenemos el sistema operativo que se encuentra en el host, esa sera informacion valiosa que
nos ayudara en la fase de explotacin cuando encontremos las vulnerabilidades explotables en ese
sistema
Proceso de penetration testing
(obteniendo informacin)
Informacin acerca de las aplicaciones web
Si cualquier aplicacion web esta dentro de este ambito, en esta fase rolectaras:
Dominios
Subdominios
Paginas
Tecnologias en uso(Java, ruby, c#)
Frameworks y CMS (Joomla, Drupal, Wordpress)

Las aplicaciones web deben ser tratadas como entidades completamente separadas y
requeridas en un estudio aparte

Informacion acerca de una aplicacion web es obtenida a travez de una busqueda
simple e inspeccionada atravez de aplicacions proxies como puede ser Burp Suite.
Proceso de penetration testing
(Deteccion y escaneo del sistema)
Detectando el sistema operativo:
Detectar el sistema operativo significa reducir el nmero de posibles vulnerabilidades
buscar para la siguiente fase.

Las herramientas estan disponibles para hacer conjeturas acerca del sistema
operativo, la versin e incluso el nivel de parches instalados en el sistema que
estamos haciendo las pruebas.
Proceso de penetration testing
(Deteccion y escaneo del sistema)
Escaneo de puertos:
El escaneo de puertos es una consecuencia directa de la determinacin de cuales
host estan disponible, solamente escaneamos los hosts disponibles.

El escaneo de puertos determinara que puertos estan abiertos en las ip que estamos
escaneado

El escaneador de puertos preferido por los hackers y pentesters es nmap, con nmap
uun penetration tester puede ejecutar diferentes tecnicas de scaneo lo cual nos
revelara cules puertos estan abiertos y cules puertos estan filtrados o cerrados

En esta fase tambin entenderemos si hay un firewall, de hecho los puertos filtrados
son sntomas de la presencia de un firewall que esta bloqueando nuestras pruebas.
Proceso de penetrarion testing
(Deteccion y escaneo del sistema)
Detectando servicios:
Al conocer que puertos estan abiertos sin conocer cual servicio esta ejecutandose en
ese puerto es inutil para un hacker

Al conocer cuales servicios estan en uso, un penetration tester puede entender:
El sistema operativo instalado
El uso particular de alguna ip
La importancia de la ip en todo el negocio de nuestro cliente (si un cliente vende
zapatos en linea basara su negocio en el comercio electronico)

Nmap es una herramienta para el escaneo de puertos que es capaz de determinar cual
servicio esta corriendo en el puerto remoto de la ip que se esta escanenado
Proceso de penetration testing
(Evaluacion de vulnerabilidades)
Escaneando Vulnerabilidades:
Esta fase est dirigida a la contruir una lista de vulnerabilidades encontradas en los sistemas.

El penetration tester llevara a cabo la evaluacin de vulnerabilidades por cada objetivo
encontrado en las anteriores fases.

La siguiente fase, explotacin, pasara por esta lista. Cuanto ms grande sea la lista, ms
posibilidades de explotar el sistema.

La evaluacin de la vulnerabilidad puede llevarse a cabo manualmente (usando informacin
colectada en las fases anteriores) o por medio de herramientas automatizadas

En el uso de herramientas para la evaluacin de vulnerabilidades un penetration tester puede
determinar cuales vulnerabilidades estan presentes en los sistemas

La herramienta de escaneo de vulnerabilidades nos entrega un reporte que ser usado en la
siguiente fase
Proceso de penetration testing
(Explotando)
Explotar:
En la fase de explotacin nos encargaremos de explotar todas las vulnerabilidades
encontradas en la fase anterior.

La explotacin est dirigida a comprobar la presencia de vulnerabilidades detectadas
en la fase anterior y ademas esta dirigida a comprometer el sistema aunque tambin
en la fase de explotacin podemos usarla para incrementar privilegios

La explotacin exitosa puede ser usada para el estudiar la red o descubrir nuevos
objetivos y repetir el proceso desde la fase de obtencin de informacin.
El proceso de penetration testing es de hecho un proceso cclico que termina cuando
no hay ms sistemas que explotar.
Proceso de penetration testing
(Creando el reporte)
Creacin del reporte:
La prueba final de penetration test es tan importante como la fase de pruebas. Aqu
mostraremos nuestra metodologa y los resultados de todas las pruebas que hicimos
a la compaia

Este reporte tomar lo siguiente en consideracin:
Vulnerabilidades encontradas
La explotacin que usamos
El impacto y el riesgo que hay en cada vulnerabilidad que encontramos
Los consejos que le damos al cliente para reparar sus fallos
Incluyendo consejos objetivos sobre como remediar eficientemente cada vulnerabilidad
es lo de mas valor para el cliente.
El trabajo pruebas de penetracin ser ms apreciado si aparte de sus habilidades de
explotar sistemas proporciona tcnicas para mitigar los problemas de seguridad del
cliente.
Proceso de penetration testing
(Creado el reporte)
Consultora:
Es muy comn que a los pentetration tester se les pida algunas horas de consultora
en el reporte entregado
Esto esta destinado a poner al pentester disponible si la empresa o particularmente
el equipo de sistemas de la empresa quiere hacerle consultas para futuras
aclaraciones o sugerencias.

En este punto el contrato a sido terminado y el penetration tester tiene la obligacion
de encriptar y poner en un lugar seguro el reporte del cliente.