我的WordPress的EC2服务器可能被黑客入侵。 当运行iftop命令时,我可以看到我的服务器发送和接收来自主机名“i157panamamails.com”的数据。
这个主机名永远不会消失,吃大量的带宽。 我想阻止服务器与这个主机名进行通信,并完全拒绝它。 我尝试在.htaccess中放置一个deny from并重新启动Apache2服务器(使用Ubuntu 10.0),但它没有帮助,我仍然看到主机名连接活动。 也许连接不是从Apache2,但从我知道这是唯一的服务器安装。
我怎样才能防止服务器拒绝这个主机名?
更多信息:
在etc/hosts我只有127.0.0.1
在etc / resolve.conf中我有:
名称服务器[some_ip_address] <—这个IP是EC2的,所以这里没问题
域ec2.internal
searchec2.internal
resolve.conf中的IP不会parsing为主机名
在端口22/21/80上使用lsof命令在连接中找不到主机名。 端口21有一个用于root用户侦听的连接,但端口21在EC2安全组中未打开,而端口443(HTTPS)没有连接
看起来连接不在apache的80端口上,因为lsof在特定的时间段只显示我的连接,而且我看到在networking打印中该连接仍处于活动状态。 我假定另一个充当服务器的软件可能会在已经打开的与Apache无关的端口80上初始化该连接
在eth0上运行NetHogs显示我的程序sshd:ubuntu @ pts1在用户ubuntu下不停地接收和发送数据(不是Apache2)。 看起来很可疑
我还注意到端口80和其他端口上的程序37:80- [ip_addresses]有很多连接(〜50)。 这些程序不发送或接收数据(大多数)
阻止host.deny中的主机名没有帮助
更新:我已经find了IP,并阻止它在IPtables(OUTPUT和INPUT)。 IP服务器不会向该IP发送数据, 但它每秒钟都会收到240字节的数据。
好吧,首先你可以在服务器上运行tcpdump来分析stream量。
tcpdump -s 65535 -w ~/traffic_capture.pcap
然后你可以用这个命令读取这个文件:
tcpdump -vv -r ~/traffic_capture.pcap
或者下载你的电脑并用wireshark检查。
你也可以使用iptables来logging你所有的输出stream量(这里是规则):
iptables -A OUTPUT -j LOG
默认情况下,该stream量的日志将位于/var/log/kern.log中。
你也可以运行带有标志-n的iftop来防止iftop进行主机名查找。
从iftop的手册引用:
By default, iftop will look up the hostnames associated with addresses it finds in packets. This can cause substantial traffic of itself, and may result in a confusing display. You may wish to suppress display of DNS traffic by using filter code such as not port domain, or switch it off entirely, by using the -n option or by pressing r when the program is running.
如果你确定你有某种shell或恶意软件,那么你可以尝试使用maldet或ai-bolit来检查apache目录中的恶意软件。
你应该尝试使用iptables来快速修复。
iptables -A OUTPUT -d 202.54.1.22 -j DROP
在EC2上,如果您在VPC中运行,则可以即时编辑您的ACL并阻止此IP。
但是,如果你真的被黑客入侵,这只是第一步。 看看正在做这些连接的进程,lsof会帮助,找出为什么它正在运行,谁安装它,并在需要时将其从机器中删除。
第二步是加强安全性: – 将wordpress升级到最新版本; 有一些stream行的攻击平台 – 更改所有的IAM和主帐户密码 – 旋转所有访问密钥和ssh密钥 – 确保你不能使用密码ssh – 如果可能的话,只允许SSH通过特定的IP,通过安全组
它可能是出站连接而不是入站。 检查以下活动:
除了这些被动的措施之外,我还build议您安装OSSEC等基于主机的入侵检测软件来检测未经授权的访问和对系统的更改。