Dalam artikel ini, kami akan membahas jenis-jenis peretasan WordPress yang paling umum, cara mengidentifikasinya, dan berbagai metode untuk memperbaikinya. Jika Anda mengalami masalah seperti ini, kami sangat menyarankan untuk menghubungi pengembang web profesional untuk bantuan lebih lanjut. Untuk panduan tambahan tentang meningkatkan keamanan akun hosting Anda, silakan lihat panduan ini.
PENTING: Sebelum melakukan perubahan apa pun, buatlah cadangan penuh situs web Anda.
HARAP DICATAT: Untuk mengurangi risiko peretasan WordPress di masa depan, secara rutin pindai akun hosting Anda dengan alat antivirus, hapus file berbahaya atau mencurigakan, dan pastikan semua plugin serta tema situs web Anda selalu diperbarui ke versi terbaru.
Meskipun beberapa masalah berbeda dapat menyebabkan file default hilang atau berubah, penyebab paling umum adalah malware yang disuntikkan ke instalasi WordPress Anda. Untungnya, alat antivirus di server Web dan Hosting kami dapat secara otomatis mendeteksi dan mengarantina file yang terinfeksi.
Jika file inti WordPress Anda terinfeksi, Anda mungkin mengalami gejala seperti:
Halaman kosong;
500 Internal Server Error;
Sebuah “Situs ini mengalami masalah teknis” (diperkenalkan di WordPress 5.2.2);
Atau kesalahan serupa lainnya.
Untuk memperbaiki masalah ini, cukup ikuti langkah-langkah di bawah ini.
Untuk mengidentifikasi penyebab masalah di situs Anda, tinjau file error_log. File ini mencatat setiap kesalahan kritis yang dialami situs web Anda.
Anda dapat menemukannya di akun cPanel Anda > menu “File Manager” > direktori root instalasi WordPress Anda.
Setelah Anda mengakses folder root domain, cari file error_log. Jika ada, ikuti langkah-langkah berikut:
Klik kanan file tersebut, lalu pilih View:

Di dalam log, Anda mungkin melihat kesalahan seperti: “No such file or directory in…”, diikuti dengan jalur file yang hilang. Ini menunjukkan bahwa file yang diperlukan tidak ada dan mencegah situs web berjalan dengan benar.
Sebagai contoh:/home/cPuser/public_html/wp-settings.php

Untuk memulihkan file yang hilang, gulir ke bagian "Cara mengganti file yang hilang" pada panduan ini.
Jika file error_log tidak tersedia di direktori root situs web Anda, Anda dapat mengaktifkan opsi PHP display_errors di akun cPanel Anda. Pengaturan ini memungkinkan pesan kesalahan muncul langsung di situs web Anda, sehingga lebih mudah mengidentifikasi masalah.
Penting: Demi alasan keamanan, pastikan untuk menonaktifkan display_errors setelah selesai melakukan pemecahan masalah.
Anda dapat mengaktifkan opsi PHP dengan cara berikut:
Melalui php.ini
Selain melalui menu “PHP Tweaks” di cPanel, Anda juga dapat menyesuaikan pengaturan tertentu untuk situs web secara langsung melalui file php.ini dengan menambahkan/mengedit baris yang sesuai di sana.
Untuk mengaktifkan opsi display_errors, Anda perlu menambahkan baris berikut ke file: display_errors=1
Anda dapat membuat file php.ini baru di folder root situs web dan menambahkan baris tersebut di sana atau mengubah file yang dihasilkan sistem dengan mengikuti langkah-langkah di bawah ini.
Masuk ke akun cPanel Anda dan buka menu “File Manager”.
Pastikan opsi “Show Hidden Files (dotfiles)” diaktifkan di pengaturan:

Arahkan ke direktori berikut: /home/cPanel_user/.system-php/ini

