应急响应|文件上传漏洞排查

8a9e6df41102b08fd579318dc9c92f41

处置:

1、查看基本情况

在态势感知上可以看到,文件上传的详细情况,并且已经被攻击者利用成功,攻击者上传的是一个cer的文件格式,通过畸形解析漏洞,成功利用,试了一下发现是个未授权访问的路径。
应急响应|文件上传漏洞排查
查看攻击者的ip,是一个动态的国外恶意ip,未能从ip中获取更多信息。
应急响应|文件上传漏洞排查
征得客户同意后登上被攻击的那台服务器,查看木马文件,发现是个asp的冰蝎木马,将木马进行了删除操作,然后进行了一些排查防止攻击者做了一些后渗透的工作。
应急响应|文件上传漏洞排查

2、排查可疑项目

1、首先查看一下服务器的基本情况,查看一下开放端口,是否打开了高危端口,比如3389等,万幸得是这台服务器并未开启远程桌面。

  1. 查看端口开发情况:
  2. netstat -ano
  3. 查看某个端口是否开放:
  4. netstat -ano|findstr "port"

2 、排查可疑账户,运行输入lusrmgr.msc查看本地用户和组,账号以$结尾的为隐藏账户,未发现有隐藏账户。
应急响应|文件上传漏洞排查
3、查看是否有可疑的计划任务,PowerShell输入Get-ScheduledTask查看所有的计划任务,未发现有可疑的计划任务。
应急响应|文件上传漏洞排查
4、查看是否有可疑的进程,PowerShell输入tasklist查看所有进程信息,也可以在任务管理器中查看,未发现有可疑的进程。
应急响应|文件上传漏洞排查
5、查看是否有可以文件,查看C盘符下的temp或tmp目录下是否有可疑文件,未发现可疑文件。
应急响应|文件上传漏洞排查
6、利用d盾等工具查找webshell,未发现有其他的webshell。
7、查找内存马,使用的工具有dumpit、redline、ram capturer等,未发现内存马

分析:

1、漏洞成因

万幸没有发现其他的入侵痕迹,只有一个冰蝎马,已经被删除了,那么攻击者是如何找到这个未授权的上传路径呢?路径不是寻常的路径,不太可能通过fuzz或者字典获取,第一时间想到的是源码泄漏。
扫描网站的目录,未发现存在源码泄漏,又在github上进行了搜索,也没有源码,排除了源码泄漏。
千思万想中,突然想到了会不会是swagger未授权访问泄漏接口呢,扫了一下旁站,果然发现了一个swagger未授权访问。
应急响应|文件上传漏洞排查

2、swagger未授权访问

swagger未授权访问存在于spring框架下,如果有swagger未授权一般还会有actuator未授权,试了一下果然存在。
应急响应|文件上传漏洞排查
swagger-ui.html会被禁止访问,这时候可以尝试拼接/v2/api-docs进行访问

  1. 常见路径
  2. /v2/api-docs
  3. /swagger-ui.html
  4. /swagger
  5. /api/swagger
  6. /Swagger/ui/index
  7. /api/swaggerui
  8. /swagger/ui
  9. /api/swagger/ui
  10. /api/swagger-ui.html
  11. /user/swagger-ui.html
  12. /libs/swaggerui
  13. /swagger/index.html
  14. /swagger-resources/configuration/ui
  15. /swagger-resources/configuration/security
  16. /api.html
  17. /druid/index.html
  18. /sw/swagger-ui.html
  19. /api/swagger-ui.html
  20. /template/swagger-ui.html
  21. /spring-security-rest/api/swagger-ui.html
  22. /spring-security-oauth-resource/swagger-ui.html
  23. /swagger/v1/swagger.json
  24. /swagger/v2/swagger.json
  25. /api-docs
  26. /api/doc
  27. /docs/
  28. /doc.html
  29. /v1/api-docs
  30. /v3/api-docs

使用try out按钮可以直接进行发包测试。
应急响应|文件上传漏洞排查

3、攻击复现

发现网站存在黑名单限制,成功上传cer格式文件,
应急响应|文件上传漏洞排查
利用IIS6.0解析漏洞,成功连上马子。
应急响应|文件上传漏洞排查

4、解析漏洞

4.1、IIS 6.0解析漏洞

1.目录解析
/xx.asp/xx.jpg
.asp、.asa命名的文件夹下任何文件都被IIS当作asp文件来解析并执行。
2.文件解析
xx.asp;.jpg
比如 1.asp;.jpg ,会被服务器看成是1.asp
3.解析类型
IIS6.0默认的可执行文件除了asp还包含

  1. /1.asa
  2. /1.cer 这个就是攻击者成功利用的IIS6.0解析漏洞,成功上传shell
  3. /1.cdx

4.2、IIS 7.0/IIS 7.5/ Nginx <8.03畸形解析漏洞

在默认Fast-CGI开启状况下,攻击者上传一个名为1.jpg,内容为
<?PHP fputs(fopen('shell.php','w'),'<?php eval($_POST[cmd])?>');?>
的文件,然后访问1.jpg/.php,在这个目录下就会生成一句话木马 shell.php

4.3、Nginx <8.03 空字节代码执行漏洞

影响版:0.5.,0.6., 0.7 <= 0.7.65, 0.8 <= 0.8.37

Nginx 环境下,上传图片马,然后访问xxx.jpg%00.php,执行其中的代码

4.4、Apache解析漏洞

上传的文件命名为:test.php.x1.x2.x3,Apache是从右往左判断后缀,如果为不可识别解析,就再往左判断
比如 1.php.rar``.rar这种后缀是apache不可识别解析,apache就会把1.php.rar解析成php

修复:

配置策略

由于软件的修复需要一定时间,所以配置防火墙策略,禁止外网ip访问swagger目录和上传路径;

代码修复

在代码层面,将swagger、actuator和上传文件接口配置访问权限验证;
应急响应|文件上传漏洞排查

总结:

当遇到类似的应急响应事件后,可以按照以下几个步骤进行处理:
1、先对需要处理的事件现场情况进行详细的了解,与客户商量先将受害服务器进行断网关机处理,如果有主机安全管理设备,先对所有主机资产进行病毒查杀。
2、先将木马文件、可疑文件保存本地,然后将服务器上的可疑文件进行清除。
3、分析木马文件是哪种类型的木马,会造成什么危害,再做出下一步处置。
4、排查服务器上的可疑项目,如文件排查、进程排查、内存排查等等,防止攻击者留下后门
5、分析漏洞成因,然后先使用waf、防火墙等设备紧急修复漏洞,再等研发人员来彻底修复漏洞。

本文来自投稿,不代表安强科技社区立场,如若转载,请注明出处:https://community.anqiangkj.com/archives/2778

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022年1月14日 上午12:15
下一篇 2022年1月14日 上午12:24

相关推荐

发表回复

您的电子邮箱地址不会被公开。