Ada pepatah, jangan menganggap remeh musuh anda :-)

sejak implementasi exim di worldless (berapa tahun kang?)
saya menerapkan smtp auth supaya user tertentu bisa
merelay dari luar network.

kira-kira tanggal 1 september, rupa-rupanya spammer
mencium adanya keteledoran admin (macam saya) yang
tidak memeriksa apakah semua semua expansion variable
yang digunakan kosong atau bernilai. dan, exim rupanya
menganggap {} == {}  adalah benar (1/true) jadi,
attacker tinggal menyebut random string pada variable
2 sehingga menghasilkan {} (kosong/null) dan mengosongkan
variabel ke tiga, misal untuk metode plain:

% printf 'adi\0adipass' | mmencode

kalau user adi tidak ad, lookup adi menghasilkan {},
dan karena $3 kosong, jadi -> authenticated.

jadi jangan lupa, memeriksa dulu bahwa expansion variable
tidak kosong, misal:

autentikasi_plain:
   driver = plaintext
   public_name = PLAIN
   server_condition = "${if and {{!eq{$2}{}}{!eq{$3}{}} \
        {eq{${lookup{$2}cdb{/mail/passwd_database.db}{$value}}}{$3}}}{yes}{no}}"
   server_set_id = $2

sepertinya ini metode baru. kebetulan ada 2 mesin exim yang
mengaktifkan smtp auth, kena attack-nya bareng he..he..

baru saja dibetulin, sudah langsung punya tester:

2003-09-05 23:51:52 Authentication failed for (exclaims) [218.70.144.13]: 535 
Incorrect authentication data
2003-09-05 23:53:25 Authentication failed for (hotel) [218.70.143.178]: 535 Incorrect 
authentication data

attacker semakin cepat. kita semakin lambat ;-(

Salam,

P.Y. Adi Prasaja


--
Right or wrong my list. Unsubscribe option is currently unavailable.
Indeed, it's available upon request .. but: cepek dulu donk!

Kirim email ke