Jika kita cari di search engine tentang bagaimana melindungi situs wordpress Anda dari google dengan beberapa jenis keyword seperti “how to prevent wordpress from hack“, atau dengan kata kunci berbahasa indonesia seperti “mencegah serangan hacker pada wordpress“, akan didapat ratusan ribu blog bahkan jutaan yang membahas tentang hal ini.
ini menunjukkan betapa seringnya website berbasis wordpress diserang hacker. Namun apakah ini menunjukkan bahwa wordpress rawan dari serangan dan banyak celah keamanannya? tentu saja tidak. Justru kitalah yang membuka celah tersebut secara tidak disadari hingga mengundang hacker untuk masuk.
Berikut ini adalah beberapa tips atau langkah yang dapat Anda terapkan untuk memproteksi web anda dari serangan hacker.
1. Buat Backup.
Untuk web dengan fasilitas cpanel dan softacolous, telah dilengkapi dengan fasilitas backup yang mencakup backup directory dan database. Anda bisa memilih salah satu atau keduanya. Backup sangatlah penting karena dengan backup proses restore website bisa lebih cepat, terutama untuk orang awwam seperti kita. cukup sekali klik di menu softacolous, website sudah kembali normal. Anda tidak perlu repot-repot mencari file yang telah diedit oleh hacker dan memperbaikinya. Lakukan backup sesering mungkin setiap kali dilakukan update terhadap content web.
2.Update versi wordpress Anda
Langkah selanjutnya setelah backup contentwordpress adalah selalu mengupdate versi wordpress. Dimenu dashboard, wordpress telah dilengkapi dengan oneclick update, sehingga dengan fasilitas tambahan ini, kita tidak perlu repor-repot lagi melakukan upload dari awal. Update bisa juga dilakukan melalui menu update dari softacolous. setelah Anda mengupdate, jangan lupa lakukan backup.
3. Ganti username login dan password Anda
Untuk password, gunakan password yang baik, yaitu berupa gabungan dari karakter, angka dan tanda baca seperti P45sw0dD!. Kebanyakan hacker mencari kemungkinan password dengan cara brute force. sehingga semakin sulit password yang Anda buat, semakin lama hacker bisa menemukannya.
4. WordPress key dalam file wp-config.php
wordpress key berfungsi sebagai kode enkripsi yang akan menambah tingkat pengamanan database Anda. Gunakan wordpress key generator untuk mendapatkannya.
Berikut ini contoh dari wordpress key :
define(‘AUTH_KEY’, ‘put your unique phrase here’); define(‘SECURE_AUTH_KEY’, ‘put your unique phrase here’); define(‘LOGGED_IN_KEY’, ‘put your unique phrase here’); define(‘NONCE_KEY’, ‘put your unique phrase here’);
5. Install plugin wp-security scan
Plugin ini sangat penting bagi Anda, karena plugin ini mampu melakukan SCAN terhadap Blog wordpress Anda.
6.Ganti tabel prefix
Secara default worpress akan membuat tabel dengan prefiks wp_. Ganti dengan nama lain misal su54h_. Hal ini akan mencegah masuknya SQL Injection ke database Anda.
Perhatian : Sebelum Anda melakukan langkah ke-6 ini, sebaiknya backup situs Anda untuk menghindari hal-hal yang tidak kita inginkan
7.Cegah WordPress dari hacker dengan memblok folder admin dari search engine
Search engine mampu mengindeks semua indeks direktory dari website Anda. Cegah hal ini dengan sedikit memodifikasi file di robot.txt di root directory website Anda:
# User-agent: * Disallow: /cgi-bin Disallow: /wp-admin Disallow: /wp-includes Disallow: /wp-content/plugins/ Disallow: /wp-content/cache/ Disallow: /wp-content/themes/ Disallow: */trackback/ Disallow: */feed/ Disallow: /*/feed/rss/$ Disallow: /category/*
8.Penyerangan Hacker terhadap file .hraccess
file .htaccess (hypertext access) adalah file untuk mengkonfigurasi level directory yang mengizinkan adanya desentralisasi di tiap directory. file .htaccess digunakan untuk memberikan spesifikasi pengamanan di setiap directory. Pembahasan mengenai file /htaccess yang lebih mendalam akan kami bahas dalam bahasan selanjutnya.
9. Melindungi file .htaccess dari serangan hacker
Karena file .htaccess itu sendiri adalah file yang mengatur level keamanan dari setiap directory, maka kita perlu melindungi file ini dari hacker agar terlindungi. Caranya cukup simple yaitu dengan menambahkan beberapa baris berikut di file .htaccess itu sendiri di root directory :
# STRONG HTACCESS PROTECTION <Files ~ "^.*.([Hh][Tt][Aa])"> order allow,deny deny from all satisfy all </Files>
10. Disable directory Browsing
Directory browsing akan mempermudah hacker dalam menganalisa struktur directory di website kita. cegah hal ini dengan menambahkan 2 baris perintah di file .htaccess sebagai berikut:
# disable directory browsing Options All -Indexes
11. Lindungi file wp-config.php Anda dari serangan hacker
File wp-config.php berisi informasi mengenai database kita. Jika file ini berhasil dilihat oleh hacker, maka website kita diambang kehancuran. Lindungi file ini dengan memberikan hak akses (CHMOD) 400 agar orang lain tidak bisa membaca dan mengeditnya. Tambahkan juga beberapa perintah berikut di file.htaccess di root directory Anda :
# protect wp-config.php <files wp-config.php> Order deny,allow Deny from all </files>
12. Batasi akses ke directory wp-content
Directory wp-content berisi beberapa file penting yang harus Anda amankan. Anda pasti tidak mau pengunjung web Anda mendapatkan hak akses yang tidak Anda inginkan. Sebaiknya data yang ada di directory ini hanya bisa dilihat. Tambahkan beberapa baris perintah berikut di file .htaccess di directory wp-content (buka di root directory):
Order deny,allow Deny from all <Files ~ “.(xml|css|jpeg|png|gif|js)$”> Allow from all </Files>
13. Lindungi folder wp-admin
Directory wp-admin merupakan directory terpenting. Hanya Anda yang berhak masuk ke directory ini. Membatasi IP adalah cara yang paling ampuh untuk membatasi akses ke admin. namun sayang, beberapa server tidak mendukung hal ini dan sering timbul masalah / error “TOO MANY REDIRECT”. Berikut script yang bisa anda tambahkan di file .htaccess di dalam folder wp-admin Anda :
# deny access to wp admin order deny,allow allow from xx.xx.xx.xx # This is your static IP deny from all
14. Cegah Script Injection masuk ke web Anda
Lindungi web/blog wordpress Anda dari serangan SQL Injection dan modifikasi _REQUEST dan/atau GLOBALS . Sisipkan script ini di file .htaccess di root:
# protect from sql injection Options +FollowSymLinks RewriteEngine On RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR] RewriteCond %{QUERY_STRING} GLOBALS(=|[|%[0-9A-Z]{0,2}) [OR] RewriteCond %{QUERY_STRING} _REQUEST(=|[|%[0-9A-Z]{0,2}) RewriteRule ^(.*)$ index.php [F,L]
9 Comments
mas lebh rinci cara melakukan hal di atas gimana? 🙂
Langkah 1 sampai 8 saya kira sudah jelas. Untuk langkah no 9 dan seterusnya, ikuti Langkah-Langkah berikut:
1. Buka halaman Cpanel webhosting Anda
2. Klik Menu Fie Manager
3. Buka Folder dimana wordpress Anda diinstall. Jika di root folder, buka folder public_html
4. Cari dan klik file .htaccess
5. Klik EDIT
6. Copy Paste semua source code yg saya jelaskan kedalam file .htaccess Anda
7. Klik save
halo terima kasih sangat bermanfaat
mau nanya, kok saya ngga nemu file .htaccess ya di public html?
thx
maaf dopost
solved ya sudah ketemu ternyata saya lupa centang di show hidden file 😀 hehe
Pingback: Beberapa Panduan untuk Mencegah Hack di Website – guntur.web.id
Bro, thanx artikelnya, ini artikel tentang wp security paling lengkap yg pernah gw temukan, tp paling bingung juga soalnya gw newbie, wkwkwkwk…
Tolong penjelasan detailnya tentang “ganti table prefix” itu gimana caranya?
Makasih sebelumnya mas kris..
Untuk ganti tabel prefiks ada dua cara..
Cara Pertama yang paling mudah adalah Saat installasi WordPress.. langsung ganti aja pilihan wp_ jadi yang lain. Misal kris_
Cara kedua jika memang sudah terinstal, bisa lakukan hal berikut:
1. Backup database dgn Softaculous
2. Download backup Database tsb ke PC
3. Extract dan edit dgn Notepad atau Sublime text
4. Gunakan perintah FIND AND REPLACE untuk mengganti wp_ menjadi kata lainnya
5. Save
6. Masuk ke phpmyadmin, klik database untuk web wordpress
7. Hapus semua tabel (Sebelumnya kita sudah backup dgn Softaculous)
8. Import tabel
Jika ada masalah karena ada salah langkah, tinggal restore database dgn softaculous
Untuk yang nomor 12 (12. Batasi akses ke directory wp-content) saya coba buat di folder wp-content, akan tetapi setelah saya simpan, css di website jadi tidak bisa di akses. Kenapa ya?
Terima kasih
ternyata caranya banyak banget ya, dan juga celahnya h*cker jg banyak