Mengamankan Server dari Eksploitasi PHP Shell

PHP Shell merupakan tool yang dapat digunakan untuk menjalankan perintah shell yang sewenang-wenang atau menjelajahi sistem file di server web jarak jauh Anda.

Tool ini tidak memerlukan akses remote seperti telnet atau SSH yang mengharuskan untuk memasukan user dan password agar server dapat diakses. Sehingga banyak digunakan untuk aktivitas berbahaya seperti phising, penyebaran malware, dan aktivitas lainnya.

Install PHP Shell

Untuk menginstall PHP Shell cukup mudah, Anda perlu mendownload phpshell-2.6.tar.gz lalu extract ke dalam docroot atau folder public_html.

Setelah terinstall Anda dapat mencoba jalankan command ps, free, du, df, dan lainnya. Atau hanya sekedar mencoba membuat dan menghapus file.

Mengamankan Server

php.ini

Agar terhindar dari Eksploitasi PHP Shell, Anda dapat menambahkan disable_functions pada php.ini

disable_functions = show_source, system, passthru, exec, popen, proc_open, allow_url_fopen,symlink, exec,passthru,shell_exec,system,proc_open,popen,curl_multi_exec,parse_ini_file
open_basedir = /home/user/:/tmp/

Lalu restart service php dan cek kembali akses ke PHP Shell

php-fpm

Jika menggunakan php-fpm, Anda dapat menambahkan disable function pada konfig yang ada di folder pool.d

; php.ini custom
php_value[disable_functions] = "disable_functions = show_source, system, passthru, exec, popen, proc_open, allow_url_fopen,symlink, exec,passthru,shell_exec,system,proc_open,popen,curl_multi_exec,parse_ini_file"
php_value[open_basedir] = "/home/user/:/tmp/"

Lalu restart service php dan cek akses ke PHP Shell

Web Shell sudah error dan tidak dapat digunakan lagi.

Referensi :