Membersihkan dan memelihara situs Anda

Untuk menjaga agar situs tetap bersih dan mencegah peretasan di masa mendatang, Anda memerlukan hal berikut:

  • Akses administrator terminal atau shell ke server situs Anda: web, database, file
  • Mengetahui perintah shell atau terminal
  • Pemahaman tentang kode (seperti PHP atau JavaScript)
  • Penyimpanan untuk membuat cadangan situs Anda, termasuk file, database, dan gambar

Tindakan berikutnya

Kami akan membahas beberapa tindakan pada langkah ini:

  • Tempat menemukan resource tambahan jika Anda yakin peretas bermaksud memperoleh informasi pribadi pengguna (seperti dengan halaman phishing).
  • Opsi untuk menggunakan Hapus URL di Search Console guna mempercepat penghapusan URL yang benar-benar baru, tidak diinginkan, dan dapat dilihat pengguna yang dibuat oleh peretas yang tidak Anda inginkan untuk muncul di hasil Google Penelusuran.
  • Opsi Minta Google untuk meng-crawl ulang URL Anda di Search Console guna mempercepat pemrosesan halaman bersih oleh Google -- yang berarti halaman baru atau baru diperbarui -- yang ingin Anda muncul di hasil Google Penelusuran.
  • Penginstalan software versi terbaru yang paling aman.
  • Penghapusan aplikasi atau plugin yang tidak perlu atau tidak terpakai yang dapat membuat situs Anda lebih rentan di masa mendatang.
  • Memulihkan konten yang bagus dan menghapus konten peretas.
  • Memperbaiki akar penyebab kerentanan yang dieksploitasi oleh peretas.
  • Mengubah semua sandi.
  • Berencana untuk menjaga keamanan situs.

1. Menemukan referensi dukungan

Jika informasi rahasia pengguna diperoleh dari situs Anda (misalnya, karena merupakan bagian dari serangan phishing), sebaiknya pertimbangkan tanggung jawab bisnis, peraturan, atau hukum apa pun sebelum mulai membersihkan situs atau menghapus file. Pada kasus phishing, antiphishing.org memiliki resource yang berguna seperti dokumennya Yang harus dilakukan jika situs Anda diretas oleh phisher.

2. Pertimbangkan untuk mempercepat penghapusan URL baru yang dibuat peretas

Jika peretas membuat URL dapat dilihat pengguna dan benar-benar baru, Anda dapat menghapus halaman lebih cepat dari hasil Google Penelusuran menggunakan fitur Hapus URL di Search Console. Langkah ini opsional. Jika Anda hanya menghapus halaman lalu mengonfigurasi server untuk menampilkan kode status 404, halaman secara alami akan keluar dari indeks Google seiring waktu.

  • Keputusan menggunakan Penghapusan URL mungkin bergantung pada jumlah halaman baru yang tidak diinginkan yang dibuat (terlalu banyak halaman dapat menjadi masalah untuk disertakan dalam Hapus URL), serta potensi kerusakan yang dapat ditimbulkan oleh halaman ini bagi pengguna. Agar halaman yang dikirim melalui Penghapusan URL tidak pernah muncul di hasil penelusuran, pastikan halaman juga dikonfigurasi untuk menampilkan respons 404 File not Found untuk URL yang tidak diinginkan dan dihapus.
  • Jangan gunakan alat ini untuk meminta penghapusan halaman yang sebelumnya bagus dan hanya dirusak oleh peretas. Anda ingin halaman ini muncul di hasil pencarian setelah dibersihkan. Penghapusan URL hanya untuk halaman yang tidak ingin Anda munculkan di hasil penelusuran.

3. Pertimbangkan untuk meminta Google mempercepat proses halaman bersih Anda

Jika memiliki halaman bersih yang baru atau yang diperbarui, Anda dapat Meminta Google untuk meng-crawl ulang URL Anda di Search Console untuk mengirimkan halaman tersebut ke indeks Google. Tindakan ini bersifat opsional. Jika Anda melewati langkah ini, halaman baru atau yang diubah kemungkinan akan di-crawl dan diproses seiring waktu.

4. Mulai bersihkan server Anda

Sekarang saatnya mulai membersihkan situs berdasarkan catatan yang Anda buat selama Mengevaluasi kerusakan dan Mengidentifikasi kerentanan. Jalur yang akan Anda ambil pada langkah ini bergantung pada jenis cadangan yang Anda miliki:

  • Backup bersih dan terkini
  • Backup bersih tapi usang
  • Tidak ada backup

