加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

惨遭黑客入侵,记一次服务器被攻击的应急行动!

发布时间:2017-10-25 08:39:07 所属栏目:建站 来源:51CTO
导读:副标题#e# 如果你的 PHP 服务器被黑客入侵时该怎么办?这是我最近处理 Linux Web 服务器发现的一个问题。 PHP 服务器被黑时,会出现新的 PHP 文件,这与运行在服务器上的 wordpress 应用程序和特定的用户代理没有任何关系,所有的流量都被重定向到另一个站

Fri Jun 30 2017 16:07:47       31 m.c. -rw-r--r-- 10000    1004     0        /var/www/vhosts/xyz/httpdocs/newmessage.html

这是服务器上所有文件的非常有用的列表,包括所有者 id、组 id 以及文件修改、访问和更改的时间戳。

请注意,在 Unix 上,通常会获得文件访问时间、文件更改时间和文件修改时间(atime,ctime,mtime)。

这些是在文件大小之后的 mactime 时间线文件中显示的,例如上面示例中的第二行中的 m.c.,这意味着给定的日期会显示文件修改和更改时间。

在访问文件时设置 a(atime);c(ctime)是在文件内容或权限发生更改时设置的;当文件内容发生了变化,而不是所有者或权限更改时,设置 m;在创建文件时,设置 b。

因此,mtime 在文件最后写入时向我显示。但是我不能确定它是否与文件创建日期相匹配。

不幸的是,这里无法重新构造,因此我不能确定这是上传的时间,但是我可以确定,在周五,Jul 07 文件已经在系统上了。在 Linux 上,你可以使用工具 stat 来显示单个文件的这些信息。

还有一些与文件系统,文件访问,创建时间有关的副标题。首先,如果你的文件系统安装了 noatime 选项(你可以通过运行 mount 命令来解决这个问题),则不需要编写访问时间。虽然这能增加取证速度,但显然非常复杂。

然而,好消息是,根据你的文件系统,你可能能够找到文件创建时间。Ext4 支持它,它在当前的 Linux 服务器上很常见。

但是没有一个用户工具可以很容易地显示文件创建时间,而 mactime 也没有捕捉到它。但是,使用 debugfs 可以检索创建日期。为此,Igor Moiseev 编写了一个名为 xstat 的便捷小脚本。

检查我的时间线,我可以知道第一个恶意的 Shell 何时出现在系统上。

检查日志

我可以在日志中找到一些对这些工具的调用,主要是来自亚洲 IP 地址,但由于 POST 数据没有被记录,我无法找到从 Apache 日志中上传这些 Shell 的文件。

寻找初始攻击向量

为了确定我是否能识别出最初的攻击,我使用了 Apache-Scalp。这是一个较旧的工具,但仍然有效。它主要通过正则表达式匹配已知攻击向量的 Apache 日志文件。

/opt/apache-scalp/scalp# python scalp.py -l 

/path/to/logs/access_log.processed.1_plain -f /path/to/default_filter.xml -a 

lfi,rfi,sqli,dt -p "25/Jun/2017;05/Jul/2017" --output /root/scalp --html

然而,在事件发生当天或之前,没有可疑的 sql 注入或 lfi / rfi 活动,这可能会与其中一个可疑文件发生关系。

检查 wordpress 插件,我发现在漏洞被上传一个月前,至少有一个 SEO 插件安装了一个严重的 Shell。

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读