original in en Georges Tarbouriech
en to tr:Erdal MUTLU
Georges uzun zamandır UNIX kullanıcısıdır. Güvenlik konusunun, bu yüzyılın
en önemli fırsatlarından olduğunu düşünmektedir.
Nessus, serbest yazılım olan bir güvenlik tarayıcısıdır. Nessus'u http://www.nessus.org adresinden elde edebilirsiniz. Nessus projesi Renaud Deraison tarafından başlatıldı ve devam ettirilmektedir. Bu yazının yazımı sırasında 1.09 sürümü sağlam, 1.14 ise, deneme sürümü idi. Yazılım GPL lisansı altında dağıtılmakta ve projeye birçok kişi, özellikle eklenti (plugin) yazılımlarında katkıda bulunurken, bazıları da nessus çalışmalarından hiç söz etmeden yararlanmaktadır (bu konuya yazının sonuna doğru değineceim). Nessus birçok UNIX ortamında hem istemci hemde sunucu olarak çalışmaktadır. Win32 ortamlarında sadece istemcisi vardır. Bu müthiş araca bir göz atalım.
http://www.nessus.org adresini ziyaret ederek,
bu müthiş yazılımı elde edebilirsiniz. Nessus'un istemcisi, Win32 için var olmasına karşın,
biz burada doğal olarak Posix sürümünü ele alacağız.
Nessus'u kullanabilmek için en azından nmap ve Gtk (Gimp Toolkit) ya gereksinim
vardır. Bu yazılımlara olan bağlantı adreslerini, nessusun sayfasından bulabilirsiniz.
Nessus'u komut satırından da kullanabileceğinize göre, Gtk'nın olması şart değildir.
Nessus'u üç farklı yoldan elde edebilirsiniz : iyi, kötü ve çirkin.
İyi, standart yoldur, yani size yakın bir ftp alanından. Dört adet arşiviniz
olacaktır : nessus kütüphaneleri, nasl kütüphaneleri, çekirdek nessus ve
nessus eklentileri. Arşivleri açtıktan sonra, yapmanız gerek her zaman olduğu gibi sırasıyla :
./configure, make ve make install dır. Eğer, nessusun daha önceki sürümüne
sahipseniz, onu sistemden silmeniz gerekecektir. Bunun için nessusun, "./configure"
dan sonra kullanılmak üzere, bir kabuk programı vardır. Bu kabuk programını her arşiv
için "make" ten önce çalıştırınız ve işlem tamam.
Kötü yol, nessus-installer.sh kabuk programını İnternet'ten indirdikten sonra
çalıştırmaktan geçer. Bunun için "sh nessus-installer.sh" komutunu
auto-install seçeneği ile çalıştırınız. Dolayısıyla dört ayrı paket yüklemenize
gerek kalmayacaktır. Artık, sadece bir paket yükleniyor.
Çirkin yol ise, sisteminizde lynx yüklü ise, "lynx -source http://install.nessus.org | sh"
komutunu çalıştırmanız yeterlidir. Bunun için root OLMAMANIZ gerekmektedir.
Tabii ki, önerilen yol "iyi" olanıdır... Eğer, nessusu çektiyseniz, güvenlik
sizin için önemli olmalıdır! Güvenlikten sözettiğimize göre MD5 toplamlarını çekmeyi
ve denetlemeyi unutmayın.
Nessus, farklı bileşenler içermektedir (nasl, betik dili, nessus-adduser, nessus-build ...).
Herbir bileşenin istemci ve sunucu için kendi man sayfası vardır. Daha fazla bilgi,
gelen paketlerirden (README, INSTALL ...) veya nessusun sanaldoku sayfasından elde
edebilirsiniz.
İşleri kolaylaştırmak için örnekleri, nessusun X11 sürümü, yani Gtk için olan istemci üzerinden göstereceğiz.
Nessusd sunucusu
Nessus'u çalıştırmak için, açıktır ki, nessus sunucusunu çalıştırmanız gerekecektir.
Nessus sunucusu ilk defa çalıştırırken, nessus-useradd ile bir kullanıcı ve geçişsözcüğü
belirtmeniz gerekecektir. Eğer, nessus kütüphaneleri,
"--enable-cipher" seçeneği ile derlenmişler ise, (önerilen, mutlaka grekli demiyorum!)
kişisel bir anahtar yaratılacaktır. Bu anahtar bir geçiş ifadesi ile korunabilir.
Nessus sunucu programını çalıştırmak için birçok seçenek vardır. Bunların hepsini,
nessusd'nin man sayfasından bulabilirsiniz.
Bundan sonra kullanıcı veritabanınızı oluşturabilir ve kuralları belirleyebilirsiniz.
Yani, nessusd sunucusunu kimin çalıştırma hakkı olduğu ve neleri tarayabileceği (bilgisayar,
ağ ...) gibi. Kurallar, "accept" veya "deny" sonra IP adresi ve onun ağ maskesi gelecek
şekilde belirtilmektedir.
Sözgelimi : accept 192.168.1.0/24, kullanıcıya tüm 192.168.1 ağını taramasına
izin vermektedir.
Sadece kullanıcı tanımlayarak, hiç kural koymayabilirsiniz. Eğer,
çeşitli kullanıcıların nessusd çalıştırmasını istiyorsanız, nelere izin verdiğinizi
çok dikkatli belirlemeniz gerekmektedir. Herkese, ağınız üzerinde hertürlü hakkı
vermeyi düşünmüyorsunuz herhalde, yoksa düşünüyor musunuz?
Son olarak, nessusd, (genellikle) /usr/local/etc/nessus/nessusd.conf da bulunan
yapılandırma dosyasına göre çalışmaktadır. Eğer, ne yaptığınız biliyorsanız,
bu dosya üzerinde değişiklik yapabilirsiniz.
Bundan sonra, nessus sunucusuna bağlanmak için, nessus istemcisini çalıştırabilirsiniz.
İstemciyi çalıştırmak için, komut satırından "nessus &" komutunu vermeniz yeterlidir.
Yukarıda sözünü ettiğimiz geçiş ifadesini doğru bir şekilde yadığınızda, nessusun
yapılandırma penceresi ekrana gelecektir. Bu pencerede, birden fazla
pencereye ulaşmanızı sağlayan tablar vardır.
İlk pencerenin adı "hessus host" dur. Buradaki "Log in" tuşuna basarak nessusd
sunucusuna bağlanabilirsiniz. Tabii ki, sunucuya bağlanma izninizin olması gerekmektedir,
başka bir deyişle, kullanıcı olarak sisteme tanımlanmış olmanız gerekmektedir.
Taramayı başlattığınız anda, nessus tarama hakkında durum bilgileri içeren
bir pencere açmaktadır. Sözgelimi, tüm 192.168.1.0/24 ağ üzerinde denetleme yaptığınızı
varsayalım. Pencerede aynı anda sekiz bilgisayar görüntülenecektir. Herbiri için
hangi eklenti programın kullanıldığı, ilerleme çubuğu ile birlikte
yer alacaktır. İşte örnek bir görüntü :
Eklentiler, nessusun kalbidir. Onlar güvenlik denetimleridir, yani harhangibir
güvenlik açığını keşfedebilmek için yazılmış programlar. NASL
(Nessus Attack Scripting Language , Nessus Saldırı Betik Dili)
eklentilerin yazılımında kullanılması önerilen
programlama dilidir. NASL hakkında bilgi
http://www.nessus.org/doc/nasl.html
adresinden bulabilirsiniz.
Ayrıca, eklenti yazarak projeye katkıda bulunabilirsiniz. Bu yazının yazımı
sırasında nessusun veritabanında 756 adet eklenti vardı!
Yaklaşık olarak 20 eklenti ailesi vardır : arka kapılar, servis önleme, uzaktan root
hakkı elde etme, ... Daha önce de söylenildiği gibi, her eklenti neyin yanlış olduğunu
ve nasıl düzeltilebileceğini raporlamaktadır.
Eklentiler hakkında sözederken, CVE (Common Vulnerabilities and Exposures, Bilinen
Güvenlik Açıkları) dan sözetmemek olmaz. Bu,
http://cve.mitre.org
adresinde bulabileceğiniz, çok büyük bir veritabanıdır. Burada bilinen tüm
güvenlik açıkları hakkında bilgi edinebilirsiniz. Bilgi paylaşımında bulunabileceğiniz
müthiş yerlerden birisidir. Bu sanaldoku yöresi, ziyaret etmeniz gereken yerlerden birisidir.
Tabii ki, nessusun eklentileri hakkında birçok şey söylenebilir, bunun
için kitap bile yetmez. Nasıl çalıştıklarını ve nasıl yazıldıklarını
öğrenmenin yolu /usr/local/lib/nessus/plugin dizinine gidip incelemektir.
Böyle müthiş bir iş başardıkları için Renaud Deraison ve diğer katkıda bulunanlara
tekrar teşekkür.
Yazıyı okuyan üç veya dört kişi benim konu dışı cümlelerimi iyi bilmektedir.
Bu sefer bunun için ayrı bir bölüm ayırdım. Konu dışı olup olmadığı, ayrı bir
tartışma. Herneyse.
Bilgisayar güvenliği konusunda oldukça ilgili olduğum için, sık sık bu konu
ile ilgili olan sanaldoku yörelerini ziyaret ediyorum. Buralardan yeni güvenlik
açıkları veya güvenlik araçları hakkında bilgi edinebiliyorsunuz.
Kaza eseri, sanaldoku sayfalından güvenlik tarama araçları olan bir yer buldum.
Kendilerini ASP (Application Service Provider, Uygulama Servis Sağlayıcısı)
olarak (en azından şimdilik) adlandırılmaktalar. Eğer, biraz ileri giderseniz veya
biraz araştırma yaparsanız, arka planda kullandıkları motorun nessus olduğunu
görüyorsunuz. Şimdiye kadar herşey iyi gidiyor. Ancak, açık olarak bilgi
almaya çalıştığınızda, "nessus" kelimesini göremiyorsunuz. İşte burada ben alınıyorum!
Serbest yazılım için çalışan birçok insan bunu karşılıksız olarak yapmaktadır
ve yaşamak için değil. Karşılığında aldıkları tek şey : referans. Nessus GPL
lisansı ile üretilmektedir. Yani, herkes bu ürünü kullanabilir, değiştirebilir,
uyarlayabilir... yeter ki gerçek yazarlardan söz edilsin. Tabii ki, bu lisans
bundan fazlasını söylemektedir. Eğer, GPL hakkında bilginiz yoksa,
bu adresten öğrenebilirsiniz.
Bana bu, hırsızlık gibi geliyor. Demek istediğim, başka bir kişinin işine
referans vermek için ben şahsen lisansa gereksinim duymuyorum.
Bedavaya (hemen hemen her zaman) çalışan ve serbest yazılım üretip, toplumun
kullanımına sunan insanlara her zaman saygı duymuşumdur.
Toplum tarafından tanınmaları, onların hakkı. Bu özellikle, birileri
onların ürünlerinden para kazanmaya çalışan kişiler için doğrudur.
Buna saygı duymak ve tanımak diyebilirsiniz, hiç önemli değil. Gerçek şu ki,
bu kelimeler, anlamlarını yitirmeye başlamışlar. Evet, bunun sorumlusu GPL diyebiliriz.
ASP için, ürün satışının var olduğunu söyleyemeyiz. Ülkeiye göre de, GPL yasal bir
değer taşımayabilir.
Kullanıcıların, ASP'lere, arka planda çalışan tarama motorun ne olduğunu
sormaları bir çözüm olabilir. Verilen cevap, en azından servisi sağlayanların "dürüst" olup olmadıklarını
gösterecektir. Eğer, cevap vermiyorlarsa veya nessus olarak belirlediğniz
tarama motoru biz "icat ettik" diyorlarsa, onu kullanmayın! Nessus'u yükleyin (gerçek olanı),
bu daha güvenli olcaktır.
Fakat yine de, çok büyük ve müthiş bir iş başarmış insanlara "teşekkür ederim" demek için
lisansa gereksinimiz var mıdır? Bu arada, Renaud Deraison nessus'un lisansını
değiştirmeyi düşünmüyor : nessus GPL kalacak.
Özür dilerim ama, bunların da söylenmesi gerekiyordu.
Son bölüme rağmen, bu yazıdan akılda kalması gereken, nessusun yüksek kalitede bir
standart olmasıdır. Oldukça etkileyici bir yazılımdır. Nmap ile birlikte kullanıldığında,
güvenlik konusunda endişesi olanların vazgeçilmez aracı olmalıdır. Ayrıca, hergün
geliştirilen bir araçtır. Renaud ve arkadaşlarına, sürekli olarak eklentileri güncelledikleri
için telekkür ederim.
Bugün, nmap ve nessus olmadan sistem yöneticileri çalışamazlar.
Bu araçlar, daha önceden giderildiğini düşündüğünüz güvenlik açıklarını
ortaya çıkarmaktadır. Bilgisayar ağınızda kullandığınız birçok işletim sistemi
için bu doğrudur. Bazı işletim sistemlerin nessus tarafından tarandıktan sonra
güvenlik açığı içermediklerini görünce, biraz rahatlayabilirsiniz.
Artı olarak, bilgisayar ağınızın veya bir bilgisayarın nasıl
kırılacağını, nessus sayesinde anlayabilir veya öğrenebilirsiniz.
Verilen raporları dikkatli bir şekilde okur, ve gerekli düzeltmeleri
yaparsanız, bilgisayar ağının ve bilgisayarlarınızın güvenliğini
artırmış ve geliştirmiş olursunuz. Geliştirmiş diyorum, çünkü,
bilgisayar ağınız, nessus çalıştırıyorsunuz diye hiçbir zaman % 100 güvenli olmayacaktır.
Güvenliğe giden yol çok uzundur ve biz onun sonundan oldukça uzakta sayılırız.
Serbest yazılım topluğuna, güvenlik konusunda yaptıkları bu müthiş iş için
tekrar teşekkür ederim.
Bu serbest yazılımdan para kazanmayı deneyen ince insanlara gelince,
"teşekür ediyorum" demek problem değildir. Dürüst olmak, o kadar da kötü olmasa gerek,
öyle değil mi? Eğer, bu şekil davranışlar yagınlaşırsa, topluluğun sonu olacak veya
lisans (belkide daha fazla patent!) konusunda büyük değişiklikler olabilir.
Her iki durumda da, herkes kendi başına kalacak veya işler daha da zorlaşacaktır.
Ve maalesef serbest yazılım kullanamaz duruma geleceğiz. Bu, sizin kendi ürenlerinizi
satabileceğiniz anlamına gelmemektedir. Tekrar düşünün!
Harika bir zamanda yaşadığımızı düşünmüyor musunuz ?