งานเข้า

Postfix mail server โดน spam เข้ามาเป็นระยะๆ จากหลากหลาย ip address ทั่วโลก โดยพฤติกรรมคือ ใช้ sender (From:) กับ recipient (To:) เป็น email address เดียวกัน ซึ่งตรวจสอบแล้วว่า ในการใช้งานตามปกติจะไม่มีพฤติกรรมแบบนี้เลย ... ดังนั้นในฐานะผู้ดูแลระบบ เป็นหน้าที่และความรับผิดชอบที่จำเป็นต้องจัดการ

...


ร่องรอย

source ip address ส่วนใหญ่เป็น dynamic (pool) ip address จากแทบทุกประเทศ"

...


ทำ #1

เพิ่ม reject_rbl_client ใน smtpd_recipient_restrictions

smtpd_recipient_restrictions = permit_mynetworks,
reject_unauth_destination,
reject_unknown_recipient_domain,
reject_non_fqdn_hostname,
reject_non_fqdn_sender,
reject_non_fqdn_recipient,
reject_rbl_client b.barracudacentral.org,
reject_rbl_client bl.spamcop.net,
reject_rbl_client dnsbl.sorbs.net,
reject_rbl_client dsn.rfc-ignorant.org,
reject_rbl_client dul.dnsbl.sorbs.net,
reject_rbl_client list.dsbl.org,
reject_rbl_client sbl-xbl.spamhaus.org,
permit

...


ทำ #2

หลังจากทำ #1 ปรากฏว่า ปริมาณ spam ลดลงไปได้เยอะทีเดียว แต่ไม่หมดครับ เนื่องจาก source ip address เยอะมากๆ มีบางส่วน ไม่ได้ติดอยู่ใน RBL ยังคงส่ง spam มาได้อย่างต่อเนื่อง

เลือกใช้ header_checks เข้ามาช่วย โดยทำตามขั้นตอนดังนี้

1. กำหนด pattern ในไฟล์ /etc/postfix/header_checks

/From.*\@victim\.co\.th.*To.*\@victim\.co\.th.*/i DISCARD [***Spoofed-SPAM ***]


2. เพิ่ม configuration ใน /etc/postfix/main.cf

header_checks = pcre:/etc/postfix/header_checks


3. สั่ง postfix reload แล้วลองตรวจสอบดูจาก /var/log/mail.log โดย grep "discard:" หรือ text ที่กำหนด


mail:~# tail -f /var/log/mail.log |grep Spoofed-SPAM

Jul 16 08:02:02 mail postfix/cleanup[7694]: 86A5442537: discard: header
From: "Aubrey Uwuxohax" <b3a6aa47@victim.co.th> from
unknown[186.104.14.199]; from=<b3a6aa47@victim.co.th>
to=<b3a6aa47@victim.co.th> proto=ESMTP
helo=<196-207-22-190.adsl.terra.cl>: [*** Spoofed-SPAM ***]

Jul 16 08:03:56 mail postfix/cleanup[7694]: F18C6422FD: discard: header
From: "Viki Qljdisjz" <cailand@victim.co.th> from
pc-151-174-214-201.cm.vtr.net[201.214.174.151];
from=<cailand@victim.co.th> to=<cailand@victim.co.th>
proto=ESMTP helo=<pc-151-174-214-201.cm.vtr.net>: [*** Spoofed-SPAM ***]



คาดว่าน่าจะช่วยลด spam จากพฤติกรรมดังกล่าวได้เกือบทั้งหมด

สิ่งที่สำคัญเลย คือ การเขียน pattern ให้ match กับพฤติการการ spam นั่นแหละครับ

ป.ล. แต่ pattern ตามตัวอย่างในขั้นตอนที่ 1 นั้น ตรวจจับแค่ว่า sender และ recipient อยู่ภายใต้ domain เดียวกันเท่านั้น ยังไม่ได้ตรวจสอบถึงขนาดที่เป็น username เดียวกันด้วย (ใครมี pattern ดังกล่าว แนะนำด้วยนะครับ)

...


อ้างอิง