Karena mungkin ada beberapa peretasan independen yang terjadi, meskipun Anda dapat menemukan dan memperbaiki satu kerentanan, sebaiknya terus telusuri kerentanan lainnya. Mulai penyelidikan Anda dengan membaca tentang metode yang paling sering digunakan pengirim spam untuk meretas situs.
Anda akan memerlukan hal berikut:
- Akses administrator terminal atau shell ke server situs Anda: web, database, dan file
- Mengetahui perintah shell atau terminal
- Pemahaman tentang kode (seperti PHP atau JavaScript)
- Kemampuan untuk menjalankan dua pemindai antivirus
Tindakan berikutnya
Kami akan membahas beberapa cara umum situs dapat diretas. Semoga salah satunya akan berlaku untuk situs Anda, atau setidaknya menjelaskan kemungkinan tambahan.
Perlu diketahui bahwa pemindai kerentanan berbeda dengan pemindai antivirus. Pemindai kerentanan dapat jauh lebih invasif dan memiliki potensi lebih besar untuk menyebabkan kerusakan yang tidak diinginkan pada situs Anda. Ikuti semua petunjuk, seperti mencadangkan situs, sebelum menjalankan pemindai.
Potensi kerentanan {Potential-vulnerabilities}
Kerentanan potensial yang harus diselidiki meliputi hal-hal berikut:
Komputer administrator yang terinfeksi virus
Pada komputer administrator yang terinfeksi virus, peretas mungkin memasang spyware untuk merekam penekanan tombol admin situs.
- Periksa virus di sistem administrator. Sebaiknya jalankan
beberapa pemindai antivirus (AV) tepercaya di setiap komputer yang digunakan administrator
untuk login ke situs. Karena infeksi malware baru terus-menerus dirancang untuk menghindari pemindai, ini bukan metode deteksi virus yang sangat mudah. Menjalankan beberapa pemindai membantu menghindari positif palsu (PP) dan menyediakan
lebih banyak titik data untuk menentukan apakah ada kerentanan atau tidak. Pertimbangkan juga untuk memindai server web dan semua perangkat yang digunakan untuk mengupdate atau memposting ke situs, demi keamanan.
- Jika pemindai AV mendeteksi spyware, virus, trojan horse, atau program mencurigakan lainnya, selidiki log server situs untuk memeriksa aktivitas oleh administrator yang memiliki komputer yang terinfeksi.
- Peretas mungkin telah mengubah file log. Jika belum, menghubungkan nama pengguna administrator dengan perintah mencurigakan di file log merupakan bukti lebih lanjut bahwa virus di sistem administrator membuat situs menjadi rentan.
Sandi lemah atau sudah pernah digunakan
Sandi yang lemah mudah ditemukan oleh peretas, karena memberi mereka akses langsung ke server Anda. Sandi yang kuat memiliki kombinasi huruf dan angka, tanda baca, dan bukan kata atau bahasa gaul yang mungkin ditemukan di kamus. Sandi hanya boleh digunakan untuk satu aplikasi, tidak digunakan kembali di seluruh web. Ketika sandi digunakan ulang, peretas hanya perlu satu kali pelanggaran keamanan pada satu aplikasi untuk menemukan info login dan sandi yang dapat digunakan di tempat lain.
Di log server, periksa aktivitas yang tidak diinginkan, seperti beberapa upaya login untuk administrator atau administrator yang membuat perintah yang tidak terduga. Catat saat aktivitas yang mencurigakan terjadi, karena memahami kapan peretasan pertama kali terjadi akan membantu menentukan pencadangan mana yang mungkin masih bersih.
Perangkat lunak usang
Periksa apakah server Anda telah menginstal versi terbaru sistem operasi, sistem pengelolaan konten, platform blogging, aplikasi, plugin, dan software lain yang digunakan situs tersebut.
- Selidiki semua software yang terinstal (mungkin melalui penelusuran web) untuk menentukan apakah versi Anda berisi saran keamanan. Jika ya, mungkin perangkat lunak usang itu membuat situs Anda menjadi rentan.
- Sebagai praktik terbaik, selalu perbarui perangkat lunak server Anda, terlepas dari apakah perangkat lunak usang menyebabkan masalah kerentanan khusus ini atau tidak.
4. Praktik pengkodean yang diizinkan, seperti pengalihan terbuka dan injeksi SQL
Pengalihan terbuka
Pengalihan terbuka dikodekan dengan maksud agar struktur URL memungkinkan penambahan URL lain sehingga pengguna dapat menjangkau file atau halaman yang berguna di situs. Contoh:
http://example.com/page.php?url=http://example.com/good-file.pdf
atau
http://example.com/page.php?url=malware-attack-site>
- Jika situs Anda disalahgunakan oleh pengalihan terbuka, Anda mungkin mendapati bahwa pesan di Search Console memberikan contoh URL yang menyertakan pengalihan terbuka ke tujuan yang tidak diinginkan.
- Untuk mencegah pengalihan terbuka di masa mendatang, periksa hal berikut:
- Apakah "izinkan pengalihan terbuka" diaktifkan secara default di software Anda.
- Apakah kode Anda dapat melarang pengalihan di luar domain.
- Apakah Anda dapat menandatangani pengalihan sehingga hanya pengalihan dengan URL yang di-hash dengan benar dan tanda tangan kriptografis yang benar yang dapat dilanjutkan.
Injeksi SQL
Injeksi SQL terjadi saat peretas dapat menambahkan perintah tidak bertanggung jawab ke kolom input pengguna yang dijalankan database Anda. Injeksi SQL memperbarui kumpulan data di database dengan konten spam atau malware yang tidak diinginkan, atau membuang data berharga sebagai output untuk peretas. Jika situs Anda menggunakan database, terutama jika Anda diinfeksi malware, situs tersebut mungkin disusupi oleh injeksi SQL.
- Login ke server database dan cari konten yang mencurigakan di database, seperti kolom teks biasa yang kini menampilkan iframe atau skrip.
- Untuk nilai yang mencurigakan, pastikan input pengguna divalidasi dan di-escape dengan benar, atau mungkin diketik dengan ketat sehingga tidak dapat dieksekusi sebagai kode. Jika input pengguna tidak diperiksa sebelum pemrosesan database, injeksi SQL dapat menjadi akar penyebab kerentanan di situs Anda.