Subido por Jesus Martell

TOR: Herramientas de Pentest - Guía para Pruebas de Penetración

Anuncio
TOR - Herramientas de
pentest
Nuria Prieto
¿QUIÉN SOY?
Universidad Carlos III de Madrid
• Más de 30 años trabajando en el Servicio de Informática de la Universidad, pasando los últimos años en el
CSIRT (Computer Security Incident Response Team).
• Nuestro objetivo es que la comunidad universitaria pueda trabajar segura.
Búscame en:
Twitter: @nuria_imeq
Medium: https://nuria-pp.medium.com/
Github: https://github.com/VentressAsajj
TOR - The Onion Router
¿Qué es TOR y cómo funciona?
● Proyecto abierto que permite navegación anónima y privada de sus usuarios. El protocolo TOR usa cifrado en las
comunicaciones.
● Al ser anónimo y privado es usado tanto por personas que quieren evadir la censura de sus países como por
ciberdelincuentes.
● Conceptos: Surface ( Clear Web), Deep, Dark Web, TOR es una darknet.
● Establecimiento de circuito en el momento de la conexión, mínimo tres nodos.
¿TOR es la única red o servicio anónimo?
● Otras darknets: Freenet, I2P y menos conocida GNUnet.
● Servicios de proxies, VPN o incluso tuneles.
TOR
Tips sobre TOR
•
•
•
•
•
Servicios ocultos, hidden Service. Los “.onion”
○ Facebook https://www.facebookwkhpilnemxj7asaniu7vnjjbiltxjqhye3mhbshg7kx5tfyd.onion/
○ Twitter https://twitter3e4tixl4xyajtrzo62zg5vztmjuricljdp2c5kshju4avyoid.onion/home
○ Protonmail https://protonmailrmez3lotccipshtkleegetolb73fuirgj7r4o4vfu7ozyd.onion/
○ BBC News https://www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion/
○ The New York Times https://www.nytimesn7cgmftshazwhfgzm37qxb44r64ytbb2dj3x62d2lljsciiyd.onion
Sólo usa protocolo TCP, no ICMP, ni UDP por lo que no hay DNS.
Tipos de nodos ( relays ). Cada nodo tiene ciertos atributos determinados por consenso entre nodos de autoridad.
○ Authority Directory Relay: Estos nodos conforman las autoridades de directorio, que son las encargadas de
mantener y distribuir la lista del resto de nodos de la red de TOR. Este atributo solo lo tienen estos nodos.
○ HSDir relay: Estos nodos tienen información sobre cómo acceder a ciertos servicios ocultos de la red de TOR.
○ Guard relay: Estos nodos conforman los nodos de entrada de la red TOR.
○ Middle relay: Nodos verificados de la red de TOR que se encargan simplemente de enrutar las comunicaciones
que reciben.
○ Exit relay: Nodos de la red de TOR que se encargan de redirigir el tráfico del nodo cliente a su destino.
○ Bridge relay: No son públicos, el resto están listados en los directorios de IPs públicas.
Cifrado de las comunicaciones.
Red TOR vs Tor Browser. ( ojo con activar javascript en el navegador TorBrowser perderás la privacidad)
TOR
Fichero de configuración
• torrc
• Configuración.
•
●
●
●
●
●
EntryNodes {ch},{se},{is} y ExitNodes {is},{no},{ch}. StrictNodes
EntryNodes {se},{ch},{is}
ExitNodes {is},{no},{ch}
StrictNodes 1
ExcludeExitNodes {us} y ExcludeNodes {us} junto con StrictNodes. Con ésta última para garantizar que usa los nodos que indicamos.
ExcludeNodes {us},{cn},{ru} StrictNodes 1
Log notice file /var/log/tor/notices.log
HTTPProxy y HTTPProxyAuthenticator: Configurar Tor como un http proxy
NewCircuitPeriod 60. Construye un circuito cada N segundos.
Aceptando solicitudes DNS como si fuera un DNS normal o también resolución mediante el comando tor-resolve domain
DNSPort 9053
AutomapHostsOnResolve 1
AutomapHostsSuffixes .exit, .onion
TOR
Fichero de configuración
• torrc
• Configuración.
•
●
●
●
●
●
●
EntryNodes {ch},{se},{is} y ExitNodes {is},{no},{ch}. StrictNodes
EntryNodes {se},{ch},{is}
ExitNodes {is},{no},{ch}
StrictNodes 1
ExcludeExitNodes {us} y ExcludeNodes {us} junto con StrictNodes. Con ésta última para garantizar que usa los nodos que indicamos.
ExcludeNodes {us},{cn},{ru} StrictNodes 1
Log notice file /var/log/tor/notices.log
HTTPProxy y HTTPProxyAuthenticator: Configurar Tor como un http proxy
NewCircuitPeriod 60. Construye un circuito cada N segundos.
Aceptando solicitudes DNS como si fuera un DNS normal o también resolución mediante el comando tor-resolve domain
DNSPort 9053
AutomapHostsOnResolve 1
AutomapHostsSuffixes .exit, .onion
Creando servicio oculto.
HiddenServiceDir /var/lib/tor/apache/
HiddenServicePort 80 127.0.0.1:80
Alternativas a TOR
Distribuciones
● Qubes OS. Dicen que es la más segura. Pemite separación de privilegios físicos y lógicos entre los espacios
de trabajo.
● Kodachi. Puedes ejecutarlo desde USB, ISO o VPN. A destacar, usa VPN - TOR y DNS cifrado.
● Kali o Parrot
● Tails. Portátil
● Black Arch Linux.
● Discreete Linux.
● Whonix Linux.
● Alpine Linux, ArchStrike …
Pentest hidden service
Motores de búsquedas en la Dark Web
• Ahmia
○ https://ahmia.fi/
○ http://juhanurmihxlp77nkq76byazcldy2hlmo
vfu2epvl5ankdibsot4csyd.onion/
•
Ahmia
○ https://ahmia.fi/
○ http://juhanurmihxlp77nkq76byazcldy2hlmovfu2epvl5ankdibsot4csyd.onion/
• DeepSearch http://search7tdrcvri22rieiwgi5g46qnwsesvnubqav2xakhezv4hjzkkad.onion/
• OnionLand http://3bbad7fauom4d6sgppalyqddsqbf5u5p56b5k5uk2zxsy3d6ey2jobad.onion/
• Phobos http://phobosxilamwcg75xt22id7aywkzol6q6rfl2flipcqoc4e4ahima5id.onion/
• Torsearch http://wapabp2pnqczbxq4dqdo7txexhkqjzazmvrljxijtd5s2cohvejf4nqd.onion/
Programa python OnionSearch, el mega buscador.
● pip3 install onionsearh
● git clone https://github.com/megadose/OnionSearch.git
cd OnionSearch/
python3 setup.py install
Pentest hidden service: onionsearch
Opcion
es
Pentest hidden service - onionscan
Onionscan
• Open source escrito en lenguaje go por Sarah Jamie Lewis (@sarajamielewis ), proyecto abandonado.
https://github.com/s-rah/onionscan
• No adaptado a direcciones onion v3 hay que parchear el código.
• Crawler con correlación, escaner de los principales puertos, detecta direcciones email, BTC y chequea cabeceras html.
• Dos modos: escáner y análisis.
○
onionscan -mode analysis -webport 8888
○
onionscan -jsonReport -jsonSimpleReport -reportFile json -verbose hidden_service.onion
Pentest hidden service
Pentest hidden service
Torsocks y proxychains
●
Torsocks permite utilizar aplicaciones a través de la red TOR
torsocks dig +tcp @1.1.1.1 google.es
torsocks curl -I http://kx6hftcujl3se23u3kjsjgdto72mtbykertyvjcnawyn4aspwko3c6yd.onion/
torsocks -q nmap -sT -Pn -n cfv5uye3kk7arw45ieve3tmpymohf6w3ztc4ggutnrfjvdwhc3t27lad.onion
●
Proxychains, proxy que usa la red TOR
configuración con TOR: socks5 127.0.0.1 9050
proxychains -q nmap -sT -Pn -n cfv5uye3kk7arw45ieve3tmpymohf6w3ztc4ggutnrfjvdwhc3t27lad.onion
proxychains -q curl -I http://kx6hftcujl3se23u3kjsjgdto72mtbykertyvjcnawyn4aspwko3c6yd.onion/
Pentest hidden service
Nmap
• Nmap enumeración de servicios.
torsocks nmap -A -sT -Pn -n hidden_service.onion
-A busca sistema operativo y versión.
-sT solo TCP
-Pn no ping
-n no resolución DNS
-sV puertos abiertos, obtener servicio y versión.
-p puertos
torsocks -q nmap -sT -sV -Pn -n -p 22,2022,2222 hidden_service.onion
torsocks nmap -sT -sV -Pn -n -p 80 --script=http-enum hidden_service.onion
Pentest hidden service
nikto
torsocks nikto -h http://hidden_service.onion
favicons
Buscamos favicon en shodan, criminalIP o similar.
https://github.com/VentressAsajj/searchFavicoShodan
Pentest hidden service
dirsearch
●
Escaner de directorios y ficheros
proxychains -q ./dirsearch.py -x 403,404,501 -i 200,301,302 -o hidden.json --format=json -u hidden_service.onion
●
Opciones
○ -x excluir códigos de respuesta.
○ -i incluir el código de respuesta que queremos
○ -o fichero salida
○ –format=json|xml|cvs
○ -e extensiones a comprobar
○ -q no ver errores en el terminal
○ -w wordlist
Pentest hidden service
ssh
En el caso de tener abierto este servicio
torsocks -q nmap -sV -sT -Pn -n -p 22 --script=ssh-hostkey --script-args ssh_hostkey=all hidden_service.onion
Pentest hidden services
wordpress
torsocks -q wpscan --url hidden_service.onion
Referencias
●
●
●
●
●
●
●
●
●
●
https://www.torproject.org/
Paquete red TOR para Windows
http://www.cs.uml.edu/~xinwenfu/paper/HiddenServer.pdf
Exit Node de TOR
Chequear si usas TOR
Qubes OS
Nmap
Nikto2
Dirsearch
Favicon
GRACIAS
Descargar