如何阻止服务器发送垃圾邮件。带有 exim 的 Centos 服务器

如何阻止服务器发送垃圾邮件。带有 exim 的 Centos 服务器

我正在查看一个服务器,它似乎已经通过 wordpress 插件中的错误受到了损害,并且现在正在发送垃圾邮件。

这篇文章似乎很好地报告了我所看到的情况。

Wordpress 黑客

所以我采取了这些步骤......

列出在 crontab 中运行内容的用户。

for user in $(cut -f1 -d: /etc/passwd); do echo $user; crontab -u $user -l; done | more

宾果,我的用户有很多脚本,看起来都很可疑。这个列表有很多这样的行。

* * * * * /home/tart/public_html/wp-includes/SimplePie/Content/1.sh

因此我编辑该用户的 crontab 并将其删除。

crontab -u tart -e

现在我运行它来查看跨度是否仍在发送...

tail -n 10 /var/log/exim_mainlog -F

啊,它还活着。

好的,让我看看 TOP

30596 root      20   0 71728 5864 3680 S  0.3  0.1   0:00.01 exim
30602 root      20   0 71728 5864 3680 S  0.3  0.1   0:00.01 exim
30608 root      20   0 71724 5860 3680 S  0.3  0.1   0:00.01 exim
30609 mailnull  20   0 71736 5244 3088 D  0.3  0.1   0:00.01 exim

现在我在这个服务器上没有运行邮件,只有一个网络服务器。所以我没有使用 exim。

所以让我停止 exim。

/etc/init.d/exim status

/etc/init.d/exim stop

/etc/init.d/exim status

进出口银行现已报告停止

因此我再次检查日志(tail -n 10 /var/log/exim_mainlog -F)

内容仍然出现在日志中。

让我再检查一下状态...

/etc/init.d/exim status
exim (pid 3169 3159) is running...

啊啊啊啊。

我还可以看到队列中有大量垃圾邮件需要发送……exim -bp

我的问题是这样的。

我怎样才能阻止这种情况?!?

我有“WHM Accelerated2”面板,当我检查“服务管理器”时,我可以看到“exim 邮件服务器”和“exim 邮件服务器(但另一个端口)”被禁用。

注意:这是“CENTOS 6.5 x86_64 标准 – ds-71494 WHM 11.46.0 (build 17)”

额外信息:

这是 root 的 cron 作业列表。

root
0 6 * * * /usr/local/cpanel/scripts/exim_tidydb > /dev/null 2>&1
30 5 * * * /usr/local/cpanel/scripts/optimize_eximstats > /dev/null 2>&1
2,58 * * * * /usr/local/bandmin/bandmin
0 0 * * * /usr/local/bandmin/ipaddrmap
53 22 * * * /usr/local/cpanel/scripts/upcp --cron
0 1 * * * /usr/local/cpanel/scripts/cpbackup
0 2 * * * /usr/local/cpanel/bin/backup
35 * * * * /usr/bin/test -x /usr/local/cpanel/bin/tail-check && /usr/local/cpanel/bin/tail-check
45 */4 * * * /usr/bin/test -x /usr/local/cpanel/scripts/update_mailman_cache && /usr/local/cpanel/scripts/update_mailman_cache
30 */4 * * * /usr/bin/test -x /usr/local/cpanel/scripts/update_db_cache && /usr/local/cpanel/scripts/update_db_cache
45 */8 * * * /usr/bin/test -x /usr/local/cpanel/bin/optimizefs && /usr/local/cpanel/bin/optimizefs
30 */2 * * * /usr/local/cpanel/bin/mysqluserstore >/dev/null 2>&1
15 */2 * * * /usr/local/cpanel/bin/dbindex >/dev/null 2>&1
15 */6 * * * /usr/local/cpanel/scripts/autorepair recoverymgmt >/dev/null 2>&1
*/5 * * * * /usr/local/cpanel/bin/dcpumon >/dev/null 2>&1
23 22 * * * /usr/local/cpanel/whostmgr/docroot/cgi/cpaddons_report.pl --notify
5,20,35,50 * * * * /usr/local/cpanel/whostmgr/bin/dnsqueue > /dev/null 2>&1

更新

我 98% 确定我知道袭击是如何发生的,而且我 98% 确定他们利用的漏洞已被堵住。(但我不能确定是否存在另一个漏洞)

使其离线:由于它是一个托管服务器,所以这并不容易。

重建:是的,给我几天时间来解决这个问题,但是现在我想停止垃圾邮件,并更多地了解 exim 是如何被激活的。

让我担心的是,exim 以 root 身份运行(如 top 所示)。我昨晚更改了 root 密码,其格式为 123$£!23#asd2"(不是简单密码)

查看出站计数,我发现...

root@ds-111110 [~]# grep '<=' /var/log/exim_mainlog | awk '{print $5}' | grep \@
   5227 [email protected]
 619519 [email protected]

因此看来 root 是垃圾邮件的罪魁祸首,这再次让我担心。

另请注意,该服务器上没有客户/敏感数据,因此重建起来很容易。

答案1

尽管我强烈地认为你应该摧毁任何重建任何受损的系统,这里有一些信息可以帮助您解决该症状。

在 *nix 系统上,通常你的邮件传输代理 (MTA) 将包含一个模拟发送邮件接口。系统上的任何程序都可以调用此程序来添加邮件传递。停止 MTA 守护程序不会停止此二进制文件接受邮件,并且根据 MTA,此二进制文件甚至会在没有运行 MTA 守护程序的情况下将邮件传递到 Internet。

一些程序还可以建立传出的 tcp/25 连接,完全绕过 MTA。

就您而言,您的脚本很可能只是调用了 sendmail。停止守护进程对停止电子邮件没有任何作用。一个简单的临时解决方案可能是添加一个 iptables 规则,完全阻止输出 tcp/25、tcp/465、tcp/587 连接。这些是众所周知的 SMTP 端口。您还可以更改 的权限/usr/sbin/sendmail,并使其不可执行(chmod 0644 /usr/sbin/sendmail)。

这不能解决您的问题,这只是一个临时插件,在您重新构建系统之前进行最后的备份并收集任何数据。

您需要找到问题的真正根源并加以解决。

相关内容