您的位置:首页 > 财经 > 产业 > 深圳市品牌策划公司_广州怎么建设一个网站_12345浏览器_西安优化seo

深圳市品牌策划公司_广州怎么建设一个网站_12345浏览器_西安优化seo

2024/12/21 22:19:06 来源:https://blog.csdn.net/qq_26139045/article/details/142900458  浏览:    关键词:深圳市品牌策划公司_广州怎么建设一个网站_12345浏览器_西安优化seo
深圳市品牌策划公司_广州怎么建设一个网站_12345浏览器_西安优化seo

Java-Sec-Code学习3-目录穿越漏洞

case1

java-sec-code默认的漏洞URL是http://127.0.0.1:8080/path_traversal/vul?filepath=../../../../../etc/passwd
在这里插入图片描述

直接审计源代码,看看漏洞代码啥样。
在这里插入图片描述这里很简单,/path_traversal/vul路由下就是直接通过接受filepath参数值作为文件路径读取内容。这里通过getImgBase64来进行读取,可以看一下具体方法。
在这里插入图片描述可以看到方法中,创建了一个File对象来读取filepath对应的文件,如果路径不是目录且文件存在,就直接读取文件内容再base64编码后返回。这也是为什么我们读取/etc/passwd是回显的不是直接明文,而是base64编码内容了。
这里没有对用户输入的filepath参数做任何的处理,直接读取文件,造成了任意的目录穿越和文件读取。

case2

这是一个修复后的安全案例,看看他怎么修的。
在这里插入图片描述
主要就是对filepath做路径过滤,通过调用了一个SecurityUtil.pahtFilter()方法来实现的,那么我们跟一下,看看具体过滤怎么写的。
在这里插入图片描述
这里的37应该是html编码中的37,也就是对应的%,这里其实是首先对filepath进行url解码直到没有%出现为止。然后,只有不包含..和不以/开头才能通过验证,否者被返回null。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com