Ada sesuatu yang tidak saya dapatkan, salah satu aplikasi web saya memiliki formulir kecil yang memungkinkan Anda memasukkan nama dan alamat email Anda untuk "berlangganan" ke daftar pengguna untuk situs yang saya kelola. Situs ini memiliki lalu lintas yang sangat rendah, dan hanya berguna untuk sejumlah kecil orang yang tinggal di kota yang sangat kecil..itu tidak akan menarik bagi orang lain.
Namun, setiap hari, terkadang berkali-kali per hari, seseorang (atau bot) memasukkan nama fiktif dan mungkin alamat email palsu ke dalam formulir.
Formulir ini bahkan tidak aktif lagi di situs saya, kebetulan masih ada sebagai halaman yatim di direktori IIS saya (yang memberi tahu saya bahwa seseorang sedang mencari jenis formulir ini melalui Google, karena tidak ada jalur ke formulir ini jika Anda masuk melalui halaman default.
Ini bukan masalah besar bagi saya, saya bisa menyelesaikan masalah dengan captcha, tetapi apa yang saya tidak mengerti adalah untuk tujuan apa seseorang menyiapkan bot untuk berulang kali mengisi formulir? Saya pikir pasti ada alasan, tetapi untuk kehidupan saya tidak tahu mengapa?
Apa yang saya lewatkan?
Jawaban:
Ini adalah bot yang mencoba mengirim spam kepada Anda, atau lebih buruk, mencoba mengeksploitasi formulir kontak Anda untuk mengirim spam ke orang lain.
Misalnya, ada beberapa eksploit terkenal untuk
mail()
perintah PHP yang biasa digunakan oleh formulir kontak yang dapat menyebabkan alamat TO yang Anda masukkan dalam kode Anda ditimpa oleh data POSTed, jika Anda tidak berhati-hati dalam menangani data yang masuk dari formulir Anda.Beberapa cara untuk mencegah ini:
Gunakan captcha. Untuk situs dengan lalu lintas rendah, bahkan captcha statis (gambar yang hanya memiliki teks yang sama setiap kali) akan bekerja dengan sangat baik.
Periksa HTTP
referrer
untuk memastikan POST berasal dari formulir kontak Anda. Banyak bot akan menipu ini, jadi ini tidak terlalu berguna.Gunakan bidang formulir tersembunyi untuk mencoba mengelabui bot. Misalnya, buat bidang yang disebut
phone_number
pada formulir Anda, dan sembunyikan dengan CSS di stylesheet Anda (tampilan: tidak ada). Bot biasanya akan mengisi bidang itu (biasanya mengisi semua bidang untuk menghindari kemungkinan kesalahan validasi bidang yang diperlukan) tetapi pengguna tidak akan melakukannya, karena disembunyikan. Jadi pada POST Anda memeriksa nilai di bidang itu dan SILENTLY gagal mengirim pesan jika ada nilai di dalamnya. Saya menemukan bahwa metode ini saja sangat efektif.sumber
Bot ini secara membabi buta mencoba setiap bentuk yang mereka temukan untuk mengirim email spam. Beberapa dari mereka mungkin memiliki data historis formulir dan bahkan jika itu saat ini tidak terdaftar di mesin pencari, bot ini dapat memposting data ke URL itu.
Katakanlah situs web berisi formulir HTML untuk mengirim rekomendasi kepada seorang teman, biasanya "Tell a fried" atau "Send greeting card", yang tidak dilindungi oleh gambar CAPTCHA, misalnya. Bot dapat menggunakan formulir untuk mengirim ribuan email spam menggunakan server SMTP Anda.
Jika bot berasal dari alamat IP yang sama, Anda bisa memblokir alamat itu di IIS atau di firewall Anda.
sumber
address
ataurecipient
. Ubah ini menjadi sesuatu yang sedikit lebih tidak jelas, dan Anda cenderung tidak akan mendapatkan spam.Jika mereka entah bagaimana bisa masuk ke server Anda dan menanamkan perangkat lunak di atasnya tanpa Anda sadari, itu satu spambot tambahan untuk mereka.
Mendaftar adalah selangkah lebih dekat untuk dapat mengambil alih server, karena Anda dapat melihat sedikit lebih banyak file di server.
Plus, jika formulir tidak dilindungi terhadap XSS dan taktik lain semacam itu, peretasan bahkan lebih mudah.
sumber
Mereka biasanya mencoba memalsukan perintah HTML / PHP / ASP khusus ketika mereka menekan kirim, digunakan sebagai pintu belakang untuk trojan dll.
sumber
Spam komentar adalah salah satu alasannya. Mereka berusaha untuk menambahkan banyak tautan dalam komentar blog, misalnya, dalam upaya untuk meningkatkan peringkat halaman mereka.
sumber
Beberapa dari mereka sepertinya hanya mengisi formulir apa saja yang mereka lihat dengan tautan ke situs porno dengan harapan bahwa di suatu tempat, entah bagaimana tautan dalam formulir itu akan muncul di situs Anda dan diambil oleh google.
Saya sudah banyak beruntung memblokir bot dengan beberapa aturan mod_Security kustom.
sumber