Nikto - podatność na aplikacje internetowe i skaner CGI dla serwerów internetowych

Nikto - podatność na aplikacje internetowe i skaner CGI dla serwerów internetowych

Nikto Web Skaner jest kolejnym dobrym, aby mieć narzędzie dla dowolnego arsenału administratora Linuksa. Jest to skaner internetowy typu open source wydany na licencji GPL, która służy do wykonywania kompleksowych testów na serwerach internetowych dla wielu elementów, w tym ponad 6500 potencjalnie niebezpieczny akta/CGIS.

Sugerowane przeczytanie: WSEKU - skaner podatności na zagrożenia w zakresie bezpieczeństwa w WordPress

Jest napisane przez Chris Solo I David Lodge Do Słaby punkt Ocena, sprawdza przestarzałe wersje 1250 Serwery internetowe i więcej 270 Problemy specyficzne dla wersji. Skanuje także i raporty dotyczące przestarzałego oprogramowania i wtyczek serwera WWW.

Funkcje skanera internetowego Nikto

  1. Obsługuje SSL
  2. Obsługuje pełny proxy HTTP
  3. Obsługuje tekst, HTML, XML i CSV, aby zapisać raporty.
  4. Skanuj wiele portów
  5. Może skanować na wielu serwerach, przyjmując dane wejściowe z plików takich jak wyjście NMAP
  6. Obsługa identyfikatorów libwhisker
  7. Wystarczające do identyfikacji zainstalowanego oprogramowania z nagłówkami, plikami i ulubionymi
  8. Dzienniki dla metasploits
  9. Raporty dla „niezwykłych” nagłówków.
  10. APACHE i CGIWRAP Wyliczenie użytkownika
  11. Uwierzytelniaj hosty z podstawową i ntlm
  12. Skany można automatycznie obsługiwać w określonym czasie.

Wymagania NIKTO

System z podstawową Perl, Moduły perla, Openssl Instalacja powinna włączyć Nikto biegać. Został dokładnie przetestowany Okna, Mac OS X i różne UNIX/Linux Rozkłady takie jak czerwony kapelusz, Debian, Ubuntu, Wracać, itp.

Instalacja skanera internetowego NIKTO na Linux

Większość dzisiejszych systemów Linux jest wyposażona w wstępnie zainstalowane Perl, Moduły perla, I Openssl pakiety. Jeśli nie uwzględniono, możesz je zainstalować przy użyciu domyślnego narzędzia menedżera pakietów systemowych mniam Lub apt-get.

Na Red Hat/Centos/Fedora
[[e-mail chroniony]]# mniam instaluj perl-net-sslay openSSL
Na Mint Debian/Ubuntu/Linux
[[e-mail chroniony]]# apt-get install Perl Openssl libnet-ssley-perl

Następnie klon najnowszy stajnia Nikto Pliki źródłowe z repozytorium GitHub, przejdź do Nikto/Programy/ katalog i uruchom go za pomocą Perla:

$ git clone https: // github.com/sullo/nikto.git $ cd nikto/programy $ perl nikto.Pl -H 
Przykładowy wyjście
Host opcji wymaga argumentu -Config+ Użyj tego pliku konfiguracyjnego -Display+ Włącz/wyłącznik Wyświetlanie Wyświetlania -DBCheck Baza danych i inne pliki kluczy dla błędów składniowych -Format+ Zapisz Plik (-o) Format -Help Extended HOLD Informacje -Host+ Host docelowy -id+ Uwierzytelnianie hosta do użycia, Format Is Identyfikator: Przejście lub identyfikator: Pass: Realm -List -Plugins Lista wszystkich dostępnych wtyczek -Output+ Wyjście zapisu do tego pliku -Nossl wyłącza za pomocą SSL -NO404 Wyłącza 404 kontrole -Plugins+ lista wtyczek do uruchomienia (domyślnie : All) -port+ port do użycia (domyślnie 80) -ROOT+ Przygotuj wartość główną do wszystkich żądań, format IS /Directory -ssl Force SSL Tryb na porcie -tuning+ skanowanie strojenie -Timeout+ limit czasu dla żądań (domyślnie 10 sekund) -upDate aktualizacja baz danych i wtyczki od Cirt.Net -version Wersje drukowania i wersje bazy danych -vhost + host wirtualny (dla nagłówka hosta) + wymaga wartości Uwaga: To jest krótkie wyjście pomocy. Użyj -h do pełnego tekstu pomocy. 

„„Host opcji wymaga argumentu”Wyraźnie mówi, że nie uwzględniliśmy potrzebnych parametrów podczas testu. Musimy więc dodać podstawowy niezbędny parametr, aby wykonać test testowy.

