Banyak pemilik website WordPress panik saat situsnya terkena serangan, padahal ada langkah sistematis untuk hapus malware tanpa merusak data atau menghapus website. Serangan malware dapat menyebabkan situs menampilkan iklan ilegal, redirect ke halaman spam, menurunkan ranking SEO, hingga membuat website diblokir oleh Google. Untungnya, dengan metode yang tepat, malware dapat diidentifikasi, dibersihkan, dan dicegah agar tidak kembali. Tutorial ini akan membahas langkah-langkah lengkap mulai dari deteksi, pembersihan, hingga perlindungan jangka panjang untuk menjaga WordPress Anda tetap aman.
Tanda-Tanda Website WordPress Terinfeksi Malware
Sebelum melakukan pembersihan, Anda harus mengenali ciri-ciri umum website yang terkena malware:
1. Website Mendadak Redirect ke Situs Aneh
Tanda paling umum adalah pengunjung diarahkan ke halaman judi online, pornografi, atau iklan pop-up.
2. Muncul File atau Script Asing
Ketika Anda melihat file seperti wso.php, xyz.php, atau script base64 panjang, itu pertanda besar adanya malware.
3. CPU Server Tinggi Tanpa Alasan
Malware sering menjalankan script berat di background, seperti mining atau spam email.
4. Hosting Mengirim Peringatan Security
Beberapa hosting mendeteksi file berbahaya dan memberi notifikasi.
5. Google Memberi Tanda “This Site May Be Hacked”
Ini tanda bahwa Google mendeteksi perubahan mencurigakan di website Anda.
6. Plugin atau Theme Berubah Sendiri
Jika ada file yang dimodifikasi tanpa Anda update, kemungkinan sudah disusupi.
Langkah-Langkah Menghapus Malware di Website WordPress
Berikut panduan terstruktur untuk memastikan proses pembersihan aman dan menyeluruh.
Backup Terlebih Dahulu (Sangat Penting)
Sebelum melakukan tindakan, lakukan:
-
Backup database
-
Backup wp-content (themes, plugins, uploads)
-
Backup file root (wp-config, .htaccess, index.php)
Backup sangat penting agar jika terjadi kesalahan, Anda bisa restore.
Gunakan plugin seperti:
-
UpdraftPlus
-
All-in-One WP Migration
-
Duplicator
Aktifkan Maintenance Mode
Agar proses pembersihan tidak mengganggu user, aktifkan:
-
Plugin Maintenance
-
Atau buat file
.maintenancemanual
Ini juga mencegah malware aktif berpindah-pindah saat pengunjung membuka website.
Scan Website Menggunakan Plugin Keamanan
Gunakan salah satu plugin berikut:
a. Wordfence Security
Paling populer untuk deteksi malware.
-
Install → Wordfence
-
Jalankan Full Scan
-
Wordfence menampilkan:
-
File mencurigakan
-
File yang diubah
-
File yang tidak dikenal
-
b. Sucuri Security
Lebih fokus pada integrity check dan audit log.
c. iThemes Security
Mendeteksi perubahan file yang berpotensi malware.
Gunakan minimal 1 plugin, maksimal 2 agar tidak bentrok.
Hapus File Berbahaya Secara Manual
Jika scan mendeteksi file sebagai malware, lakukan:
1. Masuk ke File Manager atau FTP
Gunakan:
-
cPanel File Manager
-
FileZilla
-
Cyberduck
2. Identifikasi File Asing
Biasanya malware disisipkan di folder seperti:
-
/wp-content/uploads/ -
/wp-includes/ -
/wp-admin/
3. Hapus File yang Pasti Berbahaya
Misalnya:
-
wso.php -
shell.php -
file dengan kode panjang base64
-
file
.icotapi isinya script
4. Bandingkan File WordPress Core
Unduh WordPress versi yang sama, bandingkan folder:
-
wp-admin -
wp-includes
Jika ada file asing → hapus
Jika ada file modifikasi → ganti dengan original
Jangan hapus folder wp-content karena berisi data penting.
Bersihkan File .htaccess
File .htaccess sering disusupi redirect ilegal seperti:
Redirect 301 / https://site-spam.com Options -Indexes RewriteEngine On RewriteRule ^(.*)$ http://spamsite.com/?id=$1 [L]
Solusi:
-
Hapus isi
.htaccess -
Gantikan dengan default WordPress:
# BEGIN WordPress RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress
Bersihkan Database dari Script Malware
Banyak malware disisipkan dalam database, terutama pada:
-
tabel
wp_posts -
tabel
wp_options -
tabel
wp_usermeta
Cari string:
-
<script>mencurigakan -
base64 panjang
-
link redirect
Langkah pembersihan:
1. Masuk ke phpMyAdmin
-
Pilih database
-
Gunakan fitur Search
2. Cari kata kunci seperti:
-
eval( -
base64_decode -
iframe -
script
3. Hapus script berbahaya secara manual
Pastikan tidak menghapus konten artikel yang valid.
Ganti Password Semua Akun
Setelah malware dibersihkan, lakukan pengamanan:
1. Ganti password:
-
Admin WordPress
-
Akun hosting/cPanel
-
Database MySQL
-
FTP
-
SFTP
2. Nonaktifkan atau hapus akun mencurigakan
Periksa pengguna WordPress. Kadang hacker menambah user baru dengan role administrator.
Update Semua Theme, Plugin, dan WordPress Core
Website biasanya kena malware karena:
-
Plugin tidak pernah diupdate
-
Tema nulled / bajakan
-
WordPress versi lama yang rentan
Lakukan update:
-
WordPress → terbaru
-
Tema → hapus tema tidak dipakai
-
Plugin → hapus plugin yang tidak diperlukan
Jika menggunakan tema nulled, segera hapus dan ganti tema resmi.
Instal Firewall dan Security Protection
Setelah proses hapus malware selesai, cegah agar tidak terulang.
Rekomendasi firewall:
1. Wordfence Firewall
-
Memblokir IP mencurigakan
-
Real-time protection
-
Scan otomatis
2. Sucuri Firewall (Cloud)
Yang paling kuat karena memfilter sebelum mencapai server.
3. iThemes Security
Untuk proteksi brute force dan hardening.
Aktifkan Hardened Security
Lakukan langkah tambahan:
-
Nonaktifkan XML-RPC jika tidak diperlukan
-
Batasi login attempts
-
Aktifkan 2FA
-
Sembunyikan halaman
/wp-login.php -
Nonaktifkan PHP execution di folder uploads
Untuk nonaktifkan PHP di uploads, buat file:
/wp-content/uploads/.htaccess
Isi:
<Files *.php> deny from all </Files>
Scheduling Scan Rutin
Jangan hanya membersihkan sekali. Jadwalkan scan:
-
Harian
-
Mingguan
-
Notifikasi melalui email
Wordfence dan Sucuri mendukung ini.
Kesimpulan
Membersihkan website WordPress yang terinfeksi malware memang terlihat menakutkan, tetapi dengan langkah sistematis, Anda bisa hapus malware dengan aman dan mengembalikan situs ke kondisi normal. Mulailah dari backup, lakukan scan, hapus file berbahaya, bersihkan database, perbarui semua komponen, dan lakukan hardening agar serangan tidak kembali.
Dengan perlindungan firewall, pembatasan login, serta update rutin, website WordPress akan jauh lebih aman dari berbagai ancaman. Panduan ini dapat Anda gunakan kapan saja sebagai prosedur standar jika website terkena infeksi serupa.