Pertama-tama, periksa apakah cadangan Anda dibuat sebelum situs Anda diretas.

Backup bersih dan terkini

  1. Pulihkan backup Anda.
  2. Instal semua upgrade, update, atau patch software apa pun yang tersedia. Termasuk software untuk OS jika Anda mengontrol server, dan semua aplikasi, seperti sistem pengelolaan konten, platform e-commerce, plugin, atau template.
  3. Pertimbangkan untuk menghapus software yang tidak lagi digunakan situs dari server (seperti widget, plugin, atau aplikasi) .
  4. Perbaiki kerentanan.
  5. Pastikan semua masalah yang ditemukan selama Mengevaluasi kerusakan ditangani.
  6. Ubah sandi sekali lagi untuk semua akun yang berhubungan dengan situs (misalnya, login untuk akses FTP, akses database, administrator sistem, dan akun CMS). Pada sistem berbasis Unix:
passwd admin1

Backup bersih tapi usang

  1. Buat gambar disk situs Anda saat ini meskipun situs itu masih terinfeksi. Salinan ini dibuat hanya demi keamanan. Tandai salinan sebagai terinfeksi untuk membedakannya dari yang lain. Pada sistem berbasis Unix, pembuatan gambar disk bisa jadi:
dd if=/dev/sda bs=1024 conv=noerror,sync | gzip -c -9 \
> /mirror/full-backup-20120125-infected.gz
  1. Buat salinan sistem file cadangan server Anda, termasuk file gambar dan media. Jika Anda memiliki database, lakukan backup database itu juga.
tar -pczf full-backup-20120125-infected.tar.gz www/
mysqldump -u root -p --all-databases | gzip -9 \
> fulldb_backup-20120125-infected.sql
  1. Pulihkan salinan bersih tapi usang di server.
  2. Pertimbangkan apakah Anda dapat menghapus software di server (mis., widget, plugin, atau aplikasi) yang tidak digunakan lagi oleh situs.
  3. Upgrade semua software, termasuk OS jika Anda mengontrol server, dan semua aplikasi software, seperti sistem pengelolaan konten, platform e-commerce, plugin, dan template. Pastikan Anda memeriksa dan menginstal update keamanan dan patch yang tersedia.
  4. Perbaiki kerentanan.
  5. Lakukan diff situs secara manual atau otomatis -- antara cadangan bersih dan salinan yang terinfeksi saat ini.
diff -qr www/ backups/full-backup-20120124/
  1. Upload konten baru dan bersih yang ingin Anda lindungi dari salinan yang terinfeksi pada server yang telah diupgrade.
rsync -avz /backups/full-backup-20120124/www/clean-file.jpg /www/
  1. Pastikan setiap URL yang tercantum dari Mengevaluasi kerusakan telah dikoreksi.
  2. Ubah sandi sekali lagi untuk semua akun yang terkait dengan situs (misalnya, login untuk akses FTP, akses database, administrator sistem, dan akun CMS). Pada sistem berbasis Unix:
$passwd admin1

Tidak ada backup

Buat dua cadangan situs Anda meskipun situs itu masih terinfeksi. Memiliki cadangan tambahan akan membantu memulihkan konten yang tidak sengaja dihapus, atau memungkinkan Anda mengembalikan dan mencoba lagi jika terjadi masalah. Labeli tiap backup dengan "terinfeksi" untuk referensi di masa mendatang.

Salah satu backup tersebut adalah gambar disk atau "versi kloning" situs Anda. Format ini membuat pemulihan konten menjadi lebih sederhana. Simpan gambar disk untuk keadaan darurat. Pada sistem berbasis Unix, gunakan kode berikut untuk membuat disk image:

dd if=/dev/sda bs=1024 conv=noerror,sync | gzip -c -9 \
> /mirror/full-backup-20120125-infected.gz

Cadangan lainnya akan menjadi salinan sistem file dari server Anda, termasuk file gambar dan media. Jika Anda memiliki database, cadangkan database juga.

tar -pczf full-backup-20120125-infected.tar.gz www/
mysqldump -u root -p --all-databases | gzip -9 \
> fulldb_backup-20120125-infected.sql

Jika Anda tidak memiliki disk image, buat dua cadangan database dan dua cadangan sistem file.

