new gastón toth ceh - index-of.co.ukindex-of.co.uk/google/webapp_pentesting.pdf · 2019. 3. 7. ·...

48

Upload: others

Post on 20-Apr-2021

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en
Page 2: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Gastón [email protected]

● Lic. en Computación● CEH● Pentester● Desarrollador● @OWASP_Patagonia

Page 3: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Dónde queda OWASP Patagonia?

Page 4: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Webapp pentesting

...desde un enfoque no muy técnico

Page 5: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en
Page 6: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en
Page 7: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Penetration testing es el “arte” de analizar una aplicación en ejecución sin conocer su funcionamiento interno para encontrar vulnerabilidades de seguridad

OWASP Testing Guide

Page 8: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

¿Por qué hacer un pentest?

Conocer el estado de seguridad en un momento determinado

Buscar falencias en las configuraciones

Cumplir con los requerimientos para las certificaciones

Evitar posibles ataques que puedan llevar a pérdidas de dinero y/o a generar una mala imagen a la organización

Page 9: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Puntos importantes en un pentest:

- Obtener la mayor cantidad de información posible - Determinar la tecnología utilizada - Comprender el entorno - Entender la lógica de la aplicación - Observar el funcionamiento normal de la aplicación - Modificar cada punto de entrada y ver como se comporta - Detectar y explotar vulnerabilidades - Buscarle la vuelta - Y buscarle la vuelta

Page 10: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Obtención de información

Page 11: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Google hacking

Utilizar operadores para filtrar búsquedas● site:owasp.org● site:owasp.org intitle:index.of● "BEGIN RSA PRIVATE KEY" filetype:key ● site:owasp.org -site:www.owasp.org

Page 12: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Google hacking

● inurl:admin/login.php● ext:sql intext:username intext:password● filetype:pdf | filetype:doc | filetype:xls● intitle:Router New Generation & inurl:/home.asp● inurl:/control/userimage.html

Page 13: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en
Page 14: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

¿Qué se puede encontrar?

● Usuarios y contraseñas● Formularios de acceso● Mensajes de error● Dispositivos hardware online● Archivos con información sensible

https://www.exploit-db.com/google-hacking-database/

Page 15: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Por ejemplo:

filetype:bash_history

Page 16: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en
Page 17: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Copias de archivos

Archivos del tipo:● Index.php.old● Config.php.bak● Conexion.cgi~

Permiten la lectura del archivo en texto plano, haciendo posible la comprensión de la lógica de la aplicación.

Page 18: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Otros lugares donde buscar:

bing.comarchive.orgpastebin.comstackoverflow.comshodan.io

y muchos mas ...

Page 19: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

En un foro de programación: … ayuda para hacer un programa que envíe un correo cierto día … … copio el código para que me puedan decir que está mal …

Page 20: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Identificación de tecnología

En necesario saber la tecnología de los servidores que estamos analizando.

Las pruebas para un servidor Apache no serán las mismas que para uno con IIS.

Igualmente para las bases de datos, sistemas operativos, etc.

Page 21: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Identificación de tecnología de servidor web

● Banner - Cabecera Server

Page 22: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Identificación de tecnología de servidor web

● Mensajes de error

Page 23: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Identificación de tecnología de servidor web

● Análisis de comportamiento- Orden de las cabeceras- Malformed requests

Page 24: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Y cuando nada de eso funciona ...

Page 25: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en
Page 26: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Una vez que se obtiene el tipo de tecnología y la versión utilizada, se pueden buscar las vulnerabilidades conocidas en:

● http://osvdb.org/● http://www.securityfocus.com/bid● http://cve.mitre.org/● … y otros

Page 27: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Enumeración de aplicaciones

Es el proceso de identificación de aplicaciones web instaladas en una infraestructura determinada.

Es muy importante identificar las distintas aplicaciones que corren en un servidor ya que pueden encontrarse casos de programas de mucha seguridad que comparten el servidor con otros que son vulnerables, en cuyo caso la seguridad puede verse comprometida en su totalidad.

Page 28: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Enumeración de aplicaciones

