Anti-Virus Atlatma - Maligno
Anti-virüs bypass yazı dizisinin başka bir bölümü olan Maligno aracını anlatan yazı ile devam edeceğiz.
Maligno, Encripto tarafından, python diliyle yazılmış ve open-source olarak geliştirilen, Metasploit framework'ün payload/shellcode üretme aracı olan msfvenom'u kullanarak, meterpreter reverse http, https ve https proxy ile beraber pyton meterpreter reverse tcp bağlantılarını sağlayacak olan shellcode'ları üreterek AES ile şifreleyip ayrıca ürettiği python çıktısını obfuscate edip kullanıma hazır hale getirmektedir.
Yazı süresince yapılan işlemlerde Kali linux işletim sistemi kullanılmıştır. Maligno'nun son sürümü dowload sayfasından indirilebilir.
- wget https://www.encripto.no/tools/maligno-2.4.tar.gz
- tar zxvf maligno-2.4.tar.gz # sıkıştırılmış dosya açılıyor
- cd maligno-2.4/ && bash install.sh
Konfigürasyon
Üretilecek olan zararlı yazılımlara ait bilgileri içeren server_config.xml dosyasını reverse bağlantı için kullanılacak olan sunucuya göre ayarlamamız gerekmektedir. Burada düzenlenmesi gereken bilgilerden bazıları;
- Metasploit payload ismi
- Payloadlar için gerekli host adresi ve port numarası
- Hangi encode işleminden geçirileceği
- Encode işleminin kaç iterasyon işleminden geçeçeği
- Kullanılmasının istenmediği karakterler (badchars)
- Network scope alanı
İstenildiği takdirde, üretilen shellcode'un geçirileceği encode tipi ve iterasyon sayısı veya reverse bağlantıda kurbanın bize geleceği port adresi gibi alanlar da değiştirilebilir.
Maligno Server
Maligno klasörü içerisinde bulunan ve kullanılabilecek dosyalardan biri olan maligno_srv.py, oluşturulacak olan zararlıların bulaştığı kurbanlar hakkında bilgilendirme sunan ve bu payloadlar için Metasploit tarafında kullanılabilecek Resource dosyalarını oluşturmaktadır. Aynı zamanda uygulamanın güncellemelerini de kontrol etmektedir.
Maligno Client Generator
Maligno klasörü içerisinde bulunan ve kullanılabilecek dosyalardan bir diğeri olan clientgen.py scripti, Metasploit'in meterpreter reverse http, https, https_proxy ve python meterpreter reverse tcp bağlantılarını elde edebilecek payloadları oluşturur. Çıktılar (clients klasöründe) python dosya formatındadır. Bunların yanında oluşturulan zararlı yazılımlar için Metasploit tarafında kullanılacak handler için payloadların resource dosyaları da oluşturulmaktadır (msfresource klasöründe).
Oluşturulan zararlılar python dosya formatında verilmektedir. Enfekte işleminin yapılacağı makinede python interpreter yüklü ise normal bir python dosyasıymış gibi çalıştırabiliriz.
Fakat bilgisayarda python yüklü olmayacağı gibi kullanılan python modülleri de yüklü olmayabilir ve bu yüzden dosya çalışma sırasında sıkıntılar yaratabilir. Bu yüzden python dosyamızı bazı yardımcı modüller (PyInstaller , Py2Exe, cx_Freeze) ile çalıştırılabilir dosya formatı olan exe'ye çevirebiliriz. Yazıda dönüştürme işlemi için PyInstaller kullanılacaktır.
Bağlantıyı kurması için kullanılacak olan zararlıları oluşturmak için clientgen.py dosyasını kullanacağız. Bunun için;
- python clientgen.py -f server_config.xml -s true
Sorunsuz bir şekilde python scriptleri ve Metasploit resource dosyaları oluşturulmuştur.
Python Dosya ile Reverse Bağlantı
Oluşturulan zararlıları kurban bilgisayarda çalıştırmadan evvel gelecek olan bağlantıyı yakalayacak handlerı oluşturmamız gerekmektedir. Yukarıdaki satırlarda belirttiğimiz gibi Maligno, handler için resource dosyalarını da oluşturmaktadır. Oluşturulan zararlılardan meterpreter için reverse HTTPS bağlantı veren dosyayı çalıştıracağımız farz edelim ve buna göre oluşturulan resource dosyasını yükleyelim.
Python'un ve diğer modüllerinin yüklü olduğunu varsayıp, kurban bilgisayarında oluşturduğumuz scripti çalıştıralım.
Dosya çalıştırıldıktan sonra dinlemeye aldığımız Metasploit tarafına bağlantı gelecektir ve session oluşacaktır.
EXE ile Reverse Bağlantı
Önceden belirttiğimiz gibi her bilgisayarda python olmayabilir. Olsa dahi gerekli modüller yüklü olmayabilir. Bu yüzden python dosyasımız bazı modülleri kullanarak çalıştırılabilir dosyalara dönüştürebileceğimizden bahsetmiştik. PyInstaller ile python dosyamızı exe formatına dönüştürmek için aşağıdaki komut kullanılabilir.
- pyinstaller.exe --onefile –windowed standalone_1_standard_windows_reverse_https.py
Tarama Sonucu
Oluşturduğumuz zararlı yazılımın, online tarama sonucu aşağıda ki resimlerde verilmiştir. İlk olarak python dosyamız için VirusTotal sayfasında yaptığımız taramanın sonucunu görelim.
Şimdi ise PyInstaller ile exe'ye çevirdiğimiz zararlı dosya için VirusTotal web sitesinde yapılan taramanın sonucunu görelim.
Yorumlar
Yorum Gönder