反射式垃圾邮件攻击-我的qmail server现在的遭遇
反射式垃圾邮件攻击-我的qmail server现在的遭遇 <br><br>
<a target=_blank href=http://chinaunix.net/forum/viewtopic.php?p=212877>http://chinaunix.net/forum/viewtopic.php?p=212877</a>#212877 <br>
<br>
早上上班收信时,发现自己的邮箱里有5xxx封信,收了几封下来看,都是发给@yahoo.com @msn.com等等知名免费mail提供商的退信,以及对方服务器发回来的退信,本机发给postmaster的双重退信通知。 <br>
<br>
登入服务器查看,发现qmail在全力运转,不停的收信发信。 <br>
<br>
用防火墙打开对25端口的监控,发现大量来自200.x.x.x的smtp连接; <br>
<br>
通过对退信的分析,发现对方利用了smtp的退信机制,进行了攻击: <br>
<br>
向服务器发送一封Return-Path:xxxxx@yahoo.com,RCPT TO:local_user@local_domain(RCPT TO服务器本地域,逃避smtp验证),这里无论远程的Return-Path:xxxxx@yahoo.com,还是本地的RCPT TO:local_user@local_domain都是域存在而用户不存在; <br>
<br>
当本地服务器收下此信件后,发现本地无该用户,就会向Return-Path指定的地址发一封退信,说明本地无此用户,此信同时会发给postmaster,远程@yahoo.com服务器收到此退信后,因为退信指定的用户也是不存在的,于是又产生一封退信发回本地服务器,此信在远端也会发给其postmaster,于是本地服务器放弃对该邮件的处理,并向postmaster发一个双重退信通知。 <br>
<br>
看,攻击者只要发一封信,就能令本地和远端服务器一共产生5封邮件,其中两封是需要通过wan投递的。 <br>
<br>
还有更严重的后果,由于一些服务器对于反复给本地不存在的用户发信的服务器采取封锁,一方面,本地给远程的正常邮件被抛弃,另一方面,可能被同时投诉道国际反垃圾邮件组织,导致本地邮件被广泛的邮件服务器拒绝。 <br>
<br>
目前,我采取的措施是: <br>
1.设置.qmail-default,直接删除发给不存在用户的信; <br>
2.设置本机发出的退信的return-path为本机的一个null信箱,发给该信箱的信也直接删除; <br>
3.使用防火墙拦截来自200.x.x.x的smtp连接 <br>
<br>
如此,勉强对付下来了,然而,简单的删除退信并不是一个完美的解决方法; <br>
<br>
各位postmaster如果有更好的方法请赐教,小弟感激不尽。 <br>
<br>
Re:我想重装exchange 5.5,我想先备份用户,但是用户
謝謝,我正需要呢?請問5.5的備份可以用在EX2K中嗎? 5年前的帖子了,在最近公司怀疑遭受了邮件回复攻击时我在网上搜到这个帖子。但是被钉子给迷惑了。钉子在03年的理解我现在看是错误的。
我们来讨论下:“通过对退信的分析,发现对方利用了smtp的退信机制,进行了攻击:
向服务器发送一封Return-Path:xxxxx@yahoo.com,RCPT TO:local_user@local_domain(RCPT TO服务器本地域,逃避smtp验证),这里无论远程的Return-Path:xxxxx@yahoo.com,还是本地的RCPT TO:local_user@local_domain都是域存在而用户不存在;
当本地服务器收下此信件后,发现本地无该用户,就会向Return-Path指定的地址发一封退信,说明本地无此用户,此信同时会发给postmaster,远程@yahoo.com服务器收到此退信后,因为退信指定的用户也是不存在的,于是又产生一封退信发回本地服务器,此信在远端也会发给其postmaster,于是本地服务器放弃对该邮件的处理,并向postmaster发一个双重退信通知。 ”
邮件的SMTP是TCP连接,需要握手的。垃圾邮件发起者首先必须要有一台垃圾邮件server,然后向你的服务器发信。我们来看这个过程,在SMTP建立的过程中,接受用户如果不存在,那么被攻击的服务器会直接发送一个用户不存在错误给源发SMTP server,这时你的邮件信息(DATA)部分根本发不出去。因为前面的RCPT TO:这个步远程服务器就返回了错误。而且这个错误应该返回给了MAIL FROM:的用户,至于这个Return-path的作用,好像不是很确切,这个参数有没有都可以。
3个服务器,一个是垃圾邮件发起者的SMTP,一个是你本地的SMTP,一个是远程发送退信的SMTP。攻击者如何掩盖自己的SMTP源?如果是UPD,那么这个很好理解,不面向连接,直接改写包头信息,发出去,但是mail是基于tcp,我没想明白。一起讨论吧。
回复 3楼 的帖子
没错最近也出现了类似的问题:1.但有一些变化,很多实际成在的地址都收到了类似的退信。
2.另外,你提到的"关于在SMTP建立的过程中,接受用户如果不存在,那么被攻击的服务器会直接发送一个用户不存在错误给源发SMTP server,这时你的邮件信息(DATA)部分根本发不出去。"这个情况确实有一些邮件系统会有这个验证了。比发RCPT TO声明收件人后就用LDAP或是AD检查自己的服务器有没有这个用户,如果没有就拒绝。但也有一些邮件服务器软件不支持这样的功能,或是没有开启这个检查,比如最典型的就是Exchange Server 2000的版本。因为这个问题经常造成大量的退信队列。在Exchange server 2003已有这个功能,但也是默认不开启的,需要用户自己启用它。
3.攻击者如何掩盖自己的SMTP源?
--据我现在手上的样本,很多垃圾邮件的发送者并没有去修改这些。
个人观点,欢迎讨论。 我贴一个例子:
生成服务器: koperta.ii.uj.edu.pl
jozefowi@ii.uj.edu.pl
#< #5.7.1 X-Postfix; No spam accepted.> #SMTP#
原始邮件标题:
Received: by koperta.ii.uj.edu.pl (Postfix, from userid 65534)
id 2F0B31024E3; Thu, 17 Apr 2008 02:52:36 +0200 (CEST)
Received: from localhost by koperta.ii.uj.edu.pl
with SpamAssassin (version 3.2.3);
Thu, 17 Apr 2008 02:52:35 +0200
From: "fabe byrd" <founder@XXXX.com>
To: <jozefowi@ii.uj.edu.pl>
Subject: ==SPAM== Re:Can u believe that WE will make you h@ppy? G6gao22
Date: Wed, 16 Apr 2008 23:04:55 +0000
Message-ID: <000b01c8a025$07944d63$cd0195bf@agrby>
X-Spam-Flag: YES
X-Spam-Checker-Version: SpamAssassin 3.2.3 (2007-08-08) on koperta.ii.uj.edu.pl
X-Spam-Level: ***********************************
X-Spam-Status: Yes, score=35.2 required=5.0 tests=BAYES_99,DCC_CHECK,
DIGEST_MULTIPLE,DOS_OE_TO_MX_IMAGE,DYN_RDNS_AND_INLINE_IMAGE,EXTRA_MPART_TYPE,
FAKE_REPLY_C,FH_HELO_EQ_D_D_D_D,HELO_DYNAMIC_IPADDR,HTML_IMAGE_ONLY_20,
HTML_MESSAGE,MY_CID_AND_STYLE,PART_CID_STOCK,PART_CID_STOCK_LESS,
RAZOR2_CF_RANGE_51_100,RAZOR2_CF_RANGE_E4_51_100,RAZOR2_CF_RANGE_E8_51_100,
RAZOR2_CHECK,RCVD_IN_BL_SPAMCOP_NET,RCVD_IN_SORBS_WEB,RDNS_DYNAMIC,
SARE_ADULT2,SARE_UN7,T_TVD_FW_GRAPHIC_ID1,URIBL_BLACK,URIBL_JP_SURBL,
URIBL_OB_SURBL,URIBL_SC_SURBL,URIBL_WS_SURBL autolearn=spam version=3.2.3
MIME-Version: 1.0
Content-Type: text/plain
这里我把founder@xxx.com里的公司域名给隐去了。这个是我公司邮件服务器上的一个真实的组,是公司的创始人。 这个组只是收信,一般不发信的。同时公司有Mcafee 的SIG邮件网关,邮件服务器适用exchange 2003 和2007 而且服务器上都装有mcafee的VSE 8.5 ,病毒库版本最新。所有公司内部的电脑基本上都装有mcafee,而且没有出现外出大量垃圾邮件的情况。所以我排除内部感染的可能性,这就一封退信攻击。而且我没有看到他的源,如果有源的话,那么很容易被反垃圾邮件组织加到black-list里,而且频繁更换SMTP的DNS MX记录成本很高。
而且我们exchange 开了用户认证,这个是因为我真实的测过,我在公司内部搭建了一个sendmail on linux,然后通过foxmail 来发送邮件,foxmail 可以更改邮件头的mail from 信息,同时在linux监控smtp日志。我可以修改mail from 263.net,然后把信发给163.com的一个不存在用户,我可以在263的邮箱里收到163的退信,但是这封信并不是直接退给263的,而是163告诉我这个linux,用户不存在,给我了一封退信,然后我这个linux转发给263,因为我的sendmail开了转发。而且我怎么也隐不了我的源发地址。呵呵。
[ 本帖最后由 johnzw 于 2008-4-23 16:22 编辑 ] 邮件的SMTP是TCP连接,需要握手的。垃圾邮件发起者首先必须要有一台垃圾邮件server,然后向你的服务器发信
页:
[1]