31 December 2004

Menangani Masalah Spammer

Posted under: at 00:30

Seperti tidak mau peduli terhadap bencana alam yang terjadi, para spammer tetap melakukan aksi kriminalnya. Dalam satu hari kini paling tidak ada 50 komentar spam yang bersarang di blog ini :(. Jumlah yang terlalu banyak untuk saya tangani. Hal-hal yang telah saya lakukan untuk menjerat spam selama ini cukup sederhana:

  • Memasukkan hostname dari URL yang dispamkan serta beberapa kata kunci umum ke dalam daftar kata-kata yang dilarang. Hasilnya cukup memuaskan, tetapi belakangan terlalu banyak false positive yang saya temukan
  • Mengubah nama dari halaman post komentar, dari wp-comments-post.php menjadi wp-comments-postxyz.php, hal ini berhasil mereduksi spam menjadi satu dua buah dalam satu hari, namun tentunya trik sederhana ini tidak dapat berlangsung lama

Hal terakhir yang saya lakukan adalah dengan memasang plugin Mookitty Spaminator. Plugin ini cukup berhasil menjaring spam. Dalam satu hari, kini rata-rata spam yang bersarang di blog ini cuma 2-3 buah, itu pun terjaring oleh keyword filter sehingga masuk ke dalam antrian moderasi.

Yang saya takutkan adalah kondisi ini tidak akan berlangsung lama. Para spammer sepertinya cukup pintar untuk mengatasi trik-trik anti spam yang dilakukan oleh komunitas blogging. Mungkin suatu saat saya harus merelakan idealisme saya menentang Captcha. Bahkan Captcha pun dapat ditaklukan dengan mudah. Sehingga, Captcha pun hanyalah merupakan solusi sementara.

Hal lain yang saya perhatikan adalah bahwa para spammer tidak saja menargetkan blog, tetapi sepertinya sudah sangat generik, setiap form HTML yang mengandung field textarea juga ikut dihajar. Misalnya sistem komentar terbuka pada situs KDE Look dan KDE Apps juga ikut diserang para spammer. Rekan-rekan saya juga ada yang mengeluhkan spam yang dikirim melalui feedback form pada situs mereka. Selain itu, seperti biasa, situs Wiki juga menjadi langganan tetap para spammer ini.

Penyebab dari permasalahan ini adalah algoritma Pagerank yang digunakan oleh Google. Google akan menilai lebih tinggi halaman yang ditautkan oleh lebih banyak halaman lainnya. Para pemilik situs web yang tidak mau bersusah payah memopulerkan situs mereka kemudian melakukan hal-hal yang tidak terpuji seperti membuat link dari situs orang lain menurut situsnya sendiri. Lama kelamaan, hal ini dibuat otomatis sehingga terjadilah fenomena spam pada blog yang kita hadapi ini.

Bagaimana cara menanggulangi spam ini? Menurut saya, kita harus mempelajari apa saja yang dilakukan oleh komunitas email dalam menanggulangi spam. Langkah pertama yang mereka lakukan adalah dengan menutup open relay. Hal ini tidak relevan dalam dunia web dan blog, oleh karena itu kita maju ke langkah kedua, yaitu DNSBL. Dalam dunia blog, DNSBL dapat diterapkan kira-kira sebagai berikut:

  • Penyedia layanan DNSBL mempersiapkan sebuah sistem DNS di bawah hirarki, misalkan saja bl.example.net
  • Situs blog, wiki, atau situs lain yang menerima komentar terbuka menambah rutin pengecekan sebelum sebuah komentar diterima. Rutin ini melakukan pengecekan terhadap bagian hostname dari setiap URL yang diterima dalam komentar. Misalnya URL yang ditemukan adalah example.com. Kemudian program akan mengecek hostname tersebut ke DNSBL dengan cara membuat query DNS ke alamat example.com.bl.example.net.
  • Jika query tersebut menghasilkan sebuah A record, maka situs tersebut adalah situs spammer. Informasi lebih lanjut kemudian dapat dilihat pada TXT record yang bersangkutan
  • Jika query tersebut tidak menghasilkan A record, maka situs tersebut bukan situs spammer.
  • Harus ada mekanisme untuk melaporkan hostname baru sebagai spammer pada CMS (content management system) populer, seperti blog dan wiki. Hal ini dilakukan untuk mempermudah administrasi (contoh kebijaksanaan: hostname yang dilaporkan lebih dari 50 kali otomatis dimasukkan ke database spammer), dan menyederhanakan proses pelaporan.
  • Tentunya otomatisasi pada point sebelumnya dapat dengan mudah disalahgunakan oleh pihak-pihak yang tidak bertanggung jawab. Untuk mengatasinya dapat diterapkan algoritma kepercayaan seperti yang dilakukan oleh Advogato.

Selain itu, Google juga dapat memanfaatkan database ini untuk ‘menghukum’ situs-situs spammer yang mencoba untuk melakukan tindakan-tindakan tidak terpuji tersebut.

13 Responses

Trackback: Use this URI to trackback this entry. Use your web browser's function to copy it to your blog posting.

Comment RSS: You can track conversation in this page by using this page's Comments RSS (XML)

Gravatar: You can have a picture next to each of your comments by getting a Gravatar.

Leave a Comment

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Warning: Comments carrying links to questionable sites will be removed!