中间件漏洞小结

最近不准备挖SRC了,沉淀一下学学知识。

常见的web中间件

iis,apache,tomcat,nginx,jboss, Weblogic

1.1 PUT漏洞 IIS6.0

IIS Server 在 Web 服务扩展中开启了 WebDAV ,配置了可以写入的权限,造成任意文件上传。

用burpsuite 提交OPTIONS 查看支持的协议

PUT /test.txt  HTTP/1.1
Host: upload.moonteam.com
Content-Length: 25

<%eval request("cmd")%>
然后去移动这个文件,变成shell.asp
MOVE /test.txt HTTP/1.1
Host: upload.moonteam.com
Destination: http://upload.moonteam.com/shell.asp

注意最后那个payload打上去的时候要在后面加两个换行

漏洞修复方法:1.关闭webdav 2.关闭写入权限

1.2 iis6.0解析漏洞

该版本默认将*.asp;.jpg 此种格式的文件名,当成Asp解析。服务器默认不解析 ; 号及其后面的内容,相当于截断。

iis6.0(分号截断)  例如上传asp木马  可以通过 x.asp;.jpg来绕过

iis除了会将asp解析成脚本执行文件之外,还会将 cer cdx asa扩展名解析成asp(重点)

防御方法:1.禁止创建和上传此类畸形文件  2.图片存放目录设置成禁止脚本文件执行

1.3 iis7.x解析漏洞

IIS7.x版本在Fast-CGl运行模式下,在任意文件,例:a001.jpg/png后面加上/.php,会将a001.jpg/png解析为php文件

这里在我们的图片内部加上phpinfo,然后上传上去,最后访问图片的时候加上/.php,就会把图片当成php去解析。 

防御:配置 cgi fix_pathinfo(php inil中)为0并重启php-cgi程序

1.4  IIS短文件漏洞

IIS的短文件名机制,可以暴力猜解短文件名,访问构造的某个存在的短文件名,会返回404,访问构造的某个不存在的短文件名,返回400。

使用payload验证目标是否存在IIS短文件名漏洞,下图显示的404,说明目标存在该短文件名

注:* 可以匹配n个字符, n可以为0

http://upload.moonteam.com/*~1*/a.aspx

防御:1、升级.net framework

2、修改注册表键值:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem修改NtfsDisable8dot3NameCreation为1。修改完成后,需要重启系统生效。

命令行关闭 fsutil behavior set disable8dot3 

2.apache篇

2.1  未知扩展名解析漏洞

Apache默认一个文件可以有多个以点分割的后缀,当最右边的后缀无法识别,则继续向左识别,直到识别到合法后缀才进行解析。我上传了一个名字叫lcx.php.qqq 的文件,当此特性存在的时候,一看.qqq不认识,继续解析,.php我认识,解析成php文件了。访问也是同理,比如访问phpinfo.php.qqq可成功显示phpinfo

 

2.2  换行解析漏洞

apache换行解析漏洞(CVE-2017-15715)

其2.4.0~2.4.29版本中存在一个解析漏洞,在解析PHP时,1.php\x0A将被按照PHP后缀进行解析,导致绕过一些服务器的安全策略。

 

 

防御:将上传的文件重命名为为时间戳+随机数+.jpg的格式并禁用上传文件目录执行

2.3   Apache SSI 远程命令执行漏洞 

当目标服务器开启了SSI与CGI支持,我们就可以上传shtml,利用<!--#exec cmd=”id” -->语法执行命令。

使用SSI(Server Side Include)的html文件扩展名,SSI(Server Side Include),通常称为"服务器端嵌入"或者叫"服务器端包含",是一种类似于ASP的基于服务器的网页制作技术。默认扩展名是 .stm、.shtm 和 .shtml。

上传一个shell.shtml 内容 <!--#exec cmd="id" -->

上传成功

然后去访问就可以得到结果了

3.tomcat中间件

3.1tomcat弱口令&war远程部署

Tomcat存在后台管理,账号密码设置在conf/tomcat-users.xml

可能存在的安全问题:弱口令或爆破(爆破采用数据包base64传递认证)

这里先把我们的shell.jsp在本地打包成zip,然后重命名为war,之后上传war,它会自动解压,从而getshell

 

修复:设置强口令,删除manger文件 

3.2    Tomcat文件包含漏洞CVE-2020-1938

Apache Tomcat 6

Tomcat 7系列 <7.0.100

Tomcat 8系列 < 8.5.51

Tomcat 9 系列 <9.0.31

POC

https://github.com/YDHCUI/CNVD-2020-10487-Tomcat-Ajp-lfi

4.nginx中间件

Nginx解析漏洞( 该漏洞与nginx、php版本无关,属于用户配置不当造成的解析漏洞)

在已经上传了恶意1.jpg文件后,访问/1.jpg/xxx.php,(路径修复cgi.fix_pathinfo=1后)使得Nginx将其解析为php文件传给php-cgi程序(传给路径位于SERVER["SCRIPT_FILENAME"],修复去除路径位于SERVER["PATH_INFO"]),但cgi程序将其解析为1.jpg并执行。

修复:将php.ini文件中的cgi.fix_pathinfo的值设置为0,这样php再解析1.php/1.jpg这样的目录时,只要1.jpg不存在就会显示404页面

5.Jboss中间件

5.1JMX Console未授权访问Getshell

此漏洞主要是由于JBoss中/jmx-console/HtmlAdaptor路径对外开放,并且没有任何身份验证机制,导致攻击者可以进⼊到jmx控制台,并在其中执⾏任何功能。

2.影响版本 Jboss4.x以下

3.漏洞复现 Jboxx4.x /jmx-console/ 后台存在未授权访问,部署war包即可。

 

修复: 1.升级jboss

2.关闭jmx-console和web-console,提高安全性 

5.2  JBoss 5.x/6.x 反序列化命令执行漏洞(CVE-2017-12149)

该漏洞出现在/invoker/readonly中 ,服务器将用户post请求内容进行反序列化用工具来验证,在验证之前我们可以访问路径进行初步判断url://invoker/readonly,看服务器返回情况如下则说明漏洞存在 

修复:升级新版本,删除 http-invoker.sar 组件。 

6.weblogic中间件

访问http://192.168.1.10:7001/console

账号weblogic/Oracle@123登陆后台

部署war包即可

干货 | 最全的Weblogic漏洞复现笔记

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值