TorBot es una herramienta de inteligencia de código abierto desarrollada en Python. Su principal objetivo es recoger datos abiertos de la Dark Web y con la ayuda de algoritmos de minería de datos, recopilar la mayor cantidad de información posible sobre un dominio .onion.

Dark Web

Como funciona TorBot para la Dark Web

El procedimiento básico ejecutado por el crawler de la web toma una lista de URL como entrada y ejecuta repetidamente los siguientes pasos:

URLs = input(url)
while(URLs is not empty) do
    dequeue url
    request page
    parse for Links
    for(link in Links) do 
        if (link islive && link is not visited) then 
            add link to URLs
    store page content

Características.

  • Onion Crawler (.cebolla).(Completado)
  • Devuelve el título de la página y la dirección con una breve descripción sobre el sitio. (Parcialmente completado)
  • Guardar los enlaces a la base de datos. (PR a ser revisado)
  • Recibir correos electrónicos del sitio. (Completado)
  • Guarda la información de rastreo en el archivo JSON. (Completado)
  • Rastrear dominios personalizados. (Completado)
  • Comprueba si el enlace está vivo. (Completado)
  • Actualizador incorporado. (Completado)
  • TorBot GUI (ver rama front_end)
  • Integración de los medios sociales. (no iniciado) … (se actualizará)

Dependencias del OS

  • Tor
  • Python 3.x
  • Golang 1.x (No usado actualmente)

Dependencias de Python

  • beautifulsoup4
  • pyinstaller
  • PySocks
  • termcolor
  • solicitudes
  • requests_mock
  • yattag

Configuración básica.

Antes de ejecutar el torBot asegúrate de que las siguientes cosas se han realizado correctamente:

  • Ejecutrar tor sudo service tor start
  • Asegúrate de que tu torrc está configurado a SOCKS_PORT localhost:9050
  • Instala TorBot Python pip3 install -r requisitos.tx

En plataformas Linux, puedes hacer un ejecutable para TorBot usando el script install.sh. Necesitarás darle al script los permisos correctos usando chmod +x install.sh Ahora puedes ejecutar ./install.sh para crear el binario de TorBot. Ejecuta ./torBot para arrancar el programa.

Hay una forma alternativa de ejecutar torBot, junto con instrucciones de ayuda.

python3 torBot.py or use the -h/--help argument

usage: torBot.py [-h] [-v] [--update] [-q] [-u URL] [-s] [-m] [-e EXTENSION]
                 [-l] [-i]

optional arguments:
  -h, --help            Show this help message and exit
  -v, --version         Show current version of TorBot.
  --update              Update TorBot to the latest stable version
  -q, --quiet           Prevent header from displaying
  -u URL, --url URL     Specifiy a website link to crawl, currently returns links on that page
  -s, --save            Save results to a file in json format
  -m, --mail            Get e-mail addresses from the crawled sites
  -e EXTENSION, --extension EXTENSION
                        Specifiy additional website extensions to the
                        list(.com or .org etc)
  -l, --live            Check if websites are live or not (slow)
  -i, --info            Info displays basic info of the scanned site (very
                        slow)` 

Usando Docker

  • Asegúrate de que tienes un contenedor tor funcionando en el puerto 9050.
  • Construye la imagen usando el siguiente comando: docker build -t dedsecinside/torbot .
    Ejecuta el contenedor (asegúrate de enlazar el contenedor tor como tor): docker run --link tor:tor --rm -ti dedsecinside/torbot