Bicara soal spam, memang *** membuat kepala jadi sakit. Sudah menggunakan anti spam yang ampuh pun terkadang masih ada spam yang lolos. Minum obat sakit kepala pun tidak mempan (sudah pasti, karena masalahnya ada di server :D).
Ya, memang benar bahwa metode spammer mengirimkan spam semakin kreatif. Salah satu yang membuat pusing adalah Spoofing Sender address spam dimana spam ini menggunakan sender address yang seolah-olah berasal dari domain kita juga. Oleh karena itu, email tersebut dalam kondisi tidak ada filter ataupun filter yang terbatas akan dianggap valid.
Nah, cara efektif untuk menangkal spam seperti ini tidak bisa hanya mengandalkan anti spam yang digunakan. Secara logika, kalau kita pikir dan telusuri lebih lanjut, spam ini memanfaatkan kelemahan authentikasi di level SMTP.
Lihat contoh berikut:
Saya memasukkan sembarang nama email namun menggunakan domain yang sama di lab saya yaitu exch12.ray dan SMTP server menganggap itu valid (250 2.1.0 Sender OK). Disini, berarti apapun nama emailnya dengan domain yang terauthentikasi, maka akan menyebabkan sender dianggap valid, padahal saya mencoba secara yang kita sebut "Anonymous Logon".
OK, celahnya sudah kita ketahui, langkah berikut adalah menelusuri celah tersebut. Exchange 2007 menerapkan transport model yang sudah lebih bagus, sehingga bisa kita pilah permission per authoritynya. Nah, singkatnya kita harus mencegah agar "Anonymous Logon" tidak bisa melakukan sembarang authentikasi disini. Untuk itu, kita lakukan terlebih dahulu cek permission:
Lihat pada Exchange Management Shell diatas, dan perhatikan baik-baik pada Receive Connector. Karena lab saya hanya ujicoba secara local, jadi saya akan melakukan pencegahan pada Receive Connector yang sudah ada. Sedikit catatan, pada production environment, disarankan memisahkan antara Receive Connector yang digunakan untuk email flow dengan internet dan Receive Connector yang digunakan untuk authentikasi SMTP Relay dari aplikasi lain seperti scanner ataupun 3rd party aplikasi lain yang harus SMTP relay melewati Exchange 2007. Mengapa? karena SMTP relay membutuhkan authentikasi pada "Anonymous Logon", sehingga kalau diterapkan pada satu Receive Connector yang sama, dijamin pusingnya akan dikalikan dengan angka 2.
OK, kembali ke permasalahan. Rights atau hak yang diberikan sehingga saya bisa terauthentikasi dengan nama asal-asalan namun domainnya valid adalah ms-exch-smtp-accept-authoritative-domain-sender. Nah, rights inilah yang akan kita buang dari "Anonymous Logon". Setelah kita buang, kita cek apakah masih bisa kita bypass? :)
Ternyata sudah tidak bisa bypass seperti sebelumnya:
Langkah berikutnya adalah, memastikan apakah sudah aman?. Bagaimana jika kita ganti sender address dengan alamat lain yang lebih asal-asalan (karena ms-exch-accept-any-sender masih berlaku disini) kemudian kita kirim ke user sebenarnya di organisasi Exchange 2007 kita, lalu kita menggunakan metode lain yaitu menyusupi header mail dengan sender address yang valid juga, apa bisa di blok? *jawabannya BISA...:D*
Terakhir, sisanya tergantung kemampuan anti spam yang anda gunakan untuk melakukan filtering terhadap spam, contohnya di gambar berikut, saya menggunakan Content Filtering dari Anti Spam Exchange 2007 untuk melakukan blocking terhadap kata-kata yang dicurigai sebagai spam:
Semoga setelah ini sakit kepala anda bisa berkurang.
Cheers,
Raymond