Tecniche di Enumerazione

Tempo di lettura: 8 minuti

L’enumerazione è il processo di estrazione del nome degli utenti, delle macchine e dei servizi prelevandoli da un sistema o applicazione attiva. Nella fase di enumerazione l’attaccante cerca di creare connessioni attive al sistema utilizzando le informazioni rilevate durante la fase di scanning. Le informazioni che possono essere ricavate da questo attacco sono:

  • risorse di rete;
  • utenti e gruppi attivi online;
  • nomi delle macchine online;
  • applicazioni attive;
  • dettagli dei servizi SNMP;

Le tecniche di enumerazione sono diverse, tra le tante si possono identificare:

  1. Estrarre username utilizzando servizi mail;
  2. Estrarre informazioni utilizzando password di default;
  3. Estrarre nomi utenti utilizzando SNMP;
  4. Estrarre i gruppi di utenti con Windows.

Per questa tecnica esistono delle porte specifiche su cui focalizzarsi. Se esse sono attive su di un host si può attuare l’attacco. Le principali sono:

  • TCP 25: SMTP;
  • TCP 53: significa che è in corso una comunicazione tra DNS (utilizzata per connessioni tra database e server);
  • TCP 135: la porta 135 è utilizzata solitamente da modem e router (con il servizio rpc attivo);
  • TCP 137: è attivo il servizio NetBios. NetBios Name Servers è un servizio di Windows, utilizzato per connettere il proprio computer alla rete locale. Se viene trovato attivo e in funzione, è possibile che sia facilmente vulnerabile;
  • TCP 445: servizio di windows con cui si possono condividere file e cartelle;
  • UDP 161: SNMP
  • TCP/UDP 389: LDAP;
  • TCP/UDP 3368: Global Catalog Service;

Per una lista completa di tutte le porte e servizi noti potete fare riferimento a Wikipedia.

Enumerazione NetBIOS

NetBIOS è un protocollo di livello sessione, destinato all’uso nelle reti locali. Se viene trovata la porta 139 aperta e attiva si può rilevare:

  • la lista dei computer connessi alla macchina;
  • le password salvate;

Se il servizio è attivo e vulnerabile, oltre a poter leggere e scrivere da remoto c’è la possibilità di lanciare un denial-of-service.

Per verificare se è attivo, oltre a provare ad effettuare una semplice scansione, possiamo anche utilizzare metasploit (farò una guida a riguardo). I comandi che vado ad utilizzare sono

root@kali:~# msfconsole
IIIIII dTb.dTb _.---._
II 4' v 'B .'"".'/|\`.""'.
II 6. .P : .' / | \ `. :
II 'T;. .;P' '.' / | \ `.'
II 'T; ;P' `. / | \ .'
IIIIII 'YvP' `-.__|__.-'

I love shells --egypt

Trouble managing data? List, sort, group, tag and search your pentest data
in Metasploit Pro -- learn more on http://rapid7.com/metasploit

=[ metasploit v4.11.5-2016010401 ]
+ -- --=[ 1517 exploits - 875 auxiliary - 257 post ]
+ -- --=[ 437 payloads - 37 encoders - 8 nops ]
+ -- --=[ Free Metasploit Pro trial: http://r-7.co/trymsp ]

Seleziono il comando che mi interessa

msf > use auxiliary/scanner/netbios/nbname

Visualizzo le informazioni del comando

msf auxiliary(nbname) > info

Name: NetBIOS Information Discovery
Module: auxiliary/scanner/netbios/nbname
License: Metasploit Framework License (BSD)
Rank: Normal

Provided by:
hdm <x@hdm.io>

Basic options:
Name Current Setting Required Description
---- --------------- -------- -----------
BATCHSIZE 256 yes The number of hosts to probe in each set
RHOSTS yes The target address range or CIDR identifier
RPORT 137 yes The target port
THREADS 10 yes The number of concurrent threads

Description:
Discover host information through NetBIOS

Imposto il range di IP

msf auxiliary(nbname) > set RHOSTS 172.16.43.160-195
RHOSTS => 172.16.43.160-195

Imposto il numero di threads a 35 (il numero degli host)
msf auxiliary(nbname) > set THREADS 35
THREADS => 35

Eseguo il test con il comando run
msf auxiliary(nbname) > run

[*] Sending NetBIOS requests to 172.16.43.160->172.16.43.195 (36 hosts)
[*] 172.16.43.188 [MA[..]] OS:Windows Names:(MA[..]) Addresses:(172.16.43.188) Mac:00:[..]:ad
[*] Scanned 36 of 36 hosts (100% complete)
[*] Auxiliary module execution completed

Come potete vedere ho trovato un host che ha il servizio attivo. Con il comando

root@kali:~# nmblookup -A 172.16.43.188
Looking up status of 172.16.43.188
    MA[..]  -         H  

    MAC Address = 00[..]AD

scopro il tipo di nodo utilizzato (in questo caso H). Provo quindi a vedere se possono connettermi

root@kali:~# smbclient -L \\MACBOOKPRO-D60C -I 172.16.43.188 -N
Connection to 172.16.43.188 failed (Error NT_STATUS_CONNECTION_REFUSED)

ma a quanto pare è presente una password, e non vado oltre.

Enumerazione dei sistemi utilizzando la password di default

I dispositivi come router, modem e access point hanno una password di default. Queste password vengono stabilite dai produttori dell’hardware e viene vivamente consigliato di cambiarle appena si avvia per la prima volta il dispositivo. Per le principali password dei dispositvi fate riferimento a;:

Conoscendo queste password si può avere accesso alle risorse senza dover scansionare o trovare vulnterabilità.

Enumerazione SNMP

Simple Network Management Protocol è un protocollo di rete su cui girano applicazioni per mantenere e gestire router, modem e hub. Utilizzando il suddetto protocollo si possono rilevare gli account e i dispositivi connessi a un determinato sistema. Per linux i tools per l’enumerazione SNMP sono snmpcheck e snmpwalk.

Un’altro software per l’enumerazione in una rete è enum4linux. Viene utilizzato per l’enumerazione di servizi attivi su Windows e Samba e, utilizzandolo in modo appropriato, si può ricavare:

  • la lista degli utenti;
  • la lista delle macchine;
  • la lista delle cartelle condivise;
  • e molto altro…

Enumerazione NTP

NTP è un protocollo che permette di sincronizzare gli orologi dei computer connessi all’interno di una rete a commutazione di pacchetto e utilizza la porta 123. I tools che si possono utilizzare in questo caso sono:

  • ntptrace;
  • ntpdc;
  • ntpq.

Enumerazione DNS

Questa tecnica viene effettuata per localizzare il DNS server di un obbiettivo e registrare i passaggi che effettua per raggiungere il server. Questa tecnica permette di rilevare i nome dei server DNS, gli hostname, i nomi delle macchine e gli indirizzi IP delle potenziai vittime. Un tool molto semplice può essere dnsenum. Basta digitare

dnsenum sito.it

ed ecco che riesco a trovare gli indirizzi IP del DNS e della mail

dnsenum
dnsenum

Spero di essere stato il più chiaro possibile, questo tipo di attacco è quello appena precedente ad effettuare exploit e riuscire a sfruttare delle vulnerabilità per entrare nei sistemi. Se, come al solito, pensate che manchi qualcosa, segnalatelo pure.