Pilih versi PHP yang ditetapkan untuk domain Anda lalu pilih direktori domain. Misalnya, jalur lengkapnya dapat terlihat seperti:
/home/cPanel_user/.system-php/ini/7.0/testwebsite.com
Klik kanan file php.ini dan pilih Edit.
Tambahkan baris berikut ke file: display_errors=1
Melalui .htaccess
Untuk mengaktifkan opsi PHP display_errors melalui file .htaccess, Anda perlu mengedit file di direktori root situs web di “File Manager”, dan menambahkan baris berikut di sana:php_value display_errors 1
Langkah-langkah detail untuk menemukan file .htaccess dapat ditemukan di artikel ini.
Setelah melakukan perubahan, klik Save.
WordPress menggunakan struktur file yang sederhana dan terorganisir, sehingga memulihkan file yang hilang atau rusak relatif mudah. Mengganti file inti default sangat disarankan, karena memastikan file yang terinfeksi malware benar-benar dipulihkan. Namun, lakukan dengan hati-hati: mengganti file atau folder tertentu dapat menyebabkan kehilangan data jika tidak dilakukan dengan benar.
Ikuti langkah-langkah di bawah ini untuk mengganti file WordPress yang hilang:
Masuk ke cPanel Anda dan buka Softaculous Apps Installer.
Buat instalasi WordPress baru di subdirektori sementara. Untuk melakukannya, klik ikon WordPress lalu pilih Install:

Anda akan diarahkan ke halaman pengaturan instalasi. Di sana, pilih nama domain yang dimaksud dari menu dropdown, dan masukkan nama subfolder di kolom In Directory.
Dalam contoh ini, kami menggunakan subfolder ” fix” untuk instalasi WordPress:

CATATAN: Mengganti semua file default akan memperbarui instalasi Anda ke versi yang digunakan pada instalasi “fix” sementara, dan mencampur file dari versi berbeda dapat menyebabkan konflik sistem dan merusak fungsi situs.
Jika Anda ingin mempertahankan versi WordPress saat ini, atau hanya ingin mengganti file tertentu, periksa versi situs Anda di dalam file /wp-includes/version.php , dan pastikan instalasi baru menggunakan versi yang sama:

Anda dapat memilih versi WordPress untuk instalasi baru langsung di jendela instalasi:

Setelah semua pengaturan dikonfigurasi, klik Quick Install atau gulir ke bagian bawah halaman instalasi dan klik Install.
Setelah instalasi WordPress baru selesai, file-filenya akan muncul di “File Manager” > direktori root domain Anda. Buka folder tersebut dengan mengklik dua kali:

Untuk mengganti file tertentu yang hilang (misal, wp-settings.php), temukan file tersebut di direktori instalasi baru.
Setelah itu, pindahkan file ke direktori root situs web Anda saat ini dengan klik kanan pada file > klik Move > masukkan jalur ke folder root situs Anda > klik Move file(s):

Setelah selesai, file yang hilang telah dipulihkan dan situs web Anda seharusnya sudah dapat dimuat dengan baik.
Dalam proses mengganti semua file default WordPress untuk sebuah situs web, langkah 1-6 sama seperti pada bagian “Cara mengganti file WordPress yang hilang”.
Setelah langkah-langkah ini selesai dan instalasi WordPress baru dibuat, untuk mengganti semua file default di folder root situs web Anda, silakan ikuti langkah-langkah berikut:
Buka folder root instalasi WordPress baru:

Di dalam folder instalasi baru, hapus file dan folder berikut:

.htaccess
wp-config.php
wp-content
File dan folder ini berisi konfigurasi dan konten situs Anda, dan harus tetap tidak berubah.
Kemudian, pindahkan file yang tersisa ke direktori root situs utama Anda. Untuk ini, gunakan tombol Select All > klik Move > masukkan jalur ke folder root situs Anda > klik Move file(s):