Webservers en diferentes puertos

Ejemplo: - Puerto 80: Aplicación de e-commerce - Puerto 8080: Portal administrativo

Page 29: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Enumeración de aplicaciones

Aplicaciones en diversas URL

Ejemplo:- www.target.com/ → Drupal- www.target.com/test → Joomla- www.target.com/blog → Wordpress

Se puede lograr mediante crawling o fuerza bruta

Page 30: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Archivo “robots.txt”

Nunca debe pensarse como mecanismo de protección!

Page 31: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

OWASP Dirbuster Herramienta para buscar archivos y directorios por fuerza bruta

Page 32: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Enumeración de aplicaciones

Servidores virtuales

Permiten tener una cantidad variable de dominios y sitios web en una misma máquina. Los sitios web alojados comparten los recursos disponibles.El campo “Host” de la cabecera HTTP permite identificar al host virtual al que estamos haciendo referencia.

Page 33: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Enumeración de aplicaciones

Un solo host desprotegido puede comprometer toda la seguridad.

www.sitioseguro.com

www.superseguro.com IP: xx.xx.xx.xx

www.desprotegido.com

Page 34: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Conocer el entorno

eth0Ip pub 1

eth1192.168.1.2

eth0: password protectedeth1: trust internal servers

eth0Ip pub 2

eth1192.168.1.3

Sitio de pruebas

Page 35: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Ips vecinas y relaciones de confianza

eth0Ip pub 1

eth1192.168.1.2

eth0: password protectedeth1: trust internal servers

eth0Ip pub 2

eth1192.168.1.3

Sitio de pruebas

Con

fianz

a

Page 36: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Hasta acá no ha sido muy difícil y ya tenemos

MUCHA INFORMACIÓN

sobre el objetivo

Page 37: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Luego, debemos buscar los fallos en cada uno de los sistemas encontrados en las etapas previas.

Page 38: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Búsqueda de fallos

Automático: Es muy rápido y puede detectar varias fallas de las aplicaciones y servidores en pocos minutos.

Manual: Es más lento pero se pueden hacer pruebas que ninguna herramienta automática podría hacer.

Page 39: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Análisis automático

● ZAP● w3af● Acunetix ● Burp● Vega● Wapiti● Nikto● Arachni

Page 40: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Modificación de puntos de entrada

● Métodos (GET, POST, PUT, ...) ● Parámetros ● Headers● Cookies● URLs

Se busca ingresar valores que generen un comportamiento no planificado en la aplicación y que no cuenten con la validación necesaria

Page 41: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

¿Que se puede hacer modificando estos puntos de entrada?

● Inyección SQL // Ver: SQL Injection Deep Dive● Cross Site Scripting // Ver XSS - from alert to pwnage● Inyección LDAP● Inyección XML● Inyección ORM● Inyección HTML

… etc

Page 42: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Dato interesante:Existen otras alternativas, como un código de barras o formularios escritos en papel, que serán escaneados y parseados por un OCR y el código que lo lee puede ser vulnerable a inyecciones.

Page 43: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Lógica de la aplicación

Este tipo de vulnerabilidad no puede ser detectado por ninguna herramienta y depende únicamente de los conocimientos y creatividad del consultor.

Page 44: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Lógica de la aplicación

Generalmente aquí se encuentran los fallos con mayor impacto.

- Fraude- Degradamiento de imagen - Robo

Page 45: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

Consejos para aprender pentesting● Instalar y configurar servidores● Desarrollar en distintas tecnologías● Instalar y probar diversos CMS● Asistir a eventos de OWASP ;)● Participar de CTFs● Bug bounties

Page 46: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

¿Dónde encontrar más información sobre webapp pentesting?

https://www.owasp.org/index.php/OWASP_Testing_Project

Page 47: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

¿Preguntas?

Page 48: New Gastón Toth CEH - index-of.co.ukindex-of.co.uk/Google/Webapp_Pentesting.pdf · 2019. 3. 7. · Existen otras alternativas, como un código de barras o formularios escritos en

MUCHAS GRACIAS

@[email protected]