Nessus Nedir? Kurulumu ve Nessus ile Zafiyet Taraması

PwnLab.Me

Admin
Katılım
21 Ocak 2024
Mesajlar
202
Tepkime puanı
9
Puanları
18
Burak Avcı tarafından yazılmıştır.

[TR] Nessus Nedir? Kurulumu ve Nessus ile Zafiyet Taraması​


Merhabalar. Bu yazımda Nessus aracının ne olduğu, ne işe yaradığı, nasıl kurulduğu ve uygulama örneklerine başlangıç yaparak bir seri haline getirmeyi planlıyorum.

1- Nessus Nedir?


Öncelikle Nessus, sızma testlerinde sıklıkla kullanılan güvenlik zafiyeti tarama programıdır. Bulduğu zafiyetleri risk gruplarına göre listeler ve istismar durumunu gösterir. Nessus Essentials, Professional, Manager, Home ve Cloud sürümleri mevcuttur. Standart ücretsiz sürümü 7 günlük deneme vermektedir ve 16 IP’ye kadar tarama yapma hakkınız vardır. Buradan ücretli ve ücretsiz sürümleri hakkında bilgi edinebilirsiniz.

Nessus kurulumuna geçmeden önce, kendi uygulamalarınızı yapabilmeniz için bilgisayarınıza bir sanallaştırma yazılımı (Wmware) ve bu sanallaştırma ortamına; Kali Linux ve zafiyetli makine olan Metasploitable 2‘ den oluşan küçük bir sızma testi laboratuvarı kurmanızı öneriyorum.

2- Nessus Kurulumu


Öncelikle wmware sanal ortamında oluşturduğumuz laboratuvara gelerek Kali Linux işletim sistemimizi ayağa kaldırıyoruz. Browser açarak buradan Nessus indirme sayfasına ulaşıyoruz. İndirme sayfasında aşağıdaki sürüm bilgileri yer alan .deb uzantılı dosyayı indiriyoruz.

Ekran-Goruntusu-126-1.png


Dosyamız inerken Nessus aracımızı kullanabilmek için gerekli aktivasyon numarası almamızı sağlayacak ilgili kayıt olma sayfasına buradan ulaşıyoruz. “Aktivasyon Kodu için Kaydolun” bölümünde kullanmak istediğiniz herhangi bir takma ad ve soyad giriyoruz.

Ekran-Goruntusu-125.png


Burada kayıt işlemini tamamlayıp onayladıktan sonra bizi “Nessus Essentials’a Kaydolduğunuz İçin Teşekkür Ederiz! Aktivasyon Kodu için E-postanızı Kontrol Edin” yazısı karşılayacak yaklaşık 1-10 dakika arasında aktivasyon kodu mailinize gelmiş olacaktır.



Kali terminalinde “cd Downloads” ve “ls” komutlarını yazarak indirme işleminin bitip bitmediğini kontrol edebilirsiniz. Burada Nessus aracımızın indirme işlemi de tamamlandığına göre kuruluma geçebiliriz.

Ekran-Goruntusu-130_LI.jpg


2.a – Kali Linux terminali Nessus Kurulumu


sudo su

Komutu ile öncelikle root yetkisi alıyoruz. Ardından,

dpkg -i Nessus-8.15.1-debian6_amd64.deb

komutu kullanarak .deb paketimizi kuruyoruz.

Ekran-Goruntusu-131.png


Bizi yukarıdaki gibi kurulumun bittiğine dair çıktı karşılıyor. Burada dikkat edeceğiniz iki yeri kırmızı ve mavi renkte belirttim;

┌──(root💀kali)-[/home/kali/Downloads]
└─# dpkg -i Nessus-8.15.1-debian6_amd64.deb
Selecting previously unselected package nessus.
(Reading database ... 267895 files and directories currently installed.)
Preparing to unpack Nessus-8.15.1-debian6_amd64.deb ...
Unpacking nessus (8.15.1) ...
Setting up nessus (8.15.1) ...
Unpacking Nessus Scanner Core Components...

- You can start Nessus Scanner by typing /bin/systemctl start nessusd.service
- Then go to https://kali:8834/ to configure your scanner

/bin/systemctl start nessusd.service – terminalde Nessus servisini başlatmak için kullanacağınız komut.

