Tomcat URL解析差异漏洞

Posted 字节脉搏实验室

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Tomcat URL解析差异漏洞相关的知识,希望对你有一定的参考价值。

文章源自-投稿

作者-叶子

扫描下方二维码进入社区

0x01 简介

Tomcat是常见的web中间件,收到用户请求后再对客户端提交的参数、URL、Header、body的那个数据进行解析,生成request对象。

当后台程序使用getRequestURI()或getRequestURL()函数解析漏洞时若存在一些特殊字符,则可能造成越权。

11989和5902就是利用了这一点。

Tomcat URL解析差异漏洞

0x02 URL解析差异性

简单进行一下测试,新建一个java web。命名 index.jsp

Tomcat URL解析差异漏洞

Tomcat URL解析差异漏洞

测试几种样例

Tomcat URL解析差异漏洞

Tomcat URL解析差异漏洞

Tomcat URL解析差异漏洞

那么这些又说明了什么呢?

简单来说,Tomcat中的url解析支持嵌入以上几种特殊字符,且getRequestURL()和getRequestURI()解析时同样包含他们。

Tomcat URL解析差异漏洞

0x03 调试Tomcat结论

Tomcat是在CoyoteAdapter.service()函数上对请求URL进行处理解析的,有能力的同学可以下断点自行分析,自己走一遍基本分析流程就吃透了,这里直接给结论。

Tomcat URL解析差异漏洞

Tomcat URL解析差异漏洞

0x04 简单举例

http://localhost:8080/urltest/info/secret.jsp下是敏感信息,你可以这样绕过

Tomcat URL解析差异漏洞

通知!

记得扫码

以上是关于Tomcat URL解析差异漏洞的主要内容,如果未能解决你的问题,请参考以下文章

中间件安全Tomcat&Nginx解析&爆破&CVE漏洞

研究人员在广泛使用的URL解析器库中发现漏洞

URL在Tomcat服务器端的解析过程

nginx下面怎么设置解析中文URL

tomcat web的URL解析(web.xml)

PHP创建数组的方法和url可以传递数组解析