Nikto è uno strumento ampiamente utilizzato da coloro che svolgono attività di hacking etico e pentest o test di penetrazione. Nikto può essere eseguito su qualsiasi piattaforma che supporti Perl e può bypassare i sistemi di rilevamento delle intrusioni (IDS).
Nikto è usato per controllare le vulnerabilità CGI, ma lo fa in modo evasivo, per aggirare i sistemi antintrusione. Viene fornito con una documentazione completa che deve essere attentamente esaminata prima di eseguire il programma. Se disponi di server Web che servono Script CGI, Nikto può essere un'ottima risorsa per monitorare la sicurezza di questi server.
Nikto ha la capacità di identificare file potenzialmente vulnerabili o pericolosi, può anche identificare cosa sta scansionando l'applicazione o quali servizi utilizza e utilizza anche un database con vulnerabilità note che contiene informazioni per riconoscere queste minacce durante la scansione.
Nikto è uno strumento che consente di analizzare un server Web ed esaminare tutti i file e i servizi per trovare possibili minacce e vulnerabilità di sicurezza, tra cui:
- Configurazioni errate del server e del software utilizzato
- Identifica i file predefiniti e le vulnerabilità
- Identifica file e software vulnerabili
Nikto può essere utilizzato per scansionare versioni non aggiornate del software che abbiamo installato sul nostro server. Nikto ci fornirà una rapida scansione per trovare file e programmi potenzialmente vulnerabili sul nostro server o sul nostro sito web.
Per eseguire Nikto abbiamo bisogno che il nostro server supporti Perl, nella maggior parte dei casi lo supporta per impostazione predefinita. È disponibile per tutti i sistemi operativi come Linux, Unix, CentOS, Debian, Ubuntu, MacOSX. Windows e supporta SSL.
Il risultato della scansione del server è un report che può essere generato nei seguenti formati TXT, CSV per Excel, HTML, XML.
Possiamo installare Nikto scaricandolo dal repository GitHUB Nikto
Quindi decomprimiamo il file scaricato:
tar zxvf nikto-2.1.4.tar.gz cd nikto-2.1.4Eseguiamo con Perl:
perl nikto.plSe abbiamo un sistema operativo come Ubuntu, Nikto viene installato dai repository:
sudo apt-get install niktoSuccessivamente aggiorniamo il database Nikto per accedere al database di scansione e aggiorna l'elenco dei plugin a disposizione.
nikto aggiornamento
nikto -list-plugins
Nikto aggiorna periodicamente i suoi repository per aggiungere versioni di ciascuno e aggiornare le nuove vulnerabilità che si presentano. Come farebbe un antivirus, in questo caso il repository utilizzato da Nikto è il database delle vulnerabilità sul web http://osvdb.org/
Analisi e test di vulnerabilità con Nikto
Effettueremo la scansione di un server Web utilizzando per questo tutorial, un'installazione BadStore che abbiamo utilizzato in un altro tutorial.
Inizieremo scansionando un IP e la porta 80 con l'opzione -p (port) per indicare la porta da scansionare
nikto -h 192.168.0.12 -p 80
Mentre la scansione viene eseguita, ci mostrerà informazioni sulle vulnerabilità che possiamo quindi cercare il suo codice nella pagina Open Source Vulnerability Database (OSVDB) e vedere di cosa tratta la vulnerabilità e come risolverla, ad esempio, noi avere il codice OSVDB-27487, andiamo alla pagina di ricerca e inseriamo il codice numerico e facciamo clic su GO.
Il risultato sarà un rapporto molto completo su vulnerabilità, incidenti, soluzioni al problema e statistiche sul numero di casi in cui è stato rilevato, inclusa l'ultima data in cui è stata rilevata una vulnerabilità su larga scala.
Successivamente analizzeremo l'integrità dei file utilizzando i seguenti parametri:
- D = modalità debug
- v = mostra dettagli
- h = host da scansionare
niktol -D v -h 192.168.0.12
Dopo la scansione possiamo vedere che si trovano errori in file o collegamenti non trovati sul web. Possiamo includere diverse opzioni in ogni scansione, come indicare quale attività vogliamo eseguire, vedremo solo alcuni dei parametri più importanti per rilevare le vulnerabilità.
3 - Divulgazione delle informazioni
4 - Iniezione XSS e Javascript
6 - Scansione Denial of Service
9 - SQL injection
Successivamente faremo un esempio con il opzione 3 per determinare quali informazioni abbiamo pubblicato utilizzando il seguente comando:
nikto -Accordatura 3 -h 192.168.0.12
Possiamo osservare che la scansione ha trovato alcune vulnerabilità, che potrebbero consentire Attacchi XSS, dove potrebbe essere preso il controllo remoto del server, soprattutto perché è consentito l'elenco di alcune directory.
Anche questo tipo di vulnerabilità è dovuto al fatto che le URL con parametri non sono controllate:
http: // miodominio /? sezione = mia sezione & opzione = 101La soluzione sarebbe rendere l'URL più amichevole e controllare i parametri che vengono inviati.
Un attacco che potrebbe essere fatto è quello di includere a Codice JavaScript in grado di leggere i cookie del server e quindi cercare di ottenere dati di amministratore, quali:
http: // miodominio /? sezione = & opzione = 101Ti è piaciuto e hai aiutato questo Tutorial?Puoi premiare l'autore premendo questo pulsante per dargli un punto positivo