Unpack Me Decode Me Python 10/?

  • Konuyu Başlatan Konuyu Başlatan strive
  • Başlangıç tarihi Başlangıç tarihi

strive

Kişisel Sorunlarla İlgilenmiyorum.
Prime Üye
Katılım
18 Ağu 2025
Mesajlar
6,039
Beğeniler
1,347
İletişim
dw :
VT yok open source zaten basit bir obf
 
Packlenmemiş dosyaya unpack isteyen koca gönüllü Azra
 
Python:
def hesap_makinesi():
    print('\n--- STANDART HESAP MAKİNESİ ---')
    try:
        sayi1 = float(input('Birinci sayıyı girin: '))
        islem = input('İşlemi girin (+, -, *, /): ')
        sayi2 = float(input('İkinci sayıyı girin: '))

        if islem == '+':
            print('Sonuç: {0}'.format(sayi1 + sayi2))
        elif islem == '-':
            print('Sonuç: {0}'.format(sayi1 - sayi2))
        elif islem == '*':
            print('Sonuç: {0}'.format(sayi1 * sayi2))
        elif islem == '/':
            print('Sonuç: {0}'.format(sayi1 / sayi2))
        else:
            print('Geçersiz işlem!')
    except Exception as e:
        print('Hata oluştu: {0}'.format(e))


def crackme():
    print('\n--- CRACKME CHALLENGE ---')
    print('Programın içine gizlenmiş düz yazıyı (Flag) bulmaya çalış!')

    secret = 'gqupbi'
    kullanici_input = input('Gizli anahtarı girin: ')
    transformed = ''.join([chr(ord(c) + 3) for c in kullanici_input[::-1]])

    if transformed == secret:
        print('\n[+] Tebrikler! Doğru anahtar.')
        print('Gizli Düz Yazı: Tersine mühendislik başarılı!')
    else:
        print('\n[-] Yanlış anahtar! Tekrar dene.')


def ana_menu():
    while True:
        print('\n===== ANA MENÜ =====')
        print('1. Hesap Makinesi')
        print('2. Crackme (Düz Yazı Challenge)')
        print('3. Çıkış')

        secim = input('Seçiminiz (1/2/3): ')

        if secim == '1':
            hesap_makinesi()
        elif secim == '2':
            crackme()
        elif secim == '3':
            print('Görüşmek üzere!')
            break
        else:
            print('Geçersiz seçim, tekrar deneyin.')


if __name__ == '__main__':
    ana_menu()
 
Python:
def hesap_makinesi():
    print('\n--- STANDART HESAP MAKİNESİ ---')
    try:
        sayi1 = float(input('Birinci sayıyı girin: '))
        islem = input('İşlemi girin (+, -, *, /): ')
        sayi2 = float(input('İkinci sayıyı girin: '))

        if islem == '+':
            print('Sonuç: {0}'.format(sayi1 + sayi2))
        elif islem == '-':
            print('Sonuç: {0}'.format(sayi1 - sayi2))
        elif islem == '*':
            print('Sonuç: {0}'.format(sayi1 * sayi2))
        elif islem == '/':
            print('Sonuç: {0}'.format(sayi1 / sayi2))
        else:
            print('Geçersiz işlem!')
    except Exception as e:
        print('Hata oluştu: {0}'.format(e))


def crackme():
    print('\n--- CRACKME CHALLENGE ---')
    print('Programın içine gizlenmiş düz yazıyı (Flag) bulmaya çalış!')

    secret = 'gqupbi'
    kullanici_input = input('Gizli anahtarı girin: ')
    transformed = ''.join([chr(ord(c) + 3) for c in kullanici_input[::-1]])

    if transformed == secret:
        print('\n[+] Tebrikler! Doğru anahtar.')
        print('Gizli Düz Yazı: Tersine mühendislik başarılı!')
    else:
        print('\n[-] Yanlış anahtar! Tekrar dene.')


