Herramientas de Pen Testing de redes y aplicaciones web

19
© 2007 Cisco Systems, Inc. Todos los derechos reservados. Cisco Public 1 Ethical Hacking Herramientas de Pen Testing de redes y aplicaciones web Sesión 2

Transcript of Herramientas de Pen Testing de redes y aplicaciones web

Page 1: Herramientas de Pen Testing de redes y aplicaciones web

© 2007 Cisco Systems, Inc. Todos los derechos reservados. Cisco Public 1

Ethical Hacking

Herramientas de Pen Testing de redes y aplicaciones webSesión 2

Page 2: Herramientas de Pen Testing de redes y aplicaciones web

Las intrusiones cibernéticas son legales únicamente cuando se cuente con la autorización para llevar a cabo estas actividades en el contexto de una prueba de seguridad de la información.

El contenido de esta presentación y los ejemplos mostrados sirven para educar en las técnicas de pruebas de seguridad para defensa de activos de información, y en ningún momento deben considerarse como incentivos para llevar a cabo ataques a ninguna entidad o persona.

ATENCIÓN

Page 3: Herramientas de Pen Testing de redes y aplicaciones web

“Puede ser Rusia. También puede ser China. Puede ser alguien en su cama que pesa 400 libras.”

- Donald J. Trump

Bienvenidos

Page 4: Herramientas de Pen Testing de redes y aplicaciones web

Kali Linux Badstore Metasploitable

Herramientas de hoy

Page 5: Herramientas de Pen Testing de redes y aplicaciones web

HERRAMIENTAS BÁSICAS DEL PEN TESTING

Page 6: Herramientas de Pen Testing de redes y aplicaciones web

Herramienta básica para análisis de hosts y dispositivos conectados a la red

Comienzo suave con nmap –sP target

Seguimos con un reconocimiento de sistema operativo nmap –O target

Podemos continuar con un reconocimiento más agresivo con nmap –A target

Generalmente, estos scans serán detectados por dispositivos IDS/IPS -> usar –T0 o –T1 para ir lento

Recursos: https://blogs.sans.org/pen-testing/files/2013/10/NmapCheatSheetv1.0.pdf

NMAP / ZENMAP

Page 7: Herramientas de Pen Testing de redes y aplicaciones web

Herramienta de línea de comando para análisis automatizado de aplicaciones Web

Corre en Windows, Linux

Se integra con Shodan, OpenVAS

Análisis base golismero SCAN <website>

Recursos: http://www.golismero.com/

Golismero

Page 8: Herramientas de Pen Testing de redes y aplicaciones web

Herramienta de línea de comando para auditar y recomendar mejoras en la configuración de sistemas derivados de *nix: AIX, Linux, Solaris, FreeBDS

Análisis de mejores prácticas de configuración

Análisis base lynis audit sistema –quick

Recursos: https://cisofy.com/lynis/

Lynis

Page 9: Herramientas de Pen Testing de redes y aplicaciones web

Nikto – uso básico nikto –h 192.168.1.1

Sparta – GUI para automatizar pruebas con nmap, nikto, screenshot, etc.

Otras herramientas rápidas para integrar

Page 10: Herramientas de Pen Testing de redes y aplicaciones web

Herramienta enfocada en encontrar fallas en el código de aplicaciones Web, que pasan parámetros en el URL al estilo de http://www.example.com/?id=1

Reconoce hashes comunes de passwords e incorpora procesos de descifrado de fuerza bruta.

Incorpora métodos para abrir conexiones al servidor remoto a través de la base de datos

Usar sqlmap –wizard para pruebas asistidas

Recursos: http://sqlmap.org/

Sqlmap

Page 11: Herramientas de Pen Testing de redes y aplicaciones web

Veamos un ejemplo en .NET

function Main()

{

//Set up connection

var user

var cn = Server.createobject( "ADODB.Connection" );

cn.connectiontimeout = 20;

cn.open( "localserver", "sa", "password" );

username = new String( Request.form(“user") );

if( user.length > 0) {

Login( cn );

}

cn.close();

}

¿Cómo ocurre un SQL Injection?

Page 12: Herramientas de Pen Testing de redes y aplicaciones web

function Login( cn )

{

var user;

var password;

username = Request.form(“user");

password = Request.form("password");

var rso = Server.CreateObject("ADODB.Recordset");

var sql = "select * from users where username = '" + user + "' and password = '" + password + "'";

trace( "query: " + sql );

rso.open( sql, cn );

if (rso.EOF) {

rso.close();

}

}

¿Cómo ocurre un SQL Injection?

Page 13: Herramientas de Pen Testing de redes y aplicaciones web

Examinemos el URL que la función de búsqueda de BadStore genera:http://badstore.net/cgi-bin/badstore.cgi/searchquery=hola&action=search...

En este caso, el parámetro está siendo trasladado directamente al query que se envía a la base de datos

Agreguemos parámetros para verificar si algo cambiahttp://badstore.net/cgi-bin/badstore.cgi/searchquery=hola+AND+1=1&action=search...

Probemos extraer data de la base de datos

¿Podremos mapear todo el esquema de la base de datos?

Lógica detrás de un SQL injection

Page 14: Herramientas de Pen Testing de redes y aplicaciones web

‘ or 1=1 -- –Recordar dejar un espacio en blanco al final

‘ union all select null,null,null,null from itemdb --

–Cuatro campos nulos que corresponden a los campos especificados en el query original

‘ union all select null,null,null,@@version from itemdb –

‘ union all select null,null,null,database() from itemdb –

Strings para probar: BadStore

Page 15: Herramientas de Pen Testing de redes y aplicaciones web

PROXYS

Page 16: Herramientas de Pen Testing de redes y aplicaciones web

Operación básica de un Proxy

Page 17: Herramientas de Pen Testing de redes y aplicaciones web

Otras formas de operar un proxy…

Page 18: Herramientas de Pen Testing de redes y aplicaciones web

Herramienta para hacer testing de aplicaciones Web

Puede instalarse como un proxy para analizar comunicación hacia una aplicación Web

–Puede ser usado para analizar la interacción de aplicaciones móviles con su back-end

Incluye módulos para explorar y recorrer sitios Web, buscando vulnerabilidades, incluyendo SQL Injection y Cross-Site Scripting

Estamos usando la versión gratuita, que tiene limitaciones -> scanner, búsqueda, salvar estado

Recursos: https://portswigger.net/burp/download.html

Burp Suite

Page 19: Herramientas de Pen Testing de redes y aplicaciones web

Otra herramienta para análisis de aplicaciones Web

Incluye scan de puertos, recorrido de sitio

Puede hacer “fuzzing” para pruebas de vulnerabilidades

Analiza y prueba SQL Injection, Cross-Site Scripting

Herramienta libre con funcionalidades abiertas

Recursos: https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Project

OWASP Zed Attack Proxy (ZAP)