go to https://kali:8834/ – Nessus aracınızı başlattıktan sonra browser’ınıza yazacağınız uygulama arayüzü adresi.

Terminalde ana dizinde iken yukarıda belirttiğim servis başlatma komutunu girerek enter yapıyoruz. Sonrasında browser’ı açarak adresine gidiyoruz.

Ekran-Goruntusu-132.png


Bu sayfada “Advanced..” diyerek riski üstleniyoruz ve aşağıdaki sayfadan devam ediyoruz.

Ekran-Goruntusu-133.png


Nessus Essentials seçili bırakarak “continue” diyoruz.

Ekran-Goruntusu-134.png


Aktivasyon kodu almamız için üyelik yapabileceğimiz ekran burada da karşımıza geliyor. Fakat biz yukarıda bu işlemi yaptığımız için “skip” leyerek bu adımı geçiyoruz.
Ekran-Goruntusu-135.png


Aktivasyon mailinde bize gönderilen aktivasyon kodunu girmemizi istiyor. Girerek “continue” diyoruz.

Ekran-Goruntusu-136.png


Burada Nessus aracımıza giriş yaparken kullanacağımız “username” ve “password” bilgilerini oluşturmamızı istiyor. Kendi kullanıcı giriş bilgilerimizi üreterek giriyoruz.”Submit” diyoruz.

Ekran-Goruntusu-137.png


Ve yükleme sayfası ile karşılaşıyoruz. Burada Nessus aracının plugins vb. indirme işlemleri bitinceye kadar bekliyoruz. Yaklaşık bu süre bilgisayar performansınıza bağlı olarak 30 dakika ila 1 saat sürebilir.

Ekran-Goruntusu-138.png
İndirme işlemleri bittikten sonra bizden az önce oluşturduğumuz “username” ve “password” bilgilerini girmemizi istiyor. Bilgileri giriyoruz.

Ekran-Goruntusu-139.png


Ve artık Nessus toolumuzun arayüzü ile karşı karşıyayız. Şimdi burada bizi kaşılayan “Nessus Essentials’a Hoş geldiniz” penceresini “close” diyerek kapatalım. Burada “My Scans” sekmesinde iken penceredeki “Create a new scan (Yeni tarama oluştur)” bölümüne tıklıyoruz. Burada basit network taramasından tutun da active directory taramasına, mobil cihaz taramasından zerologon zafiyetine kadar bir çok tarama gerçekleştirebiliyoruz. Fakat biz temel seviye basit bir network taraması gerçekleştireceğimiz için “Basic Network Scan” seçeneğini seçerek ilerliyoruz. Ve diğer taraftan Pentest Lab’ımıza kurduğumuz zafiyetli metasploitable2 makinesini ayağa kaldırıyoruz.

Ekran-Goruntusu-141.png


Ekran-Goruntusu-140.png

metasploitable2 makinesi açıldı

Nessus aracımızda “Basic Network Scan” penceremiz açık, sanal makineler tarafında Kali ve Metasploitable2 açık. Şimdi sıra aynı ağın içindeki metasploitable2 makinemizin ip tespitini yapmaya.Bunun için Kali terminalde iken;

#ifconfig

komutu ile öncelikle Kali makinemizin ip’ sini buluyoruz. Benim makinemin bilgileri aşağıdaki gibidir.

Ekran-Goruntusu-142.png


İp adresim 192.168.80.128 (sizde farklı olacak, bundan sonraki işlemlerde yine onu kullanacağız) .

Sanallaştırma yazılımı içerisinde 2 tane sanal makinemiz açıktı, hatırladınız mı? Evet şimdi diğer metasploitable2 makinemizi hedef makine olarak adlandırıyorum. Bu zafiyet taramasını yapacağımız hedef makinenin de kimliğini bilmemiz gerekiyor. Peki kimlik (ip bilgisi) nasıl bulunabilir. Aynı ağ içinde olduğumuz için Kali makinemizde bir bilgisayar ağındaki(kablolu/kablosuz) tüm çevrimiçi cihazları(host) bulmaya yarayan “netdiscover” aracımızı kullanacağız. Tarama yaptığımızda kendi ip adresimizi kullanarak aynı alt ağda (subnet) bulunan hedef makinemizin kimliğine(ip) de ulaşmış olacağız. Kali makinemizde komut satırına aşağıdaki komutu yazıyoruz;