Untuk membersihkan konten situs pada salinan sistem file cadangan baru (bukan server itu sendiri), lakukan hal berikut:

  1. Jika penyelidikan Anda sebelumnya menemukan izin file yang terlalu longgar, lanjutkan dan perbaiki izin tersebut. Pastikan Anda melakukan hal ini pada salinan cadangan, bukan pada server itu sendiri.
  2. Juga pada salinan cadangan, bersihkan semua file yang terkait dengan URL yang ditemukan sebagai disusupi dari Mengevaluasi kerusakan. Ini dapat berupa file konfigurasi server, JavaScript, HTML, atau PHP.
  3. Pastikan juga untuk menghapus (menayangkan respons 404) file baru yang dibuat oleh peretas, yang mungkin telah atau belum dikirimkan menggunakan alat Penghapusan URL di Search Console.
  4. Perbaiki kerentanan jika ada dalam kode atau sandi Anda yang diretas. Perpustakaan validasi masukan atau audit keamanan mungkin dapat membantu.
  5. Jika situs Anda memiliki database, mulailah membersihkan catatan yang dimodifikasi oleh peretas di cadangan Anda. Sebelum benar-benar selesai, periksa lebih banyak data untuk memastikan database terlihat bersih.
  6. Ubah sandi sekali lagi untuk semua akun yang terkait dengan situs (misalnya, login untuk akses FTP, akses database, administrator sistem, dan akun CMS). Pada sistem berbasis Unix, gunakan kode berikut:
$passwd admin1

Pada tahap ini, salinan cadangan situs Anda yang pernah terinfeksi seharusnya hanya berisi data bersih. Sisihkan salinan yang bersih ini dan lakukan langkah #5.

5. Hapus software yang tidak diperlukan

Pertimbangkan apakah Anda dapat menghapus software di server, seperti widget, plugin, atau aplikasi, yang tidak digunakan lagi oleh situs. Hal ini dapat meningkatkan keamanan dan menyederhanakan pemeliharaan di masa mendatang.

6. Bersihkan semua server

  1. Lakukan penginstalan bersih, bukan hanya upgrade. {i>Upgrade<i} dapat meninggalkan file dari versi sebelumnya. Jika file yang terinfeksi tetap ada di server, situs Anda kemungkinan akan diretas lagi.
    • Penginstalan baru harus mencakup OS jika Anda mengontrol server, dan semua aplikasi software, seperti sistem pengelolaan konten, platform e-commerce, plugin, dan template. Pastikan Anda memeriksa patch dan update keamanan yang tersedia.
  2. Transfer konten yang baik dari salinan sistem file cadangan yang bersih ke server yang baru diinstal. Upload dan pulihkan hanya file bersih atau {i>database<i} yang diketahui. Pastikan Anda mempertahankan izin file yang sesuai dan tidak menimpa file sistem yang baru diinstal.
  3. Ubah sandi untuk terakhir kalinya untuk semua akun yang terkait dengan situs (misalnya, login untuk akses FTP, akses database, administrator sistem, dan akun CMS). Pada sistem berbasis Unix, gunakan kode berikut:
passwd admin1

7. Buat rencana perawatan jangka panjang

Sebaiknya Anda melakukan hal berikut:

  • Buat backup situs Anda secara otomatis dan rutin.
  • Waspada saat terdapat update software.
  • Pahami praktik keamanan semua aplikasi, plugin, dan software pihak ketiga lainnya sebelum menginstalnya di server Anda. Kerentanan keamanan pada satu aplikasi software dapat memengaruhi keamanan seluruh situs Anda.
  • Terus buat sandi yang rumit.
  • Pastikan semua perangkat yang digunakan untuk login ke komputer tetap aman (sistem operasi dan browser yang diupdate).

8. Periksa kembali apakah pembersihan telah selesai

Pastikan Anda dapat menjawab "ya" untuk pertanyaan berikut:

  • Apakah saya sudah mengambil langkah yang tepat jika peretas mendapatkan informasi pribadi pengguna?
  • Apakah situs saya menjalankan software versi terbaru yang paling aman?
  • Apakah saya sudah menghapus semua aplikasi atau plugin yang tidak perlu atau tidak terpakai yang dapat membuat situs saya lebih rentan di masa mendatang?
  • Apakah saya memulihkan konten dan menghapus konten peretas?
  • Apakah saya telah memperbaiki akar penyebab kerentanan yang memungkinkan situs saya diretas?
  • Apakah saya memiliki rencana untuk menjaga agar situs saya tetap aman?

Sekarang Anda dapat membuat situs Anda kembali online.