背景:
点击对应名字,下载对应图片。但服务器还存在其他文件,只是前端没有展示出来。通过模拟路径下载,可以获取到意想不到的数据。

看点击代码:

如果模拟没有前端的图片,也会发现下载了

所以这个叫任意文件下载漏洞。如果没有控制,那么可能会获取你服务器中的一些文件配置比如mysql配置文件,application.yml文件等等,也会有密码等私密信息。
如果不知道服务器里面哪些可以,可以猜测一些常规文件,放在一个字段里,进行暴力破解
解决方案
- 只针对当前一些下载文件设置访问
- 仅仅针对当前文件目录,不可目录穿越
- 限制一些格式,比如…/等