def ana_menu():
    while True:
        print('\n===== ANA MENÜ =====')
        print('1. Hesap Makinesi')
        print('2. Crackme (Düz Yazı Challenge)')
        print('3. Çıkış')

        secim = input('Seçiminiz (1/2/3): ')

        if secim == '1':
            hesap_makinesi()
        elif secim == '2':
            crackme()
        elif secim == '3':
            print('Görüşmek üzere!')
            break
        else:
            print('Geçersiz seçim, tekrar deneyin.')


if __name__ == '__main__':
    ana_menu()
nasıldı basitmiydi ?
 
Bu kullanıcıyla herhangi bir iş veya ticaret yapmak istiyorsanız, forumdan uzaklaştırıldığını sakın unutmayın.
nasıldı basitmiydi ?
Dostum bu ne biçim obfuscator aq execi ters çevirince bile düz kodu printleyebiliyoruz şu yapay zeka ile obfuscator yapmayı bırakın kendi methodlarınızı türetin biraz.
 
Dostum bu ne biçim obfuscator aq execi ters çevirince bile düz kodu printleyebiliyoruz şu yapay zeka ile obfuscator yapmayı bırakın kendi methodlarınızı türetin biraz.
niye yapay zeka kullanılsın diye üretildi amk
 
Ai vs Ai

İlk katman açıldı, ama içinde hâlâ XOR ile şifrelenmiş byte string'ler var (RlζκΕΖlΦPHiKΚnhIΩ(b'...') çağrıları). Şimdi onları da statik olarak çözüp tamamen okunabilir hale getireyim.
Deobfuscated kod, çözdü crackme, temizledi değişken adlarını

Deobfuscated kod, çözdü crackme, temizledi değişken adlarını

Tamam, iki katman birden açıldı. Çözümleme şöyle ilerledi:

Dış katman: TΑuuHyνAlθI_pYHDII1 byte string'i sadece base85 + zlib (XOR lambdası tanımlanmış ama kullanılmamış — tuzak/yem).

İç katman: Her metin RlζκΕΖlΦPHiKΚnhIΩ(b'...') ile sarılmış — base85 decode → zlib decompress → her byte'a 8410 ^ 8275 = 273 ile XOR. Anahtar 273.

Aşağıda gürültüler (dead-code XOR'ları, kullanılmayan satırlar) temizlenmiş, değişkenler okunabilir adlarla yeniden yazılmış hali — anlamca birebir aynı:
def hesap_makinesi():
print('\n--- STANDART HESAP MAKİNESİ ---')
try:
a = float(input('Birinci sayıyı girin: '))
op = input('İşlemi girin (+, -, *, /): ')
b = float(input('İkinci sayıyı girin: '))
if op == '+':
print('Sonuç: {0}'.format(a + b))
elif op == '-':
print('Sonuç: {0}'.format(a - b))
elif op == '*':
print('Sonuç: {0}'.format(a * b))
elif op == '/':
print('Sonuç: {0}'.format(a / b))
else:
print('Geçersiz işlem!')
except Exception as e:
print('Hata oluştu: {0}'.format(e)) # NOT: orijinalde tanımsız 'CiβlEΑζH1Vlε' var → bug

def crackme():
print('\n--- CRACKME CHALLENGE ---')
print('Programın içine gizlenmiş düz yazıyı (Flag) bulmaya çalış!')
hedef = 'gqupbi'
girilen = input('Gizli anahtarı girin: ')
ters = girilen[::-1]
donusturulmus = ''.join(chr(ord(c) + 3) for c in ters)
if donusturulmus == hedef:
print('\n[+] Tebrikler! Doğru anahtar.')
print('Gizli Düz Yazı: Tersine mühendislik başarılı!')
else:
print('\n[-] Yanlış anahtar! Tekrar dene.')

def ana_menu():
while True:
print('\n===== ANA MENÜ =====')
print('1. Hesap Makinesi')
print('2. Crackme (Düz Yazı Challenge)')
print('3. Çıkış')
secim = input('Seçiminiz (1/2/3): ')
if secim == '1':
hesap_makinesi()
elif secim == '2':
crackme()
elif secim == '3':
print('Görüşmek üzere!')
break
else:
print('Geçersiz seçim, tekrar deneyin.')

if __name__ == '__main__':
ana_menu()
 

Şuanda konuyu görüntüleyen kullanıcılar

Geri
Üst Alt