Merhaba herkese. Bu yazıda WebMap aracına değineceğim. Birazda docker konteynır olayına giriş yapacağım. Sebebi WebMap docker üzerinde çalışmaktadır. Bu yüzden docker'ın kurulumuna da değineceğiz. Daha önce docker kullanmış olanlar docker kurulumun bölümünü atlayabilirler.
Biraz Webmap'ten bahsedeyim.
WebMap, xml formatındaki nmap tarama sonuçlarını grafikleştiren/görselleştiren, daha rahat analizler yapmamız sağlayan bir araçtır. Shell ekranı üzerinden nmap tarama sonuçlarını analiz etmek, okumak bazen yorucu olabiliyor. WebMap bu noktada devreye giriyor. Tarayıcı üzerinde localhost'ta çalışmaktadır. Xml formatındaki nmap taramalarınızı içeri aktarabilir ya da direk WebMap üzerinde nmap taraması da yapabilirsiniz. PDF raporlama, CVE ve Exploit taraması, isteye göre filtreleme imkanları sunmaktadır. Beni en çok çeken CVE/Exploit taraması ve PDF raporlama. Elimden geldiğince konuda hepsine değinmeye çalışacam. Şimdilik tanım olarak bu kadar yeterli
Biraz da Docker'dan bahsedelim.
Teorik olarak docker, konteynırlaştırma teknoloji ile işletim sistemi düzeyinde sanallaştırma sağlayan araca/programa denir. Tabi bu pek bişi ifade etmiyor bana. Daha anlaşılır şekilde şöyle diyebilirim. İlk önce konteynır dediğimiz olayı çözelim. Geliştiricilerin uygulamaları için gerekli kütüphaneleri ve bağımlılıklarını tek bir paket halinde taşınmasını sağlayan teknolojiye denir. Yani siz bir uygulama geliştirdiniz. Bu uygulama içinde kullandığınız kütüphaneler ve kullandığınız altyapılar (bağımlılılar) var. Bunları tek bir paket halinde, tak-çalıştır hale gelmesine konteynır denir. Bu konteynırların oluşturulmasını, taşınmasını ve çalışmasını sağlayan araca da docker denir. Docker, sanal makinenin bir programa dönüşmüş halidir diyebilirim. Sanal makine gibi çalışır ama sanal makine değildir. Karşılaştırma açısından aşağdaki görsel biraz daha anlaşılır olabilir
Docker ile ilk defa tanışıyorsanız biraz "bune ya" diyebilirsiniz. Biraz kafa karıştırıcı gibi duruyor olabilir. Ama docker kullandıkça yavaş yavaş daha iyi kavrayacaksınız.
Docker Kurulumu
İlk önce docker depolarını ekleyip aktif hale getirelim.
Ardından install komutunu yazalım.
Yükleme işlemimiz bittikten sonra docker çalışıyor mu onu test edelim.
Birde sistem her açıldığında docker'ın çalışması için:
Biraz Webmap'ten bahsedeyim.
WebMap, xml formatındaki nmap tarama sonuçlarını grafikleştiren/görselleştiren, daha rahat analizler yapmamız sağlayan bir araçtır. Shell ekranı üzerinden nmap tarama sonuçlarını analiz etmek, okumak bazen yorucu olabiliyor. WebMap bu noktada devreye giriyor. Tarayıcı üzerinde localhost'ta çalışmaktadır. Xml formatındaki nmap taramalarınızı içeri aktarabilir ya da direk WebMap üzerinde nmap taraması da yapabilirsiniz. PDF raporlama, CVE ve Exploit taraması, isteye göre filtreleme imkanları sunmaktadır. Beni en çok çeken CVE/Exploit taraması ve PDF raporlama. Elimden geldiğince konuda hepsine değinmeye çalışacam. Şimdilik tanım olarak bu kadar yeterli
Biraz da Docker'dan bahsedelim.
Teorik olarak docker, konteynırlaştırma teknoloji ile işletim sistemi düzeyinde sanallaştırma sağlayan araca/programa denir. Tabi bu pek bişi ifade etmiyor bana. Daha anlaşılır şekilde şöyle diyebilirim. İlk önce konteynır dediğimiz olayı çözelim. Geliştiricilerin uygulamaları için gerekli kütüphaneleri ve bağımlılıklarını tek bir paket halinde taşınmasını sağlayan teknolojiye denir. Yani siz bir uygulama geliştirdiniz. Bu uygulama içinde kullandığınız kütüphaneler ve kullandığınız altyapılar (bağımlılılar) var. Bunları tek bir paket halinde, tak-çalıştır hale gelmesine konteynır denir. Bu konteynırların oluşturulmasını, taşınmasını ve çalışmasını sağlayan araca da docker denir. Docker, sanal makinenin bir programa dönüşmüş halidir diyebilirim. Sanal makine gibi çalışır ama sanal makine değildir. Karşılaştırma açısından aşağdaki görsel biraz daha anlaşılır olabilir
Docker ile ilk defa tanışıyorsanız biraz "bune ya" diyebilirsiniz. Biraz kafa karıştırıcı gibi duruyor olabilir. Ama docker kullandıkça yavaş yavaş daha iyi kavrayacaksınız.
Docker Kurulumu
İlk önce docker depolarını ekleyip aktif hale getirelim.
Kod:
curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add
Kod:
echo 'deb [arch=amd64] https://download.docker.com/linux/debian buster stable' > /etc/apt/sources.list.d/docker.list
Kod:
apt-get update
Kod:
apt-get install docker-ce
Yükleme işlemimiz bittikten sonra docker çalışıyor mu onu test edelim.
Kod:
docker run hello-world
Kod:
systemctl enable docker
Docker kurulumu bu kadar. Şimdi WebMap kurulumuna geçelim.
WebMap Kurulumu
Öncelikle kurmamız gereken opt klasörüne gidelim.
Kod:
cd /opt
Kod:
git clone https://github.com/SabyasachiRana/WebMap.git
Kod:
cd WebMap/docker
WebMap'i docker'da kullanılabilir hale getirelim şimdi. Bu işlem bende bi 10 dakka sürdü haberiniz olsun
Kod:
docker build -t webmap:latest .
vimrc ile alakalı bir hata aldık. Bu hata vimrc dosyasını kopyalamak istiyor fakat /root/ altında böyle bir dosyayı bulamıyor. Bizde locate ile vimrc araması yapalım.
Kod:
locate vimrc
Bulduğumuz dosyayı bulunduğumuz WebMap/docker altına kopyalayalım.
Kod:
cp /etc/vim/vimrc .
Tekrar build komutumuzu girelim.
Kod:
docker build -t webmap:latest .
Kurulumu tamamladıktan sonra WebMap aracımızı çalıştıralım.
Kod:
docker run -d -v /opt/WebMap/docker/xml:/opt/xml -p 8000:8000 webmap:latest
WebMap aracımızı kullanmak için tarayıcımız üzerinden localhost:8000 adresini girelim.
Bizden token istemekte. Fotoğrafta da göründüğü gibi token alabileceğimiz komutu bize veriyor. Hemen komut satırına yazalım.
Kod:
docker exec -ti webmap /root/token
Kod:
docker ps
Kod:
docker exec -ti 758156de8cda /root/token
Yine bir hata
token.py dosyamızı incelediğimizde python3 ile çalıştırmamız gerektiğini anlıyoruz ve komut satırımızı düzenleyip tekrar çalıştırıyoruz.
Kod:
docker exec -ti 758156de8cda python3 /root/token
Almamız gereken token'ı alabildik sonunda
Kurulum ve çalıştırma işlemi bu kadardı. Yanlız ufak bir not. Bilgisayarınızı (ya da sanal makinenizi), sisteminizi kapatıp tekrar açtığınızda WebMap'i kullanabilmek için tekrar çalıştırma (docker run) ve token alma işlemlerini gerçekleştirmeniz gerekiyor. Bu işlemleri tek bir script dosyasını çalıştırarak halledebilirsiniz. Bu script Ömer Faruk Çelik'e aittir
Ömer Faruk Çelik Linkedin Profili
Script.sh
Kod:
#!/bin/sh
echo "- Starting docker..."
docker run -d -v /opt/WebMap/docker/xml:/opt/xml -p 8000:8000 webmap:latest > /dev/null
echo "+ Docker has been started...\n"
echo "- Getting docker ID and generating token..."
_id=$(docker ps | grep webmap | cut -d ' ' -f1)
_token=$(docker exec -ti $_id python3 /root/token | grep Token | cut -d ' ' -f2)
echo "+ Token: $_token"
bu scripti daha rahat kullanmanız için /root dizinine açınız. Kullanımını bilmeyenler için;
./script.sh
WebMap Kullanımı
Öncelikle elimizde bir XML formatında nmap tarama çıktısı gerekmektedir. Nmap'te output parametresini çok kullanmadığımız için nmap taramasında XML çıktı almayı göstermek istiyorum öncelikle.
Kod:
cd /opt/WebMap/docker/xml
bu klasör altında xml dosyalarımız olmalı. Bir tane nmap taraması ile hemen oluşturalım.
Kod:
nmap -A -p- 192.168.189.129 -oX H4ck3njoy.xml
Taramasını yaptığım sistem, zafiyetli makine olan m3tasploitable2. H4ck3njoy.xml isminde çıktımızı aldık şimdi tarayıcımıza girip incelemeye başlayalım.
Xml dosyamıza tıkladığımızda grafikselleşmiş portları ve servisleri görebilirsiniz. Hemen grafiklerin altında "Check for CVE and Exploits" sekmesiyle CVE/Exploit taramasını başlatalım.
Done diyerek CVE/Exploit taramasını kapatabilirsiniz. Sonuçları sol menüden IP adresine tıklayarak görebilirsiniz.
ya da "PDF Report" diyerek pdf çıktısını alabilirsiniz. Yukarıda gördüğünüz sonuçları pdf haline getiriyor sadece.
PDF Görüntüleri:
Nmap Taraması
Sol menüden "New Nmap Scan" diyerek WebMap üzerinden nmap taraması da yapabilirsiniz. Ufak bir örnek aşağıda mevcut.
Yine sol menüden "Show all" sekmesinden farklı taramaları seçerek inceleyebilirsiniz.
Benim anlatacaklarım bu kadar
https://github.com/SabyasachiRana/WebMap
Son düzenleme:
