Aug 05

[Tools] Apa Itu Web Shell?

Web Shell (WebShell/Shell) adalah sebuah aplikasi berbasis web yang digunakan untuk mengontrol suatu komputer. Umumnya aplikasi ini digunakan oleh para pencari celah keamanan untuk mengendalikan server yang sudah berhasil dikuasai (membuat backdoor atau mengupload file-file). Jika anda pernah mengerti software CPanel yang umum digunakan untuk web hosting, web shell ini bisa dikatakan versi sederhana dari CPanel dengan tujuan pembuatan yang berbeda.

Ada beberapa hal yang umumnya dimiliki oleh sebuah web shell, yaitu file transfer, eksekusi shell command, network scanning, akses database, dsb. Dan untuk menyembunyikan keberadaan web shell ini, biasanya kode sumbernya akan diacak (obfuscate) seperti dituliskan pada post sebelumnya. Selain itu, biasanya sebuah web shell (yang menggunakan bahasa PHP) memakai fungsi-fungsi seperti ini_set() untuk menonaktifkan proteksi yang diberikan pada konfigurasi PHP di php.ini.

Beberapa contoh dari webshell yang populer adalah C99 dan R57 serta berbagai macam variasi pengembangannya. Contoh dari tampilan web shell C99 dan R57 ada pada gambar di bawah ini :

Tampilan Web Shell R57

Tampilan Web Shell R57

Tampilan Web Shell C99

Tampilan Web Shell C99

Pertanyaan yang sering muncul ketika server sudah terinjeksi webshell adalah bagaimana dia bisa masuk ke dalam? Berdasarkan Ryan Kazanciyan di OWASP, web shell ini bisa masuk melalui beberapa celah, yaitu :

  • Remote File Inclusion
  • SQL Injection (memanfaatkan penulisan file oleh RDBMS/mencuri user level admin untuk meng-upload file)
  • File Upload (via aplikasi web / FTP)
  • Perlindungan yang buruk terhadap interface administrator di aplikasi web (password mudah ditebak, dsb)
  • … (Silahkan ditambahkan :D )

Selanjutnya, adalah bagaimana kita bisa mendeteksi apakah server yang ditangani sudah terinjeksi web shell? Beberapa hal yang bisa dilakukan adalah dengan cara sebagai berikut :

  • Network monitoring (menggunakan IDS/IPS untuk mendeteksi serangan-serangan pada aplikasi web, blacklist sumber IP/domain tertentu)
  • Memantau log (harus cukup tabah untuk mencari jarum di tumpukan file log, misal : mencari request HTTP mencurigakan di dalam 10 MB file log)
  • Anti virus/software deteksi web shell
  • Pencarian kode-kode mencurigakan menggunakan tools semacam grep,tail,head,awk,dsb

Saat ini aplikasi ini nampaknya cukup populer di kalangan script kiddies karena kemudahan penggunaannya. Semoga saja artikel ini bisa sedikit mencerahkan mengenai apa itu web shell, bagaimana masuknya, dan cara mencarinya di dalam komputer. Jika ada yang ingin ditambahkan, silahkan tambahkan di kolom komentar. :)

Be Sociable, Share!

0
comments

Reply

[+] kaskus emoticons nartzco