NIKTO NEDİR? NASIL KULLANILIR?

NIKTO NEDİR?

Nikto Perl dili ile yazılmış, açık kaynak kodlu ve komut satırı ile kullanılabilen web sunucusu zafiyet tarama aracıdır. İlk sürümü 27 Aralık 2001 yılında çıkmıştır. Bu yazının yazıldığı 2021 yılı Aralık ayında güncel olarak 2.1.6 sürümü kullanılmaktadır.

NIKTO ARACININ ÖZELLİKLERİ NELERDİR?

  • 6700’den fazla potansiyel olarak tehlikeli dosya/program tanımlıdır.
  • Kullanılan web sunucularını ve yazılımları belirlemeye çalışır.
  • 1250’den fazla sunucunun güncel olmayan sürümlerini kontrol edebilir.
  • 270’den fazla web sunucusunun sürümüne özel güvenlik açıklarını bulundurur.
  • Web uygulama güvenlik açıklarını tarayabilir.
  • Dizin dosyaları ve HTTP sunucusu seçenekleri ile sunucu yapılandırma öğelerini kontrol eder.

NIKTO ARACININ KURULUMU NASIL YAPILIR?

Nikto Kali Linux üzerine varsayılan olarak kurulu halde gelir.

Eğer manuel olarak yüklenmesi gerekirse Linux sistemlerde nikto aracını kurmak için aşağıdaki komutlar kullanılabilir:

Öncelikle aşağıdaki komut ile Github üzerinden nikto aracını indirebiliriz:

Araç indirildiğinde bulunduğumuz dizinde “nikto” isminde bir klasör oluşturulmuş olacak.

Nikto içerisindeki program klasörüne erişip ls komutu ile klasörün içerisindekilere göz attığımızda nikto.pl programını göreceğiz:

$ cd nikto/program

 

$ ls
nikto nasıl kurulur

Ardından aşağıdaki  komut ile programı çalıştırabilir ve kullanım kılavuzunu görebiliriz:

$ ./nikto.pl -H
nikto yardım menüsü

NIKTO NASIL KULLANILIR?

Nikto komut satırı ile kullanılan bir araçtır.

Basit bir taramayı aşağıdaki komut ile yapabiliriz:

nikto -h (URL)

Yapmış olduğumuz tarama sonucunda; kullanılan sunucu bilgisini ve eksik http headerlarını gösterdi, hassas bazı dizinleri buldu.

Taramamızı özelleştirmek istersek aşağıdaki komutu kullanabiliriz;

nikto -h http://php.testsparker.com/ -Tuning 1 -output csv interestingfile --timeout 20

nikto = nikto komutu ile bu aracı kullanmak istediğimizi,

-h = komutu ile tarayıcımız host bilgisini,

-output = komutu ile istediğimiz çıktı türünü,

–timeout = komutu ile gönderdiğimiz isteklerin kaç saniye sonrasında zaman aşımına uğrayacağını,

-Tuning 1 = komutu ile ne tür bir tarama vermek istediğimizi belirtiyoruz. Bu taramada interesting file seçeneğini kullandık.


Sonuç:

İstediğimiz gibi hassas olabilecek, ilgimizi çekebilecek dosya ve dizinleri gösterdi.

-Tuning komutu ile özellikle test etmek  istediğimiz bir güvenlik açığı türünü seçebiliriz.

“nikto -H” komutu yardımı ile aşağıda Tuning listesi görülebilir:

XSS güvenlik açığının bulunduğunu bildiğimiz bir siteyi nikto ile tarayalım:

nikto http://php.testsparker.com/artist.php?id = -Cgidirs none -Tuning 4 -no404

nikto = nikto komutu ile bu aracı kullanmak istediğimizi,

-h = komutu ile tarayıcımız host bilgisini,

-Cgidirs none = komutu ile CGI dizinlerini listelememesini,

-Tuning 4 = komutu ile XSS, HTML Injection gibi bir güvenlik açığı aramasını,

-no404 = komutu ile de niktonun 404 kodu bulunan sayfalarını bulmamasını istiyoruz.

Sonuç:

Nikto sonuçlarına baktığımızda XSS güvenlik açığını bulduğunu tespit edebiliriz.

SQL Injection güvenlik açığının bulunduğu bir siteyi nikto ile tarayalım.

http://php.testsparker.com/artist.php?id = -Cgidirs none -Tuning 9 -no404

nikto = nikto komutu ile bu aracı kullanmak istediğimizi,

-h = komutu ile tarayıcımız host bilgisini,

-Cgidirs none = komutu ile CGI dizinlerini listelememesini (/cgi/, cgi-a gibi)

-Tuning 9 = komutu ile SQL Injection güvenlik açığını aramasını,

-no404 = komutu ile de niktonun 404 kodu bulunan sayfalarını bulmamasını istiyoruz.

Sonuç:

Nikto, SQL Injection güvenlik açığının bulunduğunu tespit etti.

Nikto farklı portlar için de tarama seçeneği sunar.

nikto -h 107.20.213.223 -port 443

IP adresinin 443 portunu taradı ve sunucu bilgilerini, eksik HTTP headerlarını, ilgimizi çekebilecek hassas dizinleri gösterdi.

Nikto, açık kaynak kodlu bir araç olması ve hızlı tarama metodu ile oldukça kullanışlı bir araçtır fakat gizli çalışan, loglarda kendini belli etmemeye çalışan bir araç olarak tasarlanmadığı için IPS/IDS sistemlerde tarama yapıldığı açıkça belli olacak ve logları kolaylıkla tespit edilecektir.

Başa dön