.

.
Mostrando entradas con la etiqueta hacking ético. Mostrar todas las entradas
Mostrando entradas con la etiqueta hacking ético. Mostrar todas las entradas

martes, 20 de agosto de 2019

Entendiendo el Cross Site Scripting (XSS) - Parte 2/2


Después de introducirnos en el XSS en la entrada anterior, en entender como se produce, que tipos podemos encontrar y como tratar de evitarlo, en este artículo veremos diferentes tipos de inyección de XSS, herramientas que podemos utilizar y algunos link de referencia.

HERRAMIENTAS:

Dentro del mundo XSS, encontraremos diversas herramientas que ayudaran en diferentes funciones, ya sea desde la detección, hasta la explotación de las mismas. Ahora simplemente nombraré algunas de ellas, pero os animo a que tiréis de buscador y probéis otras diferentes opciones:

  • Xenotix:
OWASP Xenotix XSS Exploit Framework es un marco avanzado de detección y explotación de vulnerabilidades Cross Site Scripting (XSS). Proporciona resultados de escaneo de cero falsos positivos con su exclusivo escáner integrado de Triple Browser Engine (Trident, WebKit y Gecko). Se afirma que tiene la segunda mayor carga útil XSS del mundo de más de 1500 cargas útiles XSS distintivas para la detección efectiva de vulnerabilidades XSS y el desvío WAF. Se incorpora con un módulo de recopilación de información rico en funciones para el reconocimiento de objetivos. El Exploit Framework incluye módulos de explotación XSS altamente ofensivos para pruebas de penetración y creación de prueba de concepto.
La encontramos para sistemas operativos Windows y como característica especial podemos afirmar que produce muy pocos falsos positivos.


Página oficial OWASP: https://www.owasp.org/index.php/OWASP_Xenotix_XSS_Exploit_Framework

https://github.com/ajinabraham/OWASP-Xenotix-XSS-Exploit-Framework#owasp-xenotix-xss-exploit-framework

  • BeEF:

Browser Exploitation Framework. Es una herramienta de prueba de penetración que se centra en el navegador web.
BeEF permite al pentester evaluar la seguridad real de un entorno objetivo mediante el uso de vectores de ataque del lado del cliente. 

Podemos encontrar esta herramienta instalada por defecto en Kali Linux.



  • BruteXSS:


BruteXSS es una herramienta muy potente y rápida, que se utiliza para forzar parámetros por medio de fuerza bruta. El BruteXSS inyecta múltiples cargas útiles que obtiene de una lista de palabras específica y las ejecuta sobre los parámetros indicados, escaneando si alguno de los parámetros es vulnerable a la vulnerabilidad XSS. 


  1. Soporta peticiones GET y POST.
  2. Fuerza bruta de parámetros XSS.
  3. Escaneo vulnerabilidades XSS.
  4. Se puede incluir una lista de palabras personalizada
  5. Interfaz de usuario amigable.
https://github.com/shawarkhanethicalhacker/BruteXSS-1


  • XSSer:
Cross Site "Scripter" es un marco automático para detectar, explotar y reportar vulnerabilidades XSS en aplicaciones basadas en la web.

  1. Viene instalada por defecto en Kali Linux.
  2. Soporta peticiones GET y POST.
  3. Permite diferentes tipos de inyecciones (XST, XSS, XSA, XSR, DOM, DCP, Induced...).

https://sourceforge.net/projects/xsser/


EJEMPLOS DE INYECCIONES: 

Algunos de los ejemplos de inyección que se pueden realizar en una aplicación web vulnerable a XSS:

<script>alert('XSS');</script> (Alert)
<script>prompt('XSS')</script> (Para sacar un prompt)
<svg onload=prompt('XSS')> (Para sacar un prompt)
<script>alert(document.cookie)</script> (Para sacar cookie de sesión)
<script>alert(document.domain)</script> (Para sacar la IP de la WEB)
<script>for(;;)alert("bucle");</script> (Denegación de servicio)
<img src=foo.png onerror=alert(/XSS/) /> (Inyección en objeto IMG de HTML)
<BODY onload=alert("XSS")> (Inyectando objeto BODY de HTML)


REFERENCIAS: 


martes, 20 de noviembre de 2018

