Bagaimana Menemukan PHP Shell di Server

anonymous hackerPeristiwa hacking, defacing, semakin marah saja akhir-akhir ini. Hal itu semakin menjadi-jadi semenjak Amerika mencetuskan SOPA/PIPA untuk mengamankan industri Amerika dari maraknya pembajakan. Sayangkan, hal itu ditanggapi lain oleh beberapa pihak sebagai bagian menghentikan kebebasan berekspresi di dunia ini.

Banyak website-website besar berguguran sebagai bagian dari protes besar-besaran oleh hacker yang menggunakan identitas kelompok seperti Anonymous dan Lulzsec.

Ok, dalam bahasan kali ini kita tidak membahas tentang sepak terjang para hacker, namun yang kita bahas adalah bagaimana meminimalisir dampak setelah apa yang mereka perbuat. Secara psikologis, seorang hacker/cracker/defacer ternyata tidak cuma melakukan aksi defacing (mengubah tampilan halaman suatu website), namun dalam aksinya mereka juga akan menanamkan backdoor atau rootkit di server korban yang telah berhasil mereka tembusi.

Kebanyakan hacker menanam sejenis backdoor yang diciptakan dalam bahasa scripting PHP dan bisa diakses melalui port 80. Biasanya, mereka menyebutkan sebagai PHP Shell walau banyak varian dari backdoor tersebut.

PHP Shell sendiri, menurut saya susah dideteksi, kecuali kita mengetahui polanya atau tahu checksum script tersebut sehingga kita bisa mencari di seluruh server. Tetapi bagaimana jika PHP Shell tersebut dibuat acak dan polymorph?

Mungkin cara di bawah berikut ini bisa sedikit membantu.

grep -RoE "((eval.*(base64_decode|gzinflate))|r57|c99|sh(3(ll|11)))" . --include=*.php*

Biasanya sebuah PHP Shell akan menggunakan trik eval atau gzinflate dalam mengacak codenya agar sulit dideteksi oleh mata. Code di atas cuma akan melakukan checking file berekstensi “.php” yang mana di dalamnya terdapat kata-kata seperti eval, base64_decode, dll.

Jika Anda ingin mengecek PHP Shell di seluruh directory server Anda, misalnya /home/*/public_html/, caranya adalah sebagai berikut:

grep -RoE "((eval.*(base64_decode|gzinflate))|r57|c99|sh(3(ll|11)))" /home/*/public_html/ --include=*.php*

Jika Anda telah menginstal Clam Anti Virus di server Anda, bisa juga digunakan itu fitur “clamscan“. Caranya adalah sebagai berikut:

nice -n 19 clamscan /home/*/public_html -r -i | grep " FOUND"

OK. Semoga Membantu!

Sumber: www.safesrv.net