Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Descubrimiento hosts gubernamentales con recon-ng
#1
Puedes ver una versión wiki de éste post en https://wiki.acosadores.net/doku.php?id=...n-recon-ng

1º mediante google con gov site:.as y otras búsquedas nos hacemos con las urls del gobierno

2º Crear un fichero sin las https:// ni http:// ni www ni la / final

3º He creado medios.txt con unos 29 dominios saudíes




recon-ng: Es una herramienta de recolección de información con una interfaz similar a metasploit




recon-ng



[recon-ng][default] > workspaces create arabia_saudi




workspaces load arabia_saudi




[recon-ng][arabia_saudi] > marketplace install recon/domains-hosts/hackertarget




[recon-ng][arabia_saudi] > modules search







  Recon



  -----



    recon/domains-contacts/whois_pocs



    recon/domains-hosts/hackertarget




[recon-ng][arabia_saudi] > modules load recon/domains-hosts/hackertarget




[recon-ng][arabia_saudi][hackertarget] > options




Manages the current context options




Usage: options <list|set|unset> [...]




El módulo cargado lo que hará será intentar obtener todos los subdominios de los dominios o subdominios dados




[recon-ng][arabia_saudi][hackertarget] > options (si le das a tab salen los parámetros de options)




list  set    unset




[recon-ng][arabia_saudi][hackertarget] > options set SOURCE spa.gov.sa




SOURCE => spa.gov.sa




[recon-ng][arabia_saudi][hackertarget] > options list




Name    Current Value  Required  Description



  ------  -------------  --------  -----------



  SOURCE  spa.gov.sa    yes      source of input (see 'info' for details)




[recon-ng][arabia_saudi][hackertarget] > run (ejecuta el módulo cargado)




muestra subdominios con sus respectivas ips




Pero en en fichero medios.txt teníamos muchos dominios, no podemos ir de uno en uno, es mucho tiempo y repetir las mismas líneas muchas veces, para ello salimos de la interfaz con el comando back 2 veces y utilizamos la opción -r de recon-ng y le damos el fichero con los comandos, pero para crear el fichero con los comandos hay que hacer un script que repita los comandos que hemos puesto en la interfaz, veamos:






Code:
#! /bin/bash

# Crea el archivo commands
echo "workspaces load arabia_saudi" > commands
echo "modules load recon/domains-hosts/hackertarget" >> commands

# Iterar sobre cada dominio en medios.txt
while read domain; do
  echo "options set SOURCE $domain" >> commands
  echo "run" >> commands
done < medios.txt




le damos permisos de ejecución con chmod +x script.sh, ejecutamos con ./script.sh y crea el fichero commands




después hacemos:




recon-ng -r /home/usuario/archivos/arabia_saudi/commands (tiene que ser ruta completa, no puede ser ruta relativa porque da error)




Bien, ahora estamos en la interfaz, vemos que tarda un poco porque está haciendo bastantes cosas (lo que haríamos manualmente, repetir mucho)




Ahora de lo que nos damos cuenta es que al hacer desde el prompt




[recon-ng][arabia_saudi] > show hosts (no entra el resultado en el buffer de la terminal / consola)





Bien, para solucionarlo volcamos el resultado en un fichero haciendo lo siguiente:





spool start /home/usuario/arabia_saudi/volcado.txt



[*]Spooling output to '/home/usuario/arabia_saudi/volcado.txt'.

a partir de ahora todos los resultados de los comandos se guardarán en el fichero volcado.txt

ponemos:

[recon-ng][arabia_saudi] > show hosts

[recon-ng][arabia_saudi] > spool stop

[*]Spooling stopped. Output saved to '/home/usuario/arabia_saudi/volcado.txt'.
[recon-ng][arabia_saudi] >

En volcado.txt si hacemos:

cat volcado.txt | grep -Eo '([0-9]{1,3}\.){3}[0-9]{1,3}' | wc -l
850
[*]
Pero no son todos esos hosts porque hay algunos dominios o subdominios apuntando a mismas ips

Si hacemos:
cat volcado.txt | grep -Eo '([0-9]{1,3}\.){3}[0-9]{1,3}' | sort | uniq | wc -l
675

Ahí si que se obtiene el número total de hosts físicos. Tal vez pueda interesar donde están físicamente y de alguna manera dibujar un mapa de donde están. Si leíste los anteriores posts recordarás como obtener ubicaciones a partir de la base de datos GeoLite2-City, así que primero creamos un fichero con todas las ips y después un script que itere sobre cada una, se lo de al comando y éste vaya añadiendo la ubicación a un fichero


cat volcado.txt | grep -Eo '([0-9]{1,3}\.){3}[0-9]{1,3}' | sort | uniq > ips_servidores_gobierno_sa.txt









Code:
#! /bin/bash


# Iterar sobre cada ip en ips_servidores_gobierno_sa.txt
while read ip; do
  echo "$(mmdblookup --file ../GeoLite2-City.mmdb --ip $ip | grep -oE '[0-9]{1,3}\.[0-9]{6}' | tr '\n' ',' | sed 's/,$/\n/')" >> ubicaciones_hosts_gobierno_as.txt
done < ips_servidores_gobierno_sa.txt
[*]

chmod +x coordenadas_ips_as.sh
./coordenadas_ips_as.sh

ahora ya tenemos las ubicaciones de los 675 servidores del gobierno y podemos usar por ejemplo qgis para verlas en el mapa

   

cat ubicaciones_hosts_gobierno_as.csv | sort | uniq
17.372400,78.437800
21.484900,39.192000
21.997400,79.001100
24.094900,38.062900
24.686900,46.722400
24.998600,44.989200
25.020600,37.264300
26.284600,50.208000
26.433600,50.111600
29.971300,40.202700
33.663700,117.174300
37.751000,97.822000
39.046900,77.490300
41.259100,95.851700
43.631900,79.371600
50.118700,8.684200
51.496400,0.122400
52.389100,4.656300

[*]Todos, los 666 están concentrados en 18 ubicaciones, y hay 9 que no tienen ninguna ubicación asignada


Attached Files
.gz   hosts_gobierno_as.tar.gz (Size: 15.12 KB / Downloads: 1)
Reply


Messages In This Thread
Descubrimiento hosts gubernamentales con recon-ng - by anonimo - 12-09-2024, 09:33 PM

Forum Jump:


Users browsing this thread: 1 Guest(s)