Dirsearch - Fuerza bruta a directorios


Dirsearch es un escáner de directorios para aplicaciones web (diseñado en Python), que ayudara a un hacker ético a búscar información de un sitio web, haciendo fuerza bruta sobre la estructura del mismo (directorios y archivos).

Dirsearch es una sustituta perfecta a la herramienta DirBuster de OWASP, ya que cumple la misma función.

Es compatible con sistemas operativos Linux, Windows y macOS.


La herramienta puede descargarse desde:
https://github.com/maurosoria/dirsearch

Es importante tener en cuenta que la herramienta está desarrollada en Python, por lo que es indispensable tener instalado Python 3 en el equipo:
https://www.python.org/downloads/

Como se ha comentado, dirsearch emplea fuerza bruta, para lo que utiliza por defecto una base de datos incluida, con más de 6600 palabras.
Además de esto y como en todas las herramientas que utilizan fuerza bruta, se pueden utilizar diccionarios prediseñados, por nosotros mismos u otros y el éxito dependerá en parte en las dimensiones y la calidad de los mismos.

Algunas de las características y funcionalidades de Dirbuster son:
  • Permite la configuración de múltiples extensiones de archivos (.php, .html, .asp, etc).
  • Genera reportes en formato JSON o en texto plano.
  • Reconoce automáticamente páginas inválidas y falsos positivos.
  • Uso aleatorio de varios User-Agent para evitar bloqueos.
  • Soporte para proxy HTTP.
  • Retraso entre peticiones para evadir bloqueos y sistemas de seguridad.

Comando base:

# python3 disearch.py -u (url) -e (target extensions)

  • Opciones:
  -h, --help            show this help message and exit

  Mandatory:
    -u URL, --url=URL   URL target
    -L URLLIST, --url-list=URLLIST
                        URL list target
    -e EXTENSIONS, --extensions=EXTENSIONS
                        Extension list separated by comma (Example: php,asp)


  Dictionary Settings:
    -w WORDLIST, --wordlist=WORDLIST
    -l, --lowercase    
    -f, --force-extensions
                        Force extensions for every wordlist entry (like in
                        DirBuster)


General Settings:
    -s DELAY, --delay=DELAY
                        Delay between requests (float number)
    -r, --recursive     Bruteforce recursively
    --suppress-empty, --suppress-empty
    --scan-subdir=SCANSUBDIRS, --scan-subdirs=SCANSUBDIRS
                        Scan subdirectories of the given -u|--url (separated
                        by comma)
    --exclude-subdir=EXCLUDESUBDIRS, --exclude-subdirs=EXCLUDESUBDIRS
                        Exclude the following subdirectories during recursive
                        scan (separated by comma)
    -t THREADSCOUNT, --threads=THREADSCOUNT
                        Number of Threads
    -x EXCLUDESTATUSCODES, --exclude-status=EXCLUDESTATUSCODES
                        Exclude status code, separated by comma (example: 301,
                        500)
    -c COOKIE, --cookie=COOKIE
    --ua=USERAGENT, --user-agent=USERAGENT
    -F, --follow-redirects
    -H HEADERS, --header=HEADERS
                        Headers to add (example: --header "Referer:
                        example.com" --header "User-Agent: IE"
    --random-agents, --random-user-agents


  Connection Settings:
    --timeout=TIMEOUT   Connection timeout
    --ip=IP             Resolve name to IP address
    --proxy=HTTPPROXY, --http-proxy=HTTPPROXY
                        Http Proxy (example: localhost:8080
    --max-retries=MAXRETRIES
    -b, --request-by-hostname
                        By default dirsearch will request by IP for speed.
                        This forces requests by hostname


  Reports:
    --simple-report=SIMPLEOUTPUTFILE
                        Only found paths
    --plain-text-report=PLAINTEXTOUTPUTFILE
                        Found paths with status codes
    --json-report=JSONOUTPUTFILE





# python3 dirsearch.py -u https://k-oox.blogspot.com/ -e txt,php,html -x 404

( -u = URL Target / -e = Extensiones / -x = Estados excluidos )







Tras finalizar el escaneo, se generará de manera automática un archivo del escaneo realizado, en la carpeta "reports, archivado y ordenado por target y fecha.

Se puede abrir con cualquier editor de texto.