Website Kena Hack? Ini Langkah Pemulihan yang Harus Segera Dilakukan
Website yang tiba-tiba tidak bisa diakses, menampilkan halaman asing, atau mengarahkan pengunjung ke situs lain bisa menjadi tanda bahwa website telah diretas. Kondisi ini tentu membuat panik, terutama jika website digunakan untuk menjalankan bisnis, menyimpan data pelanggan, atau menjadi media utama untuk mendapatkan calon konsumen.
Serangan terhadap website bukan hanya dapat merusak tampilan halaman. Dalam beberapa kasus, peretas bisa mencuri informasi, memasang program berbahaya, mengambil alih akun administrator, hingga menggunakan website untuk menyerang pengunjung.
Namun, website yang diretas bukan berarti tidak bisa diselamatkan. Ada sejumlah langkah pemulihan yang dapat dilakukan untuk mengamankan website dan mengembalikannya agar bisa digunakan kembali.
Artikel ini akan membahas langkah-langkah yang perlu segera dilakukan ketika website terkena hack, termasuk cara mengidentifikasi masalah, membersihkan file berbahaya, dan mencegah serangan serupa di kemudian hari.
1. Kenali Tanda-Tanda Website Telah Diretas
Sebelum melakukan pemulihan, penting untuk memastikan bahwa website memang mengalami serangan keamanan. Ada beberapa tanda yang perlu diperhatikan.
Tampilan website berubah tanpa izin
Website tiba-tiba menampilkan gambar, tulisan, atau halaman yang tidak pernah dibuat oleh pemiliknya. Kondisi ini sering disebut defacement, yaitu tindakan mengubah tampilan website tanpa izin.
Website mengarahkan pengunjung ke situs asing
Ketika pengunjung membuka website, mereka justru diarahkan ke halaman lain yang tidak dikenal. Hal ini bisa terjadi karena adanya kode berbahaya yang disisipkan ke dalam website.
Muncul akun administrator yang tidak dikenal
Jika terdapat akun dengan hak akses administrator yang tidak pernah dibuat oleh pemilik website, ada kemungkinan seseorang telah mendapatkan akses tanpa izin.
Website menampilkan peringatan keamanan
Browser atau mesin pencari mungkin menampilkan peringatan bahwa website berbahaya. Ini bisa terjadi karena website terdeteksi menyebarkan malware, melakukan phishing, atau memiliki aktivitas mencurigakan lainnya.
Website menjadi lambat atau sering mengalami error
Website yang tiba-tiba sangat lambat, menggunakan sumber daya server secara tidak wajar, atau sering mengalami error juga perlu diperiksa. Aktivitas berbahaya di belakang layar dapat menjadi salah satu penyebabnya.
2. Segera Amankan Website dan Batasi Akses
Ketika website diketahui telah diretas, jangan langsung melakukan perubahan besar pada file atau database. Langkah pertama adalah membatasi dampak serangan.
Jika memungkinkan, aktifkan mode maintenance atau nonaktifkan sementara website agar pengunjung tidak terkena dampak dari kode berbahaya.
Jika serangan masih berlangsung atau website digunakan untuk menyebarkan malware, mintalah bantuan penyedia hosting untuk mengisolasi website atau akun hosting yang terdampak.
Beberapa tindakan awal yang dapat dilakukan:
-
Batasi akses administrator dan akun yang mencurigakan.
-
Nonaktifkan sementara fitur yang diketahui telah disalahgunakan.
-
Jangan menghapus file mencurigakan secara sembarangan sebelum melakukan pemeriksaan.
-
Jika menggunakan server sendiri, pertimbangkan untuk membatasi akses publik sementara melalui konfigurasi firewall.
-
Hubungi penyedia hosting jika tidak memiliki akses atau kemampuan untuk mengisolasi server.
Perlu diingat, menutup website sementara bukan berarti masalah sudah selesai. Tujuannya adalah mencegah kerusakan lebih lanjut selama proses pemeriksaan dan pemulihan.
3. Buat Backup dan Simpan Bukti Serangan
Meskipun website sedang bermasalah, jangan terburu-buru menghapus semua file yang terlihat mencurigakan.
Sebelum melakukan pembersihan, buat salinan kondisi website saat ini. Backup tersebut dapat digunakan untuk pemeriksaan lebih lanjut dan membantu mengetahui bagaimana serangan terjadi.
Data yang sebaiknya disimpan meliputi:
-
File website secara keseluruhan.
-
Database website.
-
Log aktivitas server dan website.
-
Catatan waktu ketika serangan pertama kali diketahui.
-
Daftar akun administrator yang tersedia.
-
File atau perubahan yang dianggap mencurigakan.
Simpan backup di lokasi terpisah yang tidak dapat diakses langsung dari website yang sedang terinfeksi.
Mengapa hal ini penting? Karena file yang mencurigakan bisa menjadi petunjuk untuk mengetahui sumber serangan. Selain itu, backup kondisi saat ini dapat membantu proses investigasi jika website menyimpan data penting.
Namun, jangan langsung menggunakan backup tersebut untuk mengembalikan website tanpa pemeriksaan. Bisa saja backup sudah mengandung file berbahaya sebelum serangan diketahui.
4. Ganti Semua Password dan Amankan Akun
Salah satu penyebab website diretas adalah penggunaan password yang lemah, password yang bocor, atau akun administrator yang berhasil diambil alih.
Karena itu, segera lakukan penggantian password menggunakan perangkat yang dipastikan bersih dan aman.
Akun yang perlu diperiksa dan diamankan antara lain:
-
Akun administrator website.
-
Akun hosting atau control panel seperti cPanel dan CyberPanel.
-
Akun FTP atau SFTP.
-
Akun database.
-
Akun SSH dan server.
-
Akun email yang digunakan untuk mengelola website.
-
Akun layanan pihak ketiga yang memiliki akses ke website.
Gunakan password yang berbeda untuk setiap layanan. Hindari menggunakan password yang sama untuk akun website, email, dan hosting.
Jika tersedia, aktifkan fitur Two-Factor Authentication (2FA). Fitur ini memberikan lapisan keamanan tambahan karena proses login membutuhkan verifikasi kedua, misalnya melalui aplikasi autentikator.
Selain mengganti password, periksa juga apakah terdapat API key, token akses, atau kredensial lain yang mungkin telah terekspos. Jika ada, lakukan penggantian atau pencabutan akses.
5. Periksa File dan Database yang Terinfeksi
Setelah akses mulai diamankan, langkah selanjutnya adalah memeriksa file website dan database untuk menemukan sumber masalah.
Peretas biasanya menyisipkan kode berbahaya ke dalam file website. Kode tersebut dapat digunakan untuk mengambil informasi, membuat akun tersembunyi, atau memberikan akses kembali kepada peretas.
Beberapa lokasi yang perlu diperiksa:
File inti aplikasi
Jika menggunakan WordPress, periksa file inti WordPress dan pastikan tidak ada perubahan yang tidak seharusnya. Untuk framework seperti Laravel atau Yii2, periksa file aplikasi, konfigurasi, dan direktori yang dapat diakses publik.
File konfigurasi
Periksa file konfigurasi seperti .htaccess, wp-config.php, atau .env. File tersebut dapat dimanfaatkan untuk mengubah perilaku website atau menyimpan informasi penting.
File yang baru dibuat atau dimodifikasi
Periksa file dengan tanggal perubahan yang tidak biasa, terutama file PHP di direktori upload atau folder yang seharusnya hanya digunakan untuk menyimpan gambar dan dokumen.
Database website
Periksa apakah terdapat akun administrator asing, konten yang tidak dikenal, script tambahan, atau perubahan konfigurasi yang mencurigakan.
Jika tidak memiliki kemampuan untuk menganalisis kode, mintalah bantuan developer atau tenaga keamanan website. Jangan menghapus file hanya karena namanya terlihat asing, sebab beberapa file tersebut mungkin merupakan bagian dari aplikasi yang sah.
6. Bersihkan Malware dan Pulihkan Website
Setelah sumber masalah ditemukan, lakukan pembersihan terhadap file atau komponen yang telah disusupi.
Ada dua pendekatan umum yang bisa dilakukan.
Membersihkan website yang sudah ada
Pendekatan ini dilakukan dengan memeriksa dan memperbaiki file yang terinfeksi. File berbahaya dihapus, kode yang telah dimodifikasi dikembalikan ke kondisi aman, dan akun yang tidak dikenal dinonaktifkan.
Cara ini membutuhkan pemeriksaan yang teliti karena tidak semua file berbahaya terlihat jelas.
Memulihkan website dari backup yang bersih
Jika tersedia backup sebelum serangan terjadi, website dapat dipulihkan menggunakan backup tersebut.
Namun, pastikan backup benar-benar berasal dari kondisi yang aman. Sebelum website kembali online, lakukan pembaruan sistem dan pemeriksaan keamanan agar celah yang sama tidak kembali dimanfaatkan.
Jika website menggunakan sistem manajemen konten seperti WordPress, sebaiknya unduh ulang file inti dari sumber resminya. Lakukan hal serupa untuk plugin, tema, dan komponen lainnya.
Untuk website berbasis framework, gunakan source code dari repositori yang terpercaya dan pastikan file hasil deployment tidak mengandung perubahan yang tidak dikenal.
7. Perbarui CMS, Plugin, Tema, dan Komponen Website
Website yang tidak diperbarui dalam waktu lama dapat memiliki celah keamanan yang sudah diketahui oleh banyak pihak.
Peretas sering memanfaatkan kelemahan pada versi aplikasi, plugin, tema, atau library yang sudah usang.
Setelah website berhasil dibersihkan, periksa seluruh komponen yang digunakan.
Beberapa hal yang perlu dilakukan:
-
Perbarui CMS seperti WordPress ke versi stabil terbaru.
-
Perbarui seluruh plugin dan tema.
-
Hapus plugin atau tema yang sudah tidak digunakan.
-
Gunakan komponen dari sumber resmi dan terpercaya.
-
Perbarui versi PHP atau runtime sesuai kebutuhan aplikasi.
-
Perbarui library dan dependency yang memiliki celah keamanan.
-
Periksa kembali konfigurasi server dan hak akses file.
Jangan hanya memperbarui aplikasi utama. Plugin atau komponen tambahan yang terlupakan juga dapat menjadi pintu masuk bagi serangan berikutnya.
8. Periksa Kembali Website Sebelum Online
Setelah proses pembersihan selesai, jangan langsung menganggap website sudah sepenuhnya aman.
Lakukan pengujian terlebih dahulu untuk memastikan website berjalan normal dan tidak lagi menunjukkan aktivitas mencurigakan.
Beberapa pemeriksaan yang dapat dilakukan:
-
Buka halaman utama dan halaman penting lainnya.
-
Coba login menggunakan akun administrator.
-
Pastikan tidak ada akun asing yang masih memiliki akses.
-
Periksa apakah website masih mengarahkan pengunjung ke situs lain.
-
Periksa file dan database untuk memastikan tidak ada kode berbahaya yang tersisa.
-
Periksa log server untuk melihat apakah masih terdapat aktivitas mencurigakan.
-
Pastikan formulir, fitur transaksi, dan fungsi penting lainnya berjalan normal.
Jika website sebelumnya mendapatkan peringatan keamanan dari Google Safe Browsing, periksa status keamanan website dan ikuti proses peninjauan ulang setelah masalah benar-benar diperbaiki.
Jangan meminta peninjauan ulang sebelum website selesai dibersihkan. Jika masih ditemukan masalah, peringatan keamanan bisa tetap muncul.
9. Lakukan Pemantauan Setelah Website Kembali Normal
Website yang sudah berhasil dipulihkan tetap perlu dipantau. Ada kemungkinan peretas masih memiliki akses melalui akun, script, atau celah keamanan yang belum ditemukan.
Lakukan pemantauan secara berkala terhadap:
-
Aktivitas login administrator.
-
Perubahan file website.
-
Pembuatan akun baru.
-
Penggunaan CPU, RAM, dan bandwidth server.
-
Error pada aplikasi dan server.
-
Aktivitas jaringan yang tidak biasa.
-
Perubahan pada database.
Jika memungkinkan, gunakan layanan monitoring keamanan untuk membantu mendeteksi perubahan file dan aktivitas mencurigakan.
Pastikan juga backup dilakukan secara rutin. Simpan beberapa versi backup di lokasi terpisah agar website dapat dipulihkan jika mengalami masalah di kemudian hari.
10. Cegah Website Diretas Kembali
Pemulihan website bukan hanya tentang menghapus file berbahaya. Hal yang tidak kalah penting adalah memperbaiki penyebab serangan agar kejadian serupa tidak terulang.
Berikut beberapa langkah pencegahan yang sebaiknya diterapkan.
Gunakan password yang kuat
Buat password yang panjang, unik, dan berbeda untuk setiap layanan. Gunakan password manager jika kesulitan mengelola banyak password.
Aktifkan Two-Factor Authentication
Tambahkan verifikasi dua langkah pada akun administrator, hosting, email, dan layanan penting lainnya.
Lakukan backup secara rutin
Buat jadwal backup otomatis dan simpan salinannya di lokasi terpisah. Sesekali lakukan pengujian pemulihan untuk memastikan backup benar-benar dapat digunakan.
Perbarui aplikasi secara berkala
Pastikan CMS, plugin, tema, framework, library, dan sistem server selalu mendapatkan pembaruan keamanan.
Batasi hak akses pengguna
Berikan akses sesuai kebutuhan. Jangan memberikan hak administrator kepada pengguna yang hanya membutuhkan akses untuk mengelola konten.
Gunakan SSL/TLS
Pastikan website menggunakan HTTPS untuk mengenkripsi komunikasi antara pengunjung dan server. Namun, perlu dipahami bahwa SSL/TLS bukan pengganti perlindungan terhadap malware atau celah aplikasi.
Gunakan firewall dan sistem keamanan
Firewall aplikasi web (WAF), sistem deteksi malware, serta pembatasan percobaan login dapat membantu mengurangi risiko serangan.
Lakukan pemeriksaan keamanan secara berkala
Jangan menunggu sampai website diretas. Periksa konfigurasi server, hak akses file, aktivitas pengguna, dan komponen aplikasi secara rutin.
Kesimpulan
Website yang diretas memang dapat menimbulkan kerugian, baik dari sisi operasional, reputasi bisnis, maupun keamanan data pelanggan. Namun, kondisi tersebut masih bisa ditangani selama proses pemulihan dilakukan dengan benar.
Hal terpenting adalah segera membatasi dampak serangan, menyimpan backup dan bukti, mengamankan seluruh akun, memeriksa file serta database, kemudian membersihkan dan memulihkan website dari kondisi yang aman.
Setelah website kembali normal, jangan lupa memperbaiki celah keamanan yang menjadi penyebab serangan. Lakukan pembaruan secara berkala, gunakan password yang kuat, aktifkan verifikasi dua langkah, dan pastikan backup tersedia.
Jika website digunakan untuk kebutuhan bisnis atau menyimpan data pelanggan, pertimbangkan untuk meminta bantuan tenaga profesional. Penanganan yang tepat sejak awal dapat membantu mengurangi risiko kerusakan yang lebih besar.
Ingat, website yang sudah kembali online belum tentu sepenuhnya aman. Pastikan sumber serangan telah ditemukan dan diperbaiki sebelum menganggap proses pemulihan selesai.