Comprendere il networking è fondamentale per qualsiasi aspirante hacker. Un buon hacker deve sapere come connettersi ed interagire con una rete. Questi tipi di attività sono relativamente semplici ma richiedono un po’ di know-how di rete. In questo articolo tratteremo concetti e strumenti fondamentali per partire ad analizzare una rete.
Il comando ip addr(o ip a)
è uno degli strumenti più basilari per esaminare ed interagire con interfacce di rete attive. Puoi usarlo per interrogare le tue connessioni di rete attive semplicemente digitando ip addr
oppure if config
nel terminale. Provalo, dovresti ottenere un output molto simile a questo:
eth0 Link encap:EthernetHWaddr 00:0c:29:ba:82:0f
inet addr:192.168.181.131
inet addr:127.0.0.1 Mask:255.0.0.0
wlan0 Link encap:EthernetHWaddr 00:c0:ca:3f:ee:02
Come vedi, il comando ip addr(o ip a)
mostra alcune utili informazioni sulle interfacce di rete attualmente attive. Nella parte superiore dell’output c’è il nome della prima interfaccia rilevata eth0
. Che è l’abbreviazione di Ethernet0. Questa è la prima connessione, se ci fossero più reti cablate avremmo eth1, eth2 e così via.
La seconda riga contiene le informazioni sull’indirizzo IP attualmente assegnato a quella interfaccia di rete (in questo caso 192.168.181.131
).
Nella terza riga troviamo un’altra connesione di rete chiamata lo
che è l’abbreviazione di loopback ed è anche chiamata localhost. L’host locale è generalmente rappresentato con l’indirizzo IP 127.0.0.1
.
L’ultima connessione che vediamo è la wlan0
. Questa però viene visualizzata solamente se si dispone di un’interfaccia wireless o un adattatore, infatti verrà mostrato anche il suo indirizzo MAC.
Per modificare il tuo indirizzo IP, inserisci sudo ifconfig
seguito dall’interfaccia che desideri riassegnare e il nuovo indirizzo IP che desideri assegnare a quell’interfaccia.
Ad esempio:
Con sudo ifconfig
vediamo che a eth0
è assegnato 192.168.226.125
.
Cambiamo l’indirizzo IP digitando a terminale:sudo ifconfig eth0 192.168.226.125 192.168.226.130
Premiamo invio e vediamo se il comando è andato a buon fine.
Notiamo che siamo passati da 192.168.226.125
a 192.168.226.130
.
Un “sistema dei nomi di dominio” o DNS (Domain Name System) traduce nomi comprensibili o mnemonici come www.pentestingmadesimple.it in indirizzi IP utilizzati dai computer, ad esempio 66.96.146.129
.
In questo modo il tuo sistema sa come raggiungere pentestingmadesimple. Senza DNS, bisognerebbe infatti ricordarsi l’indirizzo IP.
Quando vogliamo ottenere delle informazioni su un determinato nome di dominio, il comando dig
torna molto utile.dig
ci permette di ottenere informazioni sul DNS del nostro target. Come, ad esempio, l’indirizzo IP del server, il server di posta elettronica associato e potenzialmente anche i nomi di sottodomini e relativi indirizzi ip.
Un esempio di output:
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 57311
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1
Questa è la prima parte della risposta, l’ opcode
è l’azione che DIG ha intrapreso, che in questo caso è una query. Lo status
è molto importante, descriviamo i 4 tipi più comuni:
;; QUESTION SECTION:
;www.pentestingmadesimple.it. IN A
Indica che dig
ha cercato un indirizzo IPV4 (A Record) su www.pentestingmadesimple.it.
;; ANSWER SECTION:
www.pentestingmadesimple.it. 5 IN CNAME pentestingmadesimple.it.
pentestingmadesimple.it. 5 IN A 89.40.173.194
La sezione delle risposte, invece, elenca tutte le risposte trovate per la query selezionata. In questo caso ci indica che sia www.pentestingmadesimple.it che pentestingmadesimple.it sono collegati allo stesso indirizzo IP.
Infine troviamo dati statistici sulla query effettuata.
C’è un file sul tuo computer che funge da piccolo gateway tra te e il web. Si chiama file hosts. Se devi bloccare i siti web o creare scorciatoie web personalizzate su Linux, puoi affrontare questi lavori aggiungendo o modificando alcune righe in quel file.
Il file hosts è un semplice file di testo che tutti i sistemi operativi utilizzano per tradurre nomi host (noti anche come indirizzi Web o URL) in indirizzi IP. Quando digiti un nome host, come www.pentestingmadesimple.it, il tuo sistema cercherà nel file degli host l’indirizzo IP necessario per connettersi al server appropriato.
il sistema controllerà il file hosts prima di cercare un sito sui server DNS definiti nelle impostazioni di rete (in genere i server DNS dell’ISP).
Possiamo accedere al nostro file hosts con il comando:
vim /etc/hosts
Vediamo come localhost e parrot sono mappati con 127.0.0.1
.
Io ho aggiunto 10.10.10.222 delivery.htb helpdesk.delivery.htb
.
Noi, ad esempio, possiamo mappare il sito www.bankofamerica.com in questo modo:
E se andiamo nel browser e nella barra degli indirizzi digitiamo https://nomeacaso avremo questo risultato:
L’indirizzo IP possiamo ricavarlo dalla query che inoltra dig
o lanciando anche il comando ping
.
Se l’articolo vi è piaciuto, potete continuare a seguirci, oltre che su questo blog, anche sugli altri canali attivi e ricchi di contenuti: Twitch e YouTube.
Non esitate a lasciarci feedback, domande o precisazioni nei commenti o sui nostri canali social di Telegram e Discord!
Entra a far parte della nostra community!
Registrati subito per commentare video e articoli.