Ho provato a utilizzare il seguente comando:
nmap -p 5432 -v --script pgsql-brute myhost
Ma non ho ottenuto alcun output relativo allo script pgsql e alla versione di dbms.
Lo script pgsql-brute esegue l'identificazione della password (forzatura bruta) contro i database PostgreSQL. Non recupera alcuna informazione sulla versione o mostra nulla ma username e password indovinati con successo.
Un comando più utile per ottenere informazioni da un database PostgreSQL potrebbe essere:
nmap -p 5432 -sV myhost
Questo esegue rilevamento della versione di servizio e applicazione sul database e genera un output come:
PORT STATE SERVICE VERSION
5432/tcp open postgresql PostgreSQL DB 9.1.12 - 9.1.14
Questo è basato su un numero di riga in una risposta di errore a un probe su quella porta e solitamente può restringere la versione a una delle poche versioni minori.
In nmap, dovresti sapere quanto segue:
Quando si vuole eseguire uno script NSE specifico del protocollo, come pgsql-brute (o lo script generico brute
NSE), nmap avrà bisogno delle informazioni sulla versione per far corrispondere la porta o essere in grado di rilevarlo, cioè,
nmap -v --script brute -sV -p 5432 <ip>
o nmap può saltare il rilevamento della versione se viene utilizzato il carattere +
- forzando così lo script a essere eseguito, ad esempio,
nmap -v --script +pgsql-brute -p 5432 <ip>
Leggi altre domande sui tag databases nmap network-scanners