# netdiscover -r 192.168.80.0/16

Aşağıdaki gibi bir çıktı ile karşılaşıyoruz;

Ekran-Goruntusu-143.png


Benim makinemin ip adresi 192.168.80.128 idi. Yukarıda görüldüğü üzere diğer makine yani hedef makinemiz 192.168.80.129 olarak tespit ediyoruz. Teyit edelim mi ? Hadi ozaman.

Bunun için Kali makinemizde “nmap” aracı kullanıyoruz. nmap (ayrıntılı işletim sistemi ve versiyon taraması için) -A parametresi ve hedef ip girerek “enter”lıyoruz. Aşağıdaki gibi bir çıktı ile karşılaşacağız (ben satırların hepsini almadım).

└─# nmap -A 192.168.80.129
Starting Nmap 7.91 ( https://nmap.org ) at 2021-09-18 15:23 EDT
Nmap scan report for 192.168.80.129
Host is up (0.0044s latency).
Not shown: 977 closed ports
PORT STATE SERVICE VERSION
21/tcp open ftp vsftpd 2.3.4
|_ftp-anon: Anonymous FTP login allowed (FTP code 230)
| ftp-syst:
| STAT:
| FTP server status:
| Connected to 192.168.80.128
| Logged in as ftp
| TYPE: ASCII
| No session bandwidth limit
| Session timeout in seconds is 300
| Control connection is plain text
| Data connections will be plain text
| vsFTPd 2.3.4 - secure, fast, stable
|_End of status
22/tcp open ssh OpenSSH 4.7p1 Debian 8ubuntu1 (protocol 2.0)
| ssh-hostkey:
| 1024 60:0f:cf:e1:c0:5f:6a:74:d6:90:24:fa:c4:d5:6c:cd (DSA)
|_ 2048 56:56:24:0f:21:1d:de:a7:2b:ae:61:b1:24:3d:e8:f3 (RSA)
23/tcp open telnet Linux telnetd
25/tcp open smtp Postfix smtpd
|_smtp-commands: metasploitable.localdomain, PIPELINING, SIZE 10240000, VRFY, ETRN, STARTTLS, ENHANCEDSTATUSCODES, 8BITMIME, DSN,
|_ssl-date: 2021-09-18T19:23:00+00:00; -49s from scanner time.
| sslv2:
| SSLv2 supported
| ciphers:
| SSL2_DES_192_EDE3_CBC_WITH_MD5
| SSL2_RC2_128_CBC_EXPORT40_WITH_MD5
| SSL2_RC4_128_EXPORT40_WITH_MD5
| SSL2_RC4_128_WITH_MD5
| SSL2_DES_64_CBC_WITH_MD5
|_ SSL2_RC2_128_CBC_WITH_MD5
53/tcp open domain ISC BIND 9.4.2
| dns-nsid:
|_ bind.version: 9.4.2
80/tcp open http Apache httpd 2.2.8 ((Ubuntu) DAV/2)
|_http-server-header: Apache/2.2.8 (Ubuntu) DAV/2
|_http-title: Metasploitable2 - Linux

Kırmızı ile işaretlediğim satırlarda görüldüğü üzere doğru yoldayız. Hedef makinemizin ip’ si doğru. Sağlamasını yapmış olduk. Şimdi gelelim Nessus taramasına.

Kali’de tarayıcımızda hali hazırda açık olan Nessus arayüzünde “My scan/ Create a new scan/ Basic network scan” yolunu izliyoruz. Açılan ekranda taramamıza bir isim ve açıklama istiyor ve targets (hedefler) bölümüne hedef ip adresi girmemizi istiyor. Aşağıdaki gibi yazıyorum ve “save” diyerek taramamı kaydediyorum.

Ekran-Goruntusu-144.png
Kaydetme (save) işlemini yaptıktan sonra “Taramalarım” ekranına düşüyoruz ve aşağıdaki ekran ile karşılaşıyoruz.

Ekran-Goruntusu-145.png


Burada “Nessus anlatım” olarak kaydetmiş olduğum taramamı görüyorsunuz. Hemen karşısındaki “play” tuşu simgesine tıklayarak tarama işlemini başlatıyoruz. Ve satır üzerine bir kez tıklayarak tarama ayrıntılarına giriyoruz. Burada taramamızın karşısında kırmızı – turuncu – sarı -yeşil ve mavi renklerde sırayla kritik – yüksek – orta- düşük ve info seviyesinde zafiyetlere göre bir grafik dağılımı göreceksiniz. “Vulnerabilities” sekmesine tıklayarak bizim istediğimiz zafiyeti bulmuş mu bakalım.

Ekran-Goruntusu-146.png
Taramanızın tamamlanmasını bekleyebilirsiniz.

Taramamız tamamlandığında kritikten info seviyesine kadar bir çok zafiyeti bulduğunu görüyoruz. Biz bu zafiyetler arasında ” Critical VNC Server ‘password’ Password ” zafiyetini istismar edeceğiz.

Ekran-Goruntusu-147.png
Ekran-Goruntusu-148.png


Yukarıda, VNCServer üzerinde “password” zafiyeti olduğunu (güvenliğinin düzgün yapılandırılmadığı) ve Nessus’un “password” ile giriş yapılabildiğini bulduğunu görüyoruz. Zafiyet açıklaması (description) aynen şu şekilde; “Uzak ana bilgisayarda çalışan VNC sunucusu, zayıf bir parola ile güvence altına alınmıştır. Nessus, VNC kimlik doğrulaması ve bir ‘parola’ parolası kullanarak oturum açabildi. Uzak, kimliği doğrulanmamış bir saldırgan, sistemin kontrolünü ele geçirmek için bundan yararlanabilir.”

VNC (Virtual Network Computing – Sanal Ağ Sistemi), bir ağ sunucusu üzerinde çalışan grafik arabirimli uygulamalara, başka bir ağ üzerindeki bilgisayardan erişerek bu uygulamaların kullanabilmesini ve yönetilebilmesini sağlar. Uzaktaki bir bilgisayara VNC sunucusu ve bağlanacak olan bilgisayara VNC istemcisi kurulur. VNC, kurulan sunucu ve istemcinin etkileşimini sağlar.

VNC, bir ağ üzerinde bulunan bilgisayarda VNC istemci (VNC viewer) programını çalıştırır. Böylece başka bir ağ sunucusu üzerinde bulunan VNC sunucu (VNC server) ile etkileşimini sağlar. Bu etkileşim sonucunda uzaktaki bilgisayarın ekranını görerek, klavye ve fare hareketleri ile masaüstü erişimini sağlar[1].

Evet VNC hakkında kısaca bilgi geçtiğimize göre zafiyeti istismar aşamasına geçelim. Hedef makinemize VNCserver üzerinden erişim sağlayabilmek için Kali makinemizdeki vnc istemci aracı olan “vncviewer” kullanarak erişmeye çalışıyoruz. Komut satırına aşağıdaki komutları yazıyorum;

#vncviewer 192.168.80.129

Komut karşılığında aşağıdaki gibi bir ekran ile karşılaşıyoruz. Burada bizden “password:” girmemizi istiyor. Nessus aracımız password bilgisinin “password” olduğunu bize bulmuştu. Parolayı giriyoruz ve “enter”liyoruz.

Ekran-Goruntusu-149.png


Password bilgisini girdikten sonra aşağıdaki gibi hedef makinemiz olan metasploitable2 makinesine ulaşmış oluyoruz.

Ekran-Goruntusu-151.png


Artık hedef makinemiz üzerindeyiz. Bakalım hedef makinede kullanıcımız neymiş? Ve tekrar ip adresini teyit edelim;

#whoami

Komutu ile bize “root” çıktısını veriyor. Hedef makinede root yetkisine sahibiz. “ifconfig” ile ip bilgisine ulaşıyoruz.

Ekran-Goruntusu-152.png


Görüldüğü gibi Nessus aracımız ile Metasploitable2 hedef makinemiz üzerindeki bir “VNCserver” zafiyetini tespit ettik ve bu zafiyeti sömürü ile hedef makinede “root” yetkisi ile erişim sağlamış olduk. Artık hedef makinemiz üzerinde istediğimiz diğer işlemleri yapabiliriz.

Sabırla okuduğunuz için teşekkürler. Tekrar görüşmek dileğiyle. Bilgi ve güvenle kalın…..

KAYNAK :​


[1] – https://bidb.itu.edu.tr/seyir-defteri/blog/2013/09/06/virtual-network-computing
 
Moderatör tarafında düzenlendi:
Geri
Üst