Vous êtes sur la page 1sur 15

TUTOR: FRANCISCO SANZ

CERTIFICADO PROFESIONAL DE HACKING ÉTICO

10.º Auditorías web


CERTIFICADO PROFESIONAL DE HACKING ÉTICO
Índice:
- Tipos de pruebas
- Tipos de vulnerabilidades
- Herramientas
- POC
CERTIFICADO PROFESIONAL DE HACKING ÉTICO
Tipos de pruebas:

- Test de penetración
- Audit. de código
- Audit. de funcionalidad
- Audit. de infraestructura
CERTIFICADO PROFESIONAL DE HACKING ÉTICO
Test de penetración:
Es el método de evaluar la seguridad de web, simulando un ataque informático a a la misma. El
proceso consiste en un análisis activo de la web, para detectar cualquier vulnerabilidad de seguridad
por una falla en la configuración de la web o del servidor de la misma.
Los test de penetración son muy importantes por las siguientes razones:

- Determinar la viabilidad de un conjunto particular de vectores de ataque.


- Identificar las vulnerabilidades de alto riesgo que resultan de una combinación de vulnerabilidades
de menor riesgo explotados en una secuencia particular.
- Identificar las vulnerabilidades que pueden ser difíciles o imposibles de detectar con los sistemas
automatizados de la red o por software de detección de vulnerabilidades.
- Probar la capacidad de las defensas de la red para detectar con éxito y responder a los ataques.
CERTIFICADO PROFESIONAL DE HACKING ÉTICO
Auditoría de infraestructura:

Es una test similar al Pentesting descrito anteriormente, la diferencia, es que el énfasis que se le da en
este test, es a toda la arquitectura que permite el funcionamiento de la aplicación web, tales como bases
de datos, sistemas operativos, servicios de red, balanceadores de carga, firewall y UTM perimetrales,
entre otros.
CERTIFICADO PROFESIONAL DE HACKING ÉTICO
Tipos de vulnerabilidades:

En el 2013, el top 10 de OWASP , fue el siguiente:

1º Inyección de código
2º Mal manejo de sesiones con autenticación
3º XSS.
4º Errores en el diseño de la web
5º Configuraciones no adecuadas en la seguridad de la web.
6º Protección incorrecta de datos.
7º Falta de control en el servidor.
8º CSRF
9º Explotación de librerias, frameworks y otros componentes vulnerables.
10º Errores de redirección.
CERTIFICADO PROFESIONAL DE HACKING ÉTICO
Nuestros pasos:

A la hora de hacer un pentest a una web, nosotros lo haremos de una forma muy determinada. Es un
método muy parecido, a lo que hemos visto a la hora de hacer una auditoría normal.

1- Recolectar información con herramientas y con las cabeceras


2- Escanear el objetivo
3- Realizar un ataque, dependiendo de las vulnerabilidades registradas.
4- Conseguir el acceso y la post-explotación
5- Realizar el informe

Como podéis ver, son los mismos pasos que ya hemos visto. Aquí lo que veremos son unas
vulnerabilidades, muy explicitas.
CERTIFICADO PROFESIONAL DE HACKING ÉTICO
1º Inyección SQL:

Es una de las vulnerabilidades más extendidas. El conocimiento de SQL, nos dará mucha ventaja a la
hora de entender este ataque. Podemos decir, que la inyección SQL, es una inyección de comandos
SQL dentro de las consultas SQL propias de una web, con el objetivo de acceder a la base de datos.
SQL es un potente lenguaje interpretado utilizado para extraer y manipular los datos de una base de
datos. Comandos SQL, también conocidos como consultas(Query), figuran normalmente en el lado del
servidor de código mediante secuencias de comandos (ASP, PHP, JSP , entre otros) que se encarga de
establecer y mantener la conexión a la base de datos abierta mediante el uso de conectores entre la
aplicaciones web y base de datos. Estos conectores son conocidos también como middlewares.
CERTIFICADO PROFESIONAL DE HACKING ÉTICO
Es altamente recomendable entender como funcionan las consultas SQL (Comandos y
Sintaxis), para poder realizar de una forma mas adecuada los procesos de auditoria y/a
ataques en aplicaciones web, en lo que respecta a inyecciones SQL.

Ejemplos de SQL Injection: Algunos ejemplos de SQL Injection pueden ser los siguientes:

' or '1'='1
' or '1'='1' -- ‘
%' or '0'='0
%' or 0=0 union select null, version() #
%' or 0=0 union select null, user() #
%' or 0=0 union select null,@@datadir #
CERTIFICADO PROFESIONAL DE HACKING ÉTICO
2º XSS (Cross Site Scripting)
Es un tipo de inseguridad informática o agujero de seguridad típico de las aplicaciones Web, que
permite a una tercera parte inyectar en páginas web vistas por el usuario ,código JavaScript o en otro
lenguaje script similar (ej: VBScript), evitando medidas de control como la Política del mismo origen.
Es posible encontrar una vulnerabilidad XSS en aplicaciones que tengan entre sus funciones
presentar la información en un navegador web u otro contenedor de páginas web. Sin embargo, no se
limita a sitios web disponibles en Internet, ya que puede haber aplicaciones locales vulnerables a
XSS, o incluso el navegador en sí.
XSS es un vector de ataque que puede ser utilizado para robar información delicada, secuestrar
sesiones de usuario, y comprometer el navegador, subyugando la integridad del sistema. Las
vulnerabilidades XSS han existido desde los primeros días de la Web.
CERTIFICADO PROFESIONAL DE HACKING ÉTICO
3º Descubrimiento de Ruta (Path) y Directorios.

Esta técnica de ataque consiste en utilizar procesos de fuerza bruta o diccionario para lograr
el descubrimiento de directorios y archivos ocultos que están en el servidor web, con el
objetivo de poder identificar información representativa que sea útil para un atacante
informático.
Estos directorios o archivos ocultos, pueden dar información relevante de la web, como por
ejemplo la configuración, archivos ,accesos a logins etc.

Nosotros usaremos la herramienta wfuzz en Kali o bien, el escaner de Acunetix, te hace un


listado de los directorios.
CERTIFICADO PROFESIONAL DE HACKING ÉTICO
4º Fuerza Bruta

Ya hemos visto cómo funciona en sistemas. En una web es exactamente igual. Hay que saber el
directorio donde está el punto de acceso e intentar usar nuestras habilidades para saltarlo. Nosotros
hemos usado en las prácticas Hydra…espero lo recordéis.

5º File upload:

Consiste en aprovechar una vulnerabilidad, de mala configuración, en una web, donde es posible
subir un archivo al servidor. Por ejemplo, subir una imagen o un curriculum o un video…si la
configuración no es correcta, se puede descargar una shell, cambiando las cabeceras.
CERTIFICADO PROFESIONAL DE HACKING ÉTICO
6º Remote File Inclusion:

Vulnerabilidad existente solamente en páginas dinámicas en PHP que permite el enlace de archivos
remotos situados en otros servidores a causa de una mala programación de la página que contiene la
función include().

7º Local File Inclusion:

Se trata de la inclusión de ficheros locales, es decir, ficheros que se encuentran en el mismo servidor
de la web con este tipo de fallo, a diferencia de Remote File Inclusion que incluye ficheros alojados en
otros servidores.
CERTIFICADO PROFESIONAL DE HACKING ÉTICO