#Introduzione

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.

#Analisi di rete con IP ADDR

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.

#Cambiare indirizzo IP con IFCONFIG

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:

0.1

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

0.2

Premiamo invio e vediamo se il comando è andato a buon fine.

0.3

Notiamo che siamo passati da 192.168.226.125 a 192.168.226.130.

#DIG

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:

0.4

;; 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:

  • NOERROR, andato a buon fine. La zone viene servita dall’authority senza problemi.
  • SERVFAIL, il nome richiesto esiste ma non ci sono dati validi da mostrare.
  • NXDOMAIN, il nome richiesto non esiste.
  • REFUSED, non esiste nessuna zone presso l’authority valida a soddisfare questa richiesta.

;; 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.

#Mappare indirizzi IP con /etc/hosts

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
0.5

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:

0.6

E se andiamo nel browser e nella barra degli indirizzi digitiamo https://nomeacaso avremo questo risultato:

0.7

L’indirizzo IP possiamo ricavarlo dalla query che inoltra dig o lanciando anche il comando ping.

#Social Networks

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!

Donato Di Pasquale
Donato Di Pasquale
@dipa996 | linkedin.com/in/ddipa | dipa.undo.it

Lascia un commento