安全矩阵

 找回密码
 立即注册
搜索
查看: 4124|回复: 0

挖洞经验 | 通过Tomcat Servlet示例页面发现的Cookie信息泄露漏...

[复制链接]

991

主题

1063

帖子

4315

积分

论坛元老

Rank: 8Rank: 8

积分
4315
发表于 2020-8-30 09:07:42 | 显示全部楼层 |阅读模式
原文链接:挖洞经验 | 通过Tomcat Servlet示例页面发现的Cookie信息泄露漏洞



今天分享的writeup是一个非常有意思的漏洞,作者在目标网站Tomcat Examples的遗留测试示例中,发现了Cookie Example示例页面显示了主站的所有Cookie信息,可通过其实现Cookie窃取,该漏洞最终收获了四位数$$$$的赏金奖励。
首先,来认识一下Tomcat的示例文件,它是Tomcat安装后默认显示的一些页面,其中包含了很多servlets 和 JSP的测试示例,尤其是其中的会话示例接口/examples/servlets/servlet/SessionExample和/examples/servlets/servlet/CookieExample,由于会话变量的全局性,导致攻击者可以管理员身份通过该接口对会话进行操控,存在安全风险。这里,可以参考Rapid7的Tomcat示例信息泄露漏洞。
漏洞发现
通常来说,很多Tomcat Examples示例页面会存在XSS漏洞,但在我的测试目标网站中却不存在此种情况。好在幸运的是,有以下三个示例目录是可有效访问的:

Servlet Examples
JSP Examples
Websocket Examples

首先,我访问了其Websocket示例页面:
​它的功能大概是允许连接到一个外部WebSocket服务器,并把其连接有效信息进行显示。由于测试目标网站是一个隔离子域名,与主站应用没有联系,所以,WebSocket跨域劫持漏洞(Cross-Site-Websocket-Hijacking)在这就派不上用场。但无论如何,它会向外部WebSocket服务器发起一个连接请求,如下:
​在与朋友就该页面进行交流之后,他的经验也让我打消了疑虑,这个点的利用也仅如此,我们继续。接着,我来到了其JSP Servlet页面:

这有点意思,但危害性却不大。然后我来到了其Servlets Examples示例页面:
​首先,我尝试了其中的Byte Counter操作,因为它在其中包含了一个上传功能,但是,几经测试也毫无成效,针对该处,如果大家有什么其它好的方法,可以试试看。
​之后,我来到了Session Example示例和Cookie Example示例页面下。由于这是一个子域名网站,所以这里的Session Example会话示例没啥东西:
​但是,当我打开其Cookie Example示例页面https://target.com/examples/servlets/servlet/CookieExample,却发现了好东西!
​可见,目标网站的主站Cookie信息全部都显示在此,由此,我立马想到了点击劫持( Click-jacking),并编写了以下简单的漏洞利用脚本代码:
​形成了以下POC验证页面:
​当然了,你也可以把页面边框变成透明,或在上面添加一个重叠元素,使其更具伪装性。执行上述POC页面之后,我的控制端就成功收到了Cookie信息。
​经url解码后,就可以看到完整直观的Cookie内容了:

经验总结经验就是,不要放过偏僻的子域名网站,也别忽略了会话或Cookie相关的页面。
参考来源:
https://medium.com/bugbountywriteup/apache-example-servlet-leads-to-61a2720cac20


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-11-28 05:31 , Processed in 0.012632 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表