File inti WordPress Anda telah sepenuhnya diganti. Kunjungi situs web Anda untuk memastikan semuanya dimuat dengan benar.
Jika situs masih menampilkan kesalahan, periksa kembali error_log. Dalam banyak kasus, masalah tambahan disebabkan oleh file tema atau plugin yang hilang.
File tema atau plugin yang hilang dapat terjadi karena beberapa alasan, tetapi penyebab paling umum adalah malware yang menginfeksi dan menghapus komponen penting dari instalasi WordPress Anda.
Jika ada file plugin atau tema WordPress Anda yang hilang, Anda mungkin mengalami:
Halaman kosong;
500 Internal Server Error;
Sebuah “Situs ini mengalami masalah teknis” (diperkenalkan di WordPress 5.2.2);
Halaman yang hanya termuat sebagian atau tampak “rusak”.
Untuk bantuan mendiagnosis masalah, lihat bagian berikut dari artikel ini: Periksa file error_log situs web Anda dan Aktifkan opsi PHP display_errors.
Anda mungkin melihat pesan kesalahan seperti berikut di error_log atau langsung di situs web:
PHP Fatal error: Uncaught Error: Call to undefined function sample_function() in /home/cPaneluser/...
Berikut adalah contoh kesalahan yang disebabkan oleh file plugin yang rusak atau hilang:

Untuk memulihkan file yang hilang, cukup instal ulang tema atau plugin yang terdampak.
CATATAN: File functions.php yang hilang pada tema sering kali terkait dengan malware wp-vcd.php, biasanya terletak di direktori /wp-includes. Sebelum menginstal tema baru, hapus wp-vcd.php jika ada, atau jika ingin benar-benar aman, ganti semua file default WordPress seperti dijelaskan sebelumnya.
Dalam beberapa kasus, ketika situs web Anda terinfeksi malware, situs tersebut dapat mulai mengarahkan pengunjung ke halaman yang berbahaya atau mencurigakan. Masalah ini paling sering disebabkan oleh plugin atau tema yang tidak aman, yang memungkinkan penyerang mengubah URL database atau memodifikasi file situs web Anda.
CATATAN: Jangan pernah mengklik tautan redirect apa pun. Melakukannya dapat menginfeksi komputer pribadi Anda dengan malware:

Untuk memperbaiki redirect berbahaya, ikuti langkah-langkah di bawah ini:
Temukan file konfigurasi database untuk situs web Anda - wp-config.php di cPanel Anda > File Manager > folder root situs web. Buka file tersebut dan temukan nama database situs web Anda di sana:

Kemudian, buka database yang ditetapkan untuk situs web Anda di menu phpMyAdmin di cPanel Anda dengan mengkliknya, lalu arahkan ke tabel wp_options (“wp_” adalah prefix default; milik Anda mungkin berbeda):

Tinjau nilai pada kolom siteurl dan home , dan jika Anda melihat URL berbahaya atau mencurigakan di sana, ganti dengan nama domain Anda yang sebenarnya:

Pindai seluruh database Anda untuk URL berbahaya serupa dan ganti sesuai kebutuhan.
Untuk sementara, ganti .htaccess Anda saat ini dengan versi default yang bersih. Sebaiknya ganti nama file yang ada (misal, .htaccess_old) dan buat file baru dari awal.
Untuk mengganti nama file, klik dua kali > pilih Rename dari daftar > masukkan nama file baru > dan tekan Rename file.
Setelah itu, untuk membuat file baru, klik + File > beri nama .htaccess > dan pilih Create New File.
Setelah file .htaccess baru dibuat, edit dengan klik kanan > pilih Edit dari daftar. Setelah jendela edit terbuka, tempel aturan default WordPress berikut ke dalam file:# BEGIN WordPressRewriteEngine OnRewriteBase /RewriteRule ^index\.php$ - [L]RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule . /index.php [L]# END WordPress
Klik Save Changes.
Jika situs web Anda masih melakukan redirect, coba ganti semua file inti WordPress default.
Anda juga dapat menonaktifkan semua plugin sementara melalui dashboard WordPress atau database, lalu coba aktifkan satu per satu. Setelah setiap plugin diaktifkan, periksa situs web untuk mendeteksi plugin mana yang menyebabkan masalah redirect berbahaya.