Perbaikan keamanan Joomla site


Berikut ini tips meningkatkan keamanan Joomla site anda, sesudah kena serangan Hacker. Untuk yang belum kena serangan tips ini juga bisa dipakai.

Sebelumnya silahkan baca artikel saya terdahulu, agar lebih maksimal lagi.

Berikut ini langkah-langkahnya :
1. Download file “index.php” yang terdapat di root folder dan folder Administrator dari Joomla site anda (letakkan di folder terpisah di harddisk anda)
2. Gunakan text editor seperti Dreamweaver, buka / open kedua file “index.php” tersebut.
3. Pada baris paling awal dari isi file “index.php”-nya, copy dan timpa / replace dengan syntax / script berikut ini :

 

<?
// Cegah serangan SQL Injection

$cparam = $_SERVER['QUERY_STRING'];
$injeksi = array("-","/","’","\""," ",")","@","%20","%22","%27","/","http",":","%00","%","<",">","%3C","%3E","%20","%22");
$cek = false;
for ($i=0; $i<count($injeksi); $i++) {
     if (eregi($injeksi[$i],$cparam)) {$cek = true;}
}
if ($cek===true) {
     echo "sorry, we’re fixed that hole :)";
     return "";
}

 

4. Save / simpan perubahan yang dilakukan terhadap kedua file “index.php” tersebut, tutup text editornya, dan upload kembali kedua file “index.php” sesuai dengan lokasi foldernya masing-masing.

5. Login ke Backend Administrator Joomla site anda, disable seluruh user dari User Manager, kecuali Super Administrator, dan segera ganti password Super Administratornya.

6. Reupload / recovery template Joomla yang berhasil di deface oleh Hacker, juga recovery database MySQL melalui PHPMYADMIN (Control Panel Login), jika ternyata isi content artikel Joomlanya juga diacak-acak oleh si Hacker.

7. Ganti password Database MySQL Joomla site anda, jangan lupa ubah juga dibagian file “Configuration.php” yang berisi setting password akses database Joomla ini. Samakan isinya dengan password baru tersebut.

8. Ubah lokasi folder cache default joomla, dengan cara buat folder baru (via FTP) dengan nama yang tidak mudah ditebak hacker. Lalu ubah setting di file “Configuration.php” kepunyaaan Joomla, sesuai dengan lokasi folder cache yang baru itu ($mosConfig_cachepath, $cache_path).

9. Login ke Control Panel dari website anda, lalu ubah setting “PHP.ini”-nya menjadi seperti berikut :

 

safe_mode = On
register_globals = Off
display_errors = Off
allow_url_fopen = Off
allow_url_include = Off
expose_php = Off
magic_quotes_gpc = On
magic_quotes_sybase = Off
disable_functions=exec,passthru,shell_exec,system,proc_open,popen,parse_ini_file,show_source,phpinfo

 

10. Jangan lupa ubah password login Control Panel anda.

Demikian langkah pengaman / perbaikan yang perlu anda lakukan paskah serangan hacker terhadap Joomla site anda. Khusus untuk langkah nomor 1 – 4 itu, hanyalah bersifat sementara, sebelum anda melakukan update terhadap versi Joomlanya maupun terhadap Extensions (modules, components & plugins) yang bermasalah.

Khusus untuk setting “PHP.ini” agar lebih maksimal, bagian “disable_function”-nya bisa anda ubah jadi seperti berikut ini :

 

disable_functions = php_uname, getmyuid, getmypid, passthru, leak, listen, diskfreespace, tmpfile, link, ignore_user_abord, shell_exec, dl, set_time_limit, exec, system, highlight_file, source, show_source, fpaththru, virtual, posix_ctermid, posix_getcwd, posix_getegid, posix_geteuid, posix_getgid, posix_getgrgid, posix_getgrnam, posix_getgroups, posix_getlogin, posix_getpgid, posix_getpgrp, posix_getpid, posix, _getppid, posix_getpwnam, posix_getpwuid, posix_getrlimit, posix_getsid, posix_getuid, posix_isatty, posix_kill, posix_mkfifo, posix_setegid, posix_seteuid, posix_setgid, posix_setpgid, posix_setsid, posix_setuid, posix_times, posix_ttyname, posix_uname, proc_open, proc_close, proc_get_status, proc_nice, proc_terminate, phpinfo,system,passthru,shell_exec,escapeshellarg,escapeshellcmd,proc_close,proc_open,ini_alter,dl,popen,popen,pcntl_exec,socket_accept,socket_bind,socket_clear_error,socket_close,socket_connect

 

Dengan catatan fungsi-fungsi tersebut tidak digunakan oleh Joomla site anda.

NB : Langkah terakhir, lakukan backup data (script php + database MySQL + gambar) secara keseluruhan setiap 2 minggu atau 1 bulan sekali. Agar proses recovery bisa lebih mudah anda lakukan.

Semoga Membantu,
XNY

About these ads

Berikan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Logout / Ubah )

Twitter picture

You are commenting using your Twitter account. Logout / Ubah )

Facebook photo

You are commenting using your Facebook account. Logout / Ubah )

Google+ photo

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

Ikuti

Get every new post delivered to your Inbox.

%d blogger menyukai ini: