MITMf, ağ içerisinde Ortadaki Adam Saldırıları gerçekleştirmek için açık kaynak kodlu geliştirilen ve eklenti desteği olan bir çatıdır. Python dili ile geliştirilen çatının önemli iki özelliği bulunmaktadır.
Bunlar ihtiyaç durumda kendi eklentilerinizi yazabilme imkânınızın olması ve var olan eklentilerinin saldırlar için yeterli ve güçlü olmasıdır. Aşağıda framework ile beraber gelen eklentiler ve açıklamaları listelenmiştir.
Bunlar ihtiyaç durumda kendi eklentilerinizi yazabilme imkânınızın olması ve var olan eklentilerinin saldırlar için yeterli ve güçlü olmasıdır. Aşağıda framework ile beraber gelen eklentiler ve açıklamaları listelenmiştir.
MITMf içerisinde Bulunan Eklentiler
-
Spoof – ARP, DNS, DHCP ve ICMP protokolleri üzerinden trafiği yönlendirmek ya da değiştirmek için gerekli eklentidir.
-
BeEFAutorun – Hedefin işletim sistemi veya tarayıcı özelliklerine göre BeEF hooks & autoruns özelliklerini harekete geçiren eklenti.
-
AppCachePoison – Uygulamaların önbelleklerini zehirlemek için kullanılan eklenti.
-
BrowserProfiler – Bağlı olunan hedeflerin tarayıcıları üzerinde çalışan eklentileri keşif aracı.
-
CacheKill – Header bilgisi üzerinde değişiklik yaparak hedefin girdiği sayfaların ön belleklerini öldürür.
-
FilePwn – BDFactory modülünü kullanarak dinlenen hedef trafiğinden geçen exe uzantılı veya zip uzantılı ve içerinde exe barındıran dosyalara zararlı yazılım bulaştıran eklenti.
-
Inject – Dinlenen hedef trafiğinden geçen HTTP içeriğine HTML kodları enjekte eden eklenti.
-
JavaPwn –Güncel olmayan Java versiyonuna göre hedef Java Tarayıcı Eklentileri üzerinden drive-by saldırısı gerçekleştiren eklenti.
-
jskeylogger – Hedef trafiğinden geçen web sayfalarının içerisine Javascript Keylogger kodları enjekte eden eklenti.
-
Replace – Hedefin istekte bulunduğu web sayfaları içerisinde belirtilen desene (pattern) göre içerik arar ve verilen verileri web sayfasına enjekte eder.
-
Upsidedownternet – Web sayfaları içerisinde bulunan resimler 180 derece döndürür.
-
Responder – LLMNR, NBT-NS ve MDNS isteklerini zehirleyen eklenti.
-
SMBAuth – SMB challenge-response yetkilendirme girişimlerini çağıran eklenti.
-
Airpwn – Kablosuz ağ trafiğini dinleyerek yapılandırıldığı gibi trafiği zehirleyen eklenti.
-
Session Hijacker – Hedefe karşı oturum çalma saldırısı gerçekleştiren eklenti.
Bu yazı içerisinde MITMf kullanılarak ağ içerinde Ortadaki Adam Saldırısı nasıl gerçekleştirilir kısaca gördükten sonra eklentilerden biri olan FilePwn kullanılarak Ortadaki Adam Saldırısı başarıyla gerçekleştirilmiş bir ağ içerisinde hedefe zararlı yazılım nasıl bulaştırılır göreceğiz.
MITMf ile ARP Spoofing
MITMf’ün geliştirilmesindeki amaç Ortadaki Adam Saldırılarını kolaylaştırmak olduğu için ağ içerisinde ARP gibi protokolleri zehirlemek için yapacağınız işlemlerde çok az olmaktadır. Siz gerekli ayarları tek komut ile verirsiniz, MITMf hepsini sizin yerinize yapar.
ARP Spoofing saldırısı için kullanacağımız eklenti olan “–arp” eklentisi bizim yerimize otomatik olarak IPTables kurallarını oluşturur ve IP Forwarding’i etkinleştirir. Framework içerisinde yalnızca “–arp” eklentisinin özellikle “root” hakları ile çalıştırılması gerekmektedir. Ancak bu saldırıları gerçekleştirirken kullanacağınız araç ve araç eklentilerinin sağlıklı çalışması için her zaman “root” hakları ile çalışmanız sizin yararınıza olacaktır.
Saldırı sırasında kullanacağımız işletim sistemi Kali Linux olup, hedef bilgisayarımız ise Windows 7’dir. Hedef bilgisayardan alınmış ARP Tablosu ekran görüntüsü aşağıda bulunmaktadır.
Şekil – 1: Hedef Bilgisayardaki ARP Tablosu
Yukarıdaki ekran görüntüsünden de anlaşılacağı üzere ağ cihazının gerçek MAC Adresi “1A:20:32:XX:XX:XX”’dir.
Saldırıya başlamak için frameworkün yüklü olduğu klasöre geçin ve aşağıdaki komutu kendinize göre güncelleyerek çalıştırın.
python mitmf.py –spoof –arp –i [AĞARAYÜZÜ] –gateway [GATEWAYIP] –target [HEDEFIP] –verbose
Yukarıdaki komutu çalıştırdığınızda aşağıdaki ekran görüntüsünde ki gibi çıktıları alırsanız, MITMf başarılı şekilde çalışmaya başlamış ve ağ içerisinde yayına başlayarak araya girmeye çalışmaktadır.
Şekil – 2: MITMf ile ARP Spoofing Saldırı Başlangıcı
MITMf eğer başarılı bir şekilde hedef ile ağ cihazı arasında girmeyi başarırsa, yani ARP Tablosunu zehirleyebilirse aşağıdaki ekran görüntüsünde bulunduğu gibi trafik hakkındaki bilgiler listelenmeye başlar.
Şekil – 3: MITMf ile Başaralı Olan ARP Spoofing Saldırısı
Aşağıdaki ekran görüntüsünde de hedef sistem üzerinden alınmış ARP Tablosu görülmektedir. Hedef ARP Tablosu zehirlenmiş ve işaretlenmiş kısımda Saldırganın MAC Adresi (08:00:27:XX:XX:XX) gözükmektedir. Artık saldırgan hedef ile ağ cihazının arasında girmiştir.
Şekil – 4: Hedefin Zehirlenmiş Olan ARP Tablosu
Artık saldırgan ağ içerisinde geçen trafiği dinleyebilecek ve değiştirebilecek konumda bulunmaktadır. Bu noktadan sonra saldırgan hedef sisteme hemen her şeyi yapabilecek konuma gelmiştir.
MITMf FilePwn Eklentisi İle Zararlı Yazılım Bulaştırma
MITMf’ün FilePWN eklentisi ile başarılı şekilde gerçekleştirilmiş Ortadaki Adam Saldırısı sonrasında hedef sisteme zararlı yazılım bulaştırılabilir. Burada MITMf açık kaynak kodlu olarak geliştirilen The Backdoor Factory (BDF) ve The Backdoor Factory Proxy (BDFProxy) altyapısını kullanmaktadır.
FilePwn eklentisini kullanmaya başlamadan önce MITMf’ün kurulu olduğu dizinin altında bulunan “config” klasörü içerisinde FilePwn eklentisinin yapılandırma dosyası (filepwn.cfg) bulunmaktadır.
Şekil – 5: filepwn.cfg Dosyasının İçeriği
Bu dosya içerisindeki değişkenler aşağıda listelenmiştir.
-
patchCount – Varsayılan olarak 5 değerini almıştır. Trafik üzerinden geçen zip uzantılı dosya içerisinde 5 adetten fazla dosya varsa beşinci ve sonrasına herhangi bir işlem yapılmaz. Yani 6 adet dosya var ise sırasıyla 5 tanesine zararlı yazılım bulaştırılır ancak 6. dosyaya herhangi bir işlem yapılmaz.
-
maxSize – Varsayılan olarak 40000000 Byte’dır. Buda yaklaşık olarak 40 MB eder. ~40MB üzerinde boyuta sahip olan zip uzantılı dosyalara herhangi bir işlem yapılmaz.
-
blacklist – Varsayılan olarak .dll değerini almıştır ve bu zip dosyası içerisine .dll uzantılı dosyalar oluşturma anlamına gelir.
-
FileSizeMax – Varsayılan olarak 50000000 Byte’dır. Buda yaklaşık olarak 50 MB eder. ~50MB üzerinde boyuta sahip olan exe uzantılı dosyalara herhangi bir işlem yapılmaz.
Yukarıdaki değişkenler dışındaki değişkenlerin standart bırakılmasında bir sakınca yoktur. Burada bizim için gerekli olan Bağlantı Kurulacak Host IP Adresi, Port Numarası, Kullanılacak Shell kısımlarıdır. Bu yazı içerisinde hedefimiz olan işletim sistemi Windows 7 32-Bit olduğu için “WindowsIntelx86” kısmı altında bulunan değişkenler düzenlenmiş ve kullanılmıştır.
Şekil – 5: Düzenlenen filepwn.cfg’nin İlgili Kısımları
Gerekli düzenlemeler yapıldıktan sonra MSFConsole üzerinde “exploit/multi/handler” modülü ile dinleme moduna geçilir. Ardından aşağıdaki komut ile MITMf, FilePwn eklentisi ile beraber harekete geçirilir.
python mitmf.py –spoof –arp -i eth0 –gateway 172.20.10.1 –target 172.20.10.7 –filepwn –verbose
Şekil – 6: MITMf’ün FilePwn Eklentisi ile Başlatılması
Burada ARP Spoofing başlığı altında bulunan koda ek olarak “–filepwn” kodu eklenmiştir ve saldırı esnasında ARP Spoofing kullanılmıştır. Yukarıdaki komut ile ağ üzerinde ARP Spoofing yapılacak, ardından hedefin belirlediğimiz özelliklere uygun “exe” veya “zip” uzantılı dosya (içerisinde “exe” olan) indirip çalıştırılmasını bekleyeceğiz. Dosyalar çalıştığı anda başarılı bir şekilde sistem üzerinde oturum ele geçirilmiş olacaktır.
Aşağıdaki ekran görüntüsünde de görülebileceği üzere, MITMf başarıyla ağ üzerinde Ortadaki Adam Saldırısını gerçekleştirmiş, hedefin istekte bulunduğu zip uzantılı dosya olduğunu tespit etmiştir. Ardından zip dosyasının içerisinde exe uzantılı dosya olan “wrar520tr.exe” varlığını doğrulamış ve bu dosyaya belirlediğimiz zararlı kodları enjekte etmiştir. Son olarak zararlı kod bulaştırdığı dosyayı tekrar sıkıştırıp, zip uzantılı hale getirdikten sonra hedefe göndermiştir.
Şekil – 7: MITMf’ün Başarıyla Dosyaya Zararlı Yazılım Bulaştırması
Hedef dosyayı çalıştırdıktan sonra zararlı kod içeren dosyamız bizimle bağlantı kuracaktır. Yukarıdaki işlemlere başlamadan önce dinleme moduna geçilmesini gerektiğini belirtmiştim. Aşağıdaki ekran görüntüsünde başarılı bir şekilde oturum alındığı görülmektedir.
Şekil – 8: Başarılı Şekilde Oturum Alınması
Bu noktadan sonra saldırgan hedef sistem üzerinden kod çalıştırabilecek hale gelmiş ve istediğini yapabilecek konumdadır.
Halil DALABASMAZ