Podstawowe testy

Podstawowy skan wymaga hosta, do którego chcesz celować, domyślnie skanuje port 80 Jeśli nic nie jest określone. Gospodarz może być albo Nazwa hosta lub an Adres IP systemu. Możesz określić hosta za pomocą „-H" opcja.

Na przykład chcę zrobić skanowanie na IP 172.16.27.56 na porcie TCP 80.

[[chroniony e-mail] NiKto-2.1.5]# Perl Nikto.Pl -H 172.16.27.56
Przykładowy wyjście
- Nikto V2.1.5 ------------------------------------------------- -------------------------- + Target IP: 172.16.27.56 + nazwa hosta docelowego: przykład.COM + Port Target: 80 + Czas rozpoczęcia: 2014-01-10 00:48:12 (GMT5.5) ------------------------------------------------ --------------------------- + Serwer: Apache/2.2.15 (CentOS) + Odzyskany nagłówek X-Poważony: PHP/5.3.3 + Nagłówek anty-kliknij X-Frame-Options nie jest obecny. + Wyciek serwera przecieka za pośrednictwem ETAGS, nagłówek znaleziony z plikami /robotami.TXT, INODE: 5956160, Rozmiar: 24, MTime: 0x4d4865a054e32 + plik/dir '/' w robotach.TXT zwrócił roboty niereborbowane lub przekierowujące (200) + „.TXT "zawiera 1 wpis, który należy ręcznie przeglądać. + Apache/2.2.15 wydaje się być przestarzały (prąd to co najmniej Apache/2.2.22). Apache 1.3.42 (wydanie końcowe) i 2.0.64 są również aktualne. + Znaleziono wiele plików indeksu: indeks.PHP, indeks.HTM, indeks.HTML + debugowanie czasownik HTTP może wyświetlać informacje o debugowaniu serwera. Patrz http: // msdn.Microsoft.com/en-us/biblioteka/e8z01xdh%28vs.80%29.ASPX, aby uzyskać szczegółowe informacje. + OSVDB-877: Metoda śledzenia HTTP jest aktywna, sugerując, że host jest podatny na XST + OSVDB-3233: /phpinfo.PHP: Zawiera informacje o konfiguracji PHP + OSVDB-12184: /indeks.php?= Phpb8b5f2a0-3c92-11d3-a3a9-4c7b08c10000: PHP ujawnia potencjalnie poufne informacje za pomocą niektórych żądań HTTP, które zawierają określone struny zapytania. + OSVDB-3092: /test.HTML: To może być interesujące… + OSVDB-3268: /Icons /: Directory Indexing. + OSVDB-3233: /icons /readMe: Apache domyślny plik domyślny. + /łączyć.php?ścieżka = http: // cirt.Net/RFIINC.tekst?: Potencjalny PHP MySQL Batabase Connection String. + OSVDB-3092: /test.PHP: To może być interesujące… + 6544 Przedmioty sprawdzone: 0 błędów i 16 pozycji zgłoszonych na zdalnym hoście + Czas zakończenia: 2014-01-10 00:48:23 (GMT5.5) (11 sekund) --------------------------------------------- ------------------------------- + 1 Testowany host (y)

Jeśli chcesz zeskanować na innym numerze portu, dodaj „-P”[-Port] opcja. Na przykład chcę zrobić skanowanie na IP 172.16.27.56 na porcie TCP 443.

[[chroniony e-mail] NiKto-2.1.5]# Perl Nikto.Pl -H 172.16.27.56 -p 443
Przykładowy wyjście
- Nikto V2.1.5 ------------------------------------------------- -------------------------- + Target IP: 172.16.27.56 + nazwa hosta docelowego: przykład.COM + Port Target: 443 --------------------------------------------- ------------------------------- + Informacje SSL: Temat: /o =*.południe.com/ou = kontrola domeny sprawdzana/cn =*.południe.COMIFERS: DHE-RSA-AES256-GCM-SHA384 Emisarz:/C = US/ST = Arizona/L = Scottsdale/O = Starfield Technologies, Inc./Ou = http: // certyfikaty.StarfieldTech.COM/Repository/CN = Starfield Secure Certification Authority/SerialNumber = 10688435 + Czas rozpoczęcia: 2014-01-10 01:08:26 (GMT5.5) ------------------------------------------------ --------------------------- + Serwer: Apache/2.2.15 (Centos) + wycieki serwera za pośrednictwem ETAGS, nagłówek znaleziony z plikiem /, INODE: 2817021, Rozmiar: 5, MTime: 0x4d5123482b2e9 + anty-kliknięcie nagłówek X-Frame-Option nie jest obecny. + Apache/2.2.15 wydaje się być przestarzały (prąd to co najmniej Apache/2.2.22). Apache 1.3.42 (wydanie końcowe) i 2.0.64 są również aktualne. + Serwer używa certyfikatu wieloznacznego: „*.południe.COM ' + dozwolone metody HTTP: Get, Head, Post, opcje, śledzenie + OSVDB-877: HTTP Trace Method jest aktywna, co sugeruje, że host jest podatny na XST + OSVDB-3268: /ICONS /: Directory Indexing Indeksowanie. + OSVDB-3233: /icons /readMe: Apache domyślny plik domyślny. + 6544 Sprawdzone elementy: 0 błędów (ów) i 8 elementów zgłoszonych na zdalnym hoście + czas zakończenia: 2014-01-10 01:11:20 (GMT5.5) (174 sekundy) --------------------------------------------- ------------------------------- + 1 Testowany host (y)

Możesz także określić zastępy niebieskie, porty I protokoły za pomocą pełnego URL składnia i zostanie skanowana.

[[chroniony e-mail] NiKto-2.1.5]# Perl Nikto.pl -h http: // 172.16.27.56:80

Możesz także zeskanować dowolną stronę internetową. Na przykład tutaj zrobiłem skanowanie Google.com.

[[chroniony e-mail] NiKto-2.1.5]# Perl Nikto.pl -h http: // www.Google.com
Przykładowy wyjście
- Nikto V2.1.5 ------------------------------------------------- -------------------------- + Target IP: 173.194.38.177 + nazwa hosta docelowego: www.Google.COM + Port Target: 80 + Czas rozpoczęcia: 2014-01-10 01:13:36 (GMT5.5) ------------------------------------------------ --------------------------- + serwer: GWS + Pref cookie utworzony bez flagi httponly + plik cookie NID utworzony bez flagi httponly + nietypowy nagłówek Znaleziono „opcja X”, z zawartością: sameorigin + nietypowy nagłówek „X-XSS-Protection”, z zawartością: 1; Mode = blok + Niezwykły nagłówek „Alternate-Protocol” Znaleziono z zawartością: 80: Quic + root Page/przekierowuje do: http: // www.Google.współ.W/?gws_rd = cr & ei = xirouomscoxbraee34dwcq + banner serwera zmienił się z „gws” na „sffe”, co może sugerować, że WAF, wyważa Nie znaleziono katalogów CGI (użyj „-C wszystkie”, aby wymusić sprawdzenie wszystkich możliwych reż.TXT zwrócił kod HTTP nierebordyzowany lub przekierowywany (302)… .

Powyższe polecenie wykona kilka żądań HTTP (i.mi. więcej niż 2000 testy) na serwerze internetowym.

Testowanie wielu portów

Możesz także wykonać wiele portów skanujących w tej samej sesji. Aby zeskanować wiele portów na tym samym hoście, dodaj „-P”[-Port] Opcja i określ listę portów. Porty można zdefiniować jako zasięg (i.mi., 80-443) lub jako przecinek oddzielony (i.mi., 80 443). Na przykład chcę zeskanować porty 80 I 443 na gospodarza 172.16.27.56.

[[chroniony e-mail] NiKto-2.1.5]# Perl Nikto.Pl -H 172.16.27.56 -p 80,443
Przykładowy wyjście
- Nikto V2.1.5 ------------------------------------------------- -------------------------- + Brak serwera WWW na CMSSCAGE.południe.com: 88 ----------------------------------------------- ---------------------------- + Target IP: 172.16.27.56 + nazwa hosta docelowego: przykład.COM + Port Target: 80 + Czas rozpoczęcia: 2014-01-10 20:38:26 (GMT5.5) ------------------------------------------------ --------------------------- + Serwer: Apache/2.2.15 (CentOS) + Odzyskany nagłówek X-Poważony: PHP/5.3.3 + Nagłówek anty-kliknij X-Frame-Options nie jest obecny. --------------------------------------------------------------------------- + Target IP: 172.16.27.56 + nazwa hosta docelowego: przykład.COM + Port Target: 443 --------------------------------------------- ------------------------------- + Informacje SSL: Temat: /o =*.południe.com/ou = kontrola domeny sprawdzana/cn =*.południe.COMIFERS: DHE-RSA-AES256-GCM-SHA384 Emisarz:/C = US/ST = Arizona/L = Scottsdale/O = Starfield Technologies, Inc./Ou = http: // certyfikaty.StarfieldTech.COM/Repository/CN = Starfield Secure Certification Authority/SerialNumber = 10688435 + Czas rozpoczęcia: 2014-01-10 20:38:36 (GMT5.5) ------------------------------------------------ --------------------------- + Serwer: Apache/2.2.15 (Centos) + wszystkie katalogi CGI „Znaleziono”, użyj '-c Brak', aby przetestować Brak + Apache/2.2.15 wydaje się być przestarzały (prąd to co najmniej Apache/2.2.22). Apache 1.3.42 (wydanie końcowe) i 2.0.64 są również aktualne… 

