Virt-Manager ile Sanal Makine Oluşturulması
Windows üzerinden, uzak sunucunuzdaki Virt-Manager’a bağlanabilmek için bir önceki yazıya bakabilirsiniz. Bu yazıda, Virt-Manager ile sanal makine oluşturmak için gerekli olan adımlar anlatılacaktır.
KVM, QEMU ve Virt-Manager Kurulması
İşletim sistemi olarak Linux dağıtımı kullanıyorsanız, kvm sanallaştırma platoformunu kullanabilirsiniz. KVM, Linux çekirdeği seviyesinde çalışan açık kaynak bir sanallaştırma platformudur. Sanallaştırma platformuna, kullanıcı arayüzü oluşturmak için Qemu kullanılmaktadır. Qemu ile farklı mimarideki yazılımları çalıştırabilirsiniz. x86 tabanlı bir mimaride ARM mimarisini çalıştırabilirsiniz. İşletim sistemi olarak Ubuntu(20.04 LTS) kullanıyorsanız, ilgili yazılımların kurulabilmesi için aşağıdaki komutların çalıştırılması yeterli olacaktır.
sudo apt install cpu-checker
kvm-ok
sudo apt install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virtinst virt-manager
sudo systemctl is-active libvirtd
virt-manager
Sanal Makine Oluşturulması
Virt-Manager’ı çalıştırdıktan sonra sanal makine oluşturmak için yapmanız gereken, File -> New Virtual Machine butonuna basmanız ve işletim sistemini nasıl kuracağınızı belirlemenizdir.
Image dosyanız default dizinde olmayabilir, bu durumda sol aşağıda bulunan butona tıklayarak, image dosyanızın bulunduğu yeni bir Filesystem Directory oluşturmanız gerekmektedir.
Image dosyanızı seçtikten sonra, ana makinenizin sistem özelliklerine göre sanal makinenizin hafıza, işlemci ve disk boyutu gibi bilgilerini ayarlayabilirsiniz.
Sanal makinenizi oluşturmadan önce özet bilgisini aşağıdaki gibi görebilirsiniz.
Sanal makinenizi kurduktan sonra hiçbir uygulama kurmadan önce snapshot’ını almak sizin için faydalı olacaktır.
Kurduğunuz makineyi amacınız doğrultusunda kullanabilirsiniz. Oluşturduğum makineyi sandbox analiz ortamı olarak kullanacağımdan statik IP adresi vermekle başlıyorum. Virt-Manager, virbr0 adında 192.168.122.0/24 bloğuna sahip bir interfaceden oluşmaktadır. Bu blok aralığındaki bir IP adresini statik olarak ekledikten sonra, gateway olarakda virbr0 interfacenin IP adresi olan 192.168.122.1 IP adresini ekliyorum.
Bir sandbox için en önemli şeylerden biri zararlı yazılımın tam anlamıyla çalışabilmesidir. Bu nedenle sıkılaştırmaların ve gürültü oluşturan uygulamaların kapatılması, zararlı yazılım analizlerinin doğru sonuç vermesi için faydalı olacaktır.
Gürültü oluşturan uygulamaların kapatılması için aşağıdaki bat dosyasını çalıştırılması gerekmektedir.
https://raw.githubusercontent.com/doomedraven/Tools/master/Windows/disable_win7noise.bat
Windows 7 analiz ortamında zararlı yazılımların çalışabilmesi için yüklü olması gereken uygulamaların listesi aşağıdaki gibidir.
- .NET 4.7.2
- Python 3.6 x86
- Adobe Reader
- Office 2007
- Microsoft Visual C++ Redistributable packages for Visual Studio (vc_redist.x86.exe)
- Microsoft Root Certificate Authority 2011
Analiz ortamı için gerekli olan uygulamalar ve koşullar sağlandıktan sonra sandbox ile iletişim kuracak olan ajanın kurulup, çalıştırılması gerekmektedir. Sandbox olarak CAPE Malware Configuration And Payload Extraction kullanılacağından dolayı agent.py dosyasının Windows 7 analiz ortamında indirilip çalıştırılması gerekmektedir.
pip install --upgrade pip
pip install --upgrade Pillowwget https://raw.githubusercontent.com/kevoreilly/CAPEv2/master/agent/agent.py "C:\Users\{UserName}\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\katana.pyw"
Zararlı yazılımlar, anti-sandbox teknikleri ile sandbox ortamında çalışıp çalışmadığının tespitini yapabilmektedir. Bunu önleyebilmek adına ajanın default agent.py olan ismini katana.pyw olarak değiştiriyoruz. Sanal makine her açılıp kapandığında çalışabilmesi için de Startup dizinine kaydediyoruz. Ardından admin kullanıcısı ile komut satırında katana.pyw dosyasını çalıştırıyoruz.
Tüm adımlar doğru bir şekilde yapıldıktan sonra, enfekte olmamış bir ortamda çalışabilmek için snapshot alınması gerekmektedir. Ardından snapshot isminin sanallaştırma platformuna ait dosyaya eklenmesi gerekmektedir.
Son olarak sanallaştırma ortamının tespit edilebilirliğini azaltmak adına buradaki scripti kullanabilirsiniz. Düzenlenmiş kaynak kod ile kvm,qemu ve virt-manager kurabilirsiniz fakat sağlıklı bir sonuç alamayabilirsiniz.