vuoi
o PayPal
tutte le volte che vuoi
Sudo nmap -sV: controlla anche la versione utilizzata
Sudo apt install (nome coso da installare) -y{-y serve per accettare da subito
l’installazione}
-h: aiuto comandi
Get: permette di prendere i file con ftp
Introduzione
Quando inizi una prova di penetrazione o una valutazione di sicurezza su un obiettivo,
il primo passo è chiamato Enumerazione. Questa fase consiste nel registrare
attentamente lo stato attuale dell'obiettivo per raccogliere il maggior numero possibile
di informazioni.
Essendo ora sulla stessa Rete Privata Virtuale (VPN) dell'obiettivo, puoi accedervi
direttamente come farebbe qualsiasi utente. Ad esempio, se l'obiettivo è un server
web con una pagina web pubblica, puoi andare al suo indirizzo IP per vedere cosa
contiene la pagina. Allo stesso modo, se è un server di archiviazione, puoi connetterti
ad esso utilizzando lo stesso indirizzo IP per esplorare i file e le cartelle memorizzati su
di esso, a patto di avere le credenziali necessarie.
Il problema principale è individuare questi servizi in modo efficiente. La ricerca
manuale richiederebbe troppo tempo. Di conseguenza, i server utilizzano delle porte
per comunicare dati ai client. Nella fase di Enumerazione, i primi passaggi coinvolgono
la scansione di queste porte aperte per capire il ruolo dell'obiettivo nella rete e
individuare eventuali vulnerabilità derivanti dai servizi in esecuzione su di esso.
Per velocizzare la scansione delle porte, utilizziamo uno strumento chiamato nmap, di
cui parleremo più approfonditamente nel capitolo sull'Enumerazione di questo
documento.
Dopo aver individuato le porte aperte sull'obiettivo, si accede manualmente a
ciascuna di esse per verificare l'accesso ai contenuti. I diversi servizi richiedono
strumenti o script specifici, che si imparano con esperienza e ricerca. La maggior parte
del test di penetrazione consiste nella ricerca online sul prodotto testato. È impossibile
conoscere tutto, ma è essenziale saper cercare le informazioni necessarie. La
precisione è più importante della velocità; perdere una risorsa durante l'Enumerazione
può compromettere un attacco vitale e ridurre notevolmente il tempo di lavoro
sull'obiettivo.
Enumerazione
Dopo aver stabilito con successo la connessione VPN, possiamo testare la connettività
con il target tramite un ping all'indirizzo IP del bersaglio. Prendi l'indirizzo IP del tuo
target dalla pagina del laboratorio "Starting Point" e incollalo nel terminale dopo aver
digitato il comando ping come illustrato di seguito. Dopo aver ricevuto quattro risposte
positive dal target, possiamo confermare che la connessione è stabile. Per
interrompere il comando ping, premi CTRL+C sulla tastiera, visualizzato nel terminale
come ^C. Questo restituirà il controllo al terminale, da dove possiamo procedere con
la scansione delle porte aperte del target per determinare i servizi in esecuzione su di
esse. Per avviare la scansione, utilizziamo il comando seguente con lo script nmap.
nmap, abbreviazione di Network Mapper, invierà richieste alle porte del target per
verificarne lo stato aperto o chiuso. Alcune porte sono utilizzate di default da
determinati servizi, mentre altre potrebbero essere non standard. Pertanto, useremo
l'opzione di rilevamento del servizio -sV per determinare il nome e la descrizione dei
servizi identificati. Il testo tra parentesi graffe {} rappresenta la tua versione di input e
dovrai sostituire la parte {target_IP} con l'indirizzo IP del tuo target.
Telnet:
Telnet è un protocollo di rete utilizzato per stabilire una connessione remota con
un'altra macchina attraverso la rete. Permette agli utenti di accedere e interagire con
la shell o l'interfaccia della riga di comando di un computer remoto come se fossero
fisicamente presenti davanti a esso. Tuttavia, Telnet trasmette dati, inclusi nomi utente
e password, in chiaro, senza crittografia, rendendolo poco sicuro per le comunicazioni
su reti pubbliche o non affidabili.(porta 23)
Foothold
A volte, a causa di errori di configurazione, alcuni account importanti possono essere
lasciati con password vuote per facilitarne l'accesso. Questo è un problema
significativo con alcuni dispositivi di rete o host, che li rende vulnerabili a semplici
attacchi di forza bruta, dove l'attaccante può provare ad accedere sequenzialmente,
utilizzando una lista di nomi utente senza inserire alcuna password. Alcuni account
importanti hanno nomi autoesplicativi, come:
admin
administrator
root
Un modo diretto per tentare l'accesso con queste credenziali, sperando che una di
esse esista e abbia una password vuota, è inserirle manualmente nel terminale
quando richieste dagli host. Se l'elenco fosse più lungo, potremmo utilizzare uno script
per automatizzare questo processo, alimentandolo con una lista di parole per i nomi
utente e una per le password. Tipicamente, le liste di parole utilizzate per questo
compito sono composte da nomi tipici, abbreviazioni o dati provenienti da precedenti
falle di database. Per ora, possiamo ricorrere al tentativo manuale di questi tre
principali nomi utente sopra elencati.
Secondo esercizio
Intro
In alcuni casi, potremmo trovare servizi di trasferimento file non sicuri durante
l'enumerazione dei servizi su host specifici nella rete del cliente. Questo esercizio mira
a comprendere il Protocollo di Trasferimento File (FTP), spesso configurato in modo
errato. I dipendenti potrebbero tentare di bypassare controlli per trasferire file non
autorizzati. Questo rappresenta un rischio significativo, poiché un attaccante potrebbe
sfruttare l'FTP non sicuro per accedere a informazioni sensibili dai log, utilizzabili per
mappare la rete e individuare altri servizi attivi.
Il modello architetturale client-server menzionato nelle prime righe dell'estratto si
riferisce ai ruoli che gli host nella rete hanno durante il trasferimento dei dati tra di
loro. Gli utenti possono scaricare e caricare file dal client (il proprio host) al server (un
dispositivo di archiviazione dati centralizzato) o viceversa. Concettualmente parlando,
il client è sempre l'host che scarica e carica file sul server, mentre il server è sempre
l'host che memorizza in modo sicuro i dati in fase di trasferimento.
Il Protocollo di Trasferimento File (FTP) è un protocollo di comunicazione standard
utilizzato per trasferire file da un server a un client su una rete informatica. FTP è
basato su un'architettura modello client-server che utilizza connessioni di controllo e
dati separate tra il client e il server. Gli utenti FTP possono autenticarsi con un
protocollo di accesso in chiaro, generalmente sotto forma di nome utente e password.
Tuttavia, possono anche connettersi in modo anonimo se il server è configurato per
consentirlo. Per una trasmissione sicura che protegga il nome utente e la password e
crittografi il contenuto, l'FTP è spesso protetto con SSL/TLS (FTPS) o sostituito con SSH
File Transfer Protocol (SFTP).
I client possono anche navigare nei file disponibili sul server quando utilizzano il
protocollo FTP. Dal punto di vista del terminale dell'utente, questa azione sembrerà
una navigazione delle directory del proprio sistema operativo per trovare i file di cui
hanno bisogno. I servizi FTP sono dotati anche di un'interfaccia grafica (GUI), simile ai
programmi di Windows OS, che facilita la navigazione per i principianti. Un esempio di
servizio FTP orientato all'interfaccia grafica è FileZilla.
Un posto che esegue un servizio attivo è uno spazio riservato per l'indirizzo IP del
target per ricevere richieste e inviare risultati. Consentendo più servizi su una singola
IP, i porti aggiungono un'altra distinzione che permette agli host di gestire più attività
contemporaneamente.
Infine, l'uso di FTP senza crittografia, come SSL/TLS o SSH-tunneling, è considerato
non standard poiché i file trasferiti possono essere intercettati con un attacco Man-in-
the-Middle (MitM) e letti in chiaro.
Tuttavia, se gli amministratori di rete scelgono di avvolgere la connessione con il
protocollo SSL/TLS o di tunnelizzare la connessione FTP attraverso SSH (come
mostrato di seguito), aggiungendo uno strato di crittografia che solo gli host di origine
e di destinazione possono decifrare, questo sconfiggerebbe con successo la maggior
parte degli attacchi Man-in-the-Middle. Notare come la porta 21 sia scomparsa, poiché
il protocollo FTP viene spostato sotto il protocollo SSH sulla porta 22, venendo così
tunnelato attraverso di esso e reso sicuro da qualsiasi intercettazione.