Za pomocą proxy

Powiedzmy system, w którym Nikto działa tylko dostęp do hosta docelowego za pośrednictwem Http Proxy, test można nadal wykonać przy użyciu dwóch różnych sposobów. Jeden używa Nikto.conf Plik i innym sposobem jest uruchomienie bezpośrednio z wiersz poleceń.

Za pomocą Nikto.plik CONF

otwarty Nikto.conf plik za pomocą dowolnego edytora wiersza poleceń.

[[chroniony e-mail] NiKto-2.1.5]# vi nikto.conf

Wyszukaj zmienną „PEŁNOMOCNIK”I pocukanie ''#„Od początku linii, jak pokazano. Następnie dodaj gospodarz proxy, Port, użytkownik proxy I hasło. Zapisz i zamknij plik.

# Ustawienia proxy -nadal muszą być włączone przez -eProxy ProxyHost = 172.16.16.37 Proxyport = 8080 proxyuser = PG ProxYpass = PG

Teraz wykonaj Nikto za pomocą "-Użycie" opcja. Uwaga: wszystkie połączenia zostaną przekazane za pośrednictwem Http pełnomocnik.

[chroniony e-mail] NiKto-2.1.5]# Perl Nikto.Pl -H localhost -p 80 -eeproxy
Przykładowy wyjście
- Nikto V2.1.5 ------------------------------------------------- -------------------------- + Target IP: 127.0.0.1 + nazwa hosta docelowego: LocalHost + Port Target: 80 + Czas rozpoczęcia: 2014-01-10 21:28:29 (GMT5.5) ------------------------------------------------ --------------------------- + Serwer: Squid/2.6.Stable6 + Pobrane przez nagłówek: 1.0 NetServ: 8080 (Squid/2.6.STABLE6) + Nagłówek antyoklikrujący X-Frame-Options nie jest obecny. + Znaleziono nietypowy nagłówek „X-Squid-Error” z zawartością: err_cache_access_dened 0 + Niezwykłe nagłówek „X-Cache-Lookup”, z zawartością: Brak od Netserv: 8080
Za pomocą wiersza poleceń

Aby uruchomić Nikto bezpośrednio z wiersza poleceń za pomocą „-Użycie„Opcja, ustawiając proxy jako argument.

[chroniony e-mail] NiKto-2.1.5]# Perl Nikto.Pl -H localhost -eeproxy http: // 172.16.16.37: 8080/
Przykładowy wyjście
- Nikto V2.1.5 ------------------------------------------------- -------------------------- + Target IP: 127.0.0.1 + nazwa hosta docelowego: LocalHost + Port Target: 80 + Czas rozpoczęcia: 2014-01-10 21:34:51 (GMT5.5) ------------------------------------------------ --------------------------- + Serwer: Squid/2.6.Stable6 + Pobrane przez nagłówek: 1.0 NetServ: 8080 (Squid/2.6.STABLE6) + Nagłówek antyoklikrujący X-Frame-Options nie jest obecny. + Znaleziono nietypowy nagłówek „X-Squid-error” z zawartością: err_cache_access_denied 0 + Niezwykłe nagłówek „X-Cache-Lookup”, z zawartością: Brak od Netserv: 8080

Aktualizacja NiKto

Możesz zaktualizować Nikto do najnowszych wtyczki I bazy danych Automatycznie, po prostu uruchom „-aktualizacja" Komenda.

[[chroniony e-mail] NiKto-2.1.5]# Perl Nikto.Pl -update

Jeśli dostępne są nowe aktualizacje, zobaczysz listę nowych aktualizacji.

+ Pobranie „NiKto_Report_CSV.wtyczka ' + odzyskanie' nikto_headers.wtyczka ' + odzyskanie' NiKto_Cookies.wtyczka ' + pobieranie' db_tests ' + pobieranie' db_parked_strings ' + pobieranie „.txt ' + cirt.Wiadomość netto: Proszę przesłać błędy NIKTO do http: // trac2.Assembla.com/nikto_2/raport/2

Możesz także ręcznie pobrać i aktualizować wtyczki NIKTO i bazy danych z http: // cirt.net/nikto/aktualizacje/.

Linki referencyjne

Strona główna Nikto