皮皮网

【晨音最新互赞宝源码】【美图设计源码】【简约企业源码】pathvariable源码解析

时间:2024-12-29 15:20:47 来源:财务程序源码

1.浅谈URI中的源码任意文件

pathvariable源码解析

浅谈URI中的任意文件

       文件下载业务中,URI的解析正确处理是关键。通常,源码接口形式如//download?解析fileName=xxx.png,若未过滤目录穿越符号如...或未限制下载路径,源码传入参数如../../etc/passwd即可实现路径穿越,解析晨音最新互赞宝源码下载任意文件。源码解析URI以得到文件名,解析如/file/test.jpg,源码尝试访问/file/../../test.jpg时,解析中间件或框架在解析路由时会有所处理。源码那么,解析能否通过此途径进行目录穿越并利用呢?

       在实际项目中,源码一个文件下载的解析实现使用了Spring框架的FileCopyUtils.copy()方法。文件路径filepath通过req.getRequestURI()获取,源码美图设计源码此方法不规范URI中的特殊字符,直接拼接路径并读取文件,未限制下载目录且未过滤敏感关键字,存在任意文件下载风险。

       当前项目的upload目录结构如下:

       访问../WEB-INF/web.xml,成功穿越到上级目录WebContent,并获取web.xml配置信息。简约企业源码中间件处理../,使其等同于直接访问/userfiles/WEB-INF/web.xml。若尝试读取更敏感文件如/etc/passwd,需要多级../,但tomcat处理后已不在有效目录范围内,返回异常。尝试扩大漏洞危害,墙布网站源码编码请求触发 Invalid URI错误,tomcat对保留字符;进行截断并处理为参数。在编码基础上再次访问,获取路径为/upload/;/../../../../../../../../etc/passwd,返回状态码。

       结合网站其他业务,可以创建名为;的移动挂单源码目录,访问/userfiles/upload/;%2f..%2f..%2f..%2f..%2f..%2f..%2f..%2f..%2fetc%2fpasswd,成功下载敏感文件。

       引入@PathVariable注解,用于接收请求路径中的占位符值,可以实现文件下载,如访问/var/work/download/{ filename},下载名为{ filename}的文件。参数在URI中,利用还需探究。

       通常,直接使用../../../目录穿越尝试下载/etc/passwd等敏感文件,中间件解析时已处理../,参数filename无法利用。处理后URI为/file/etc/passwd,未找到映射,返回。

       尝试对/编码访问,tomcat源码检测到%2F斜杠返回状态码。源码流程包括解码和格式化URI。Spring对URI进行一次解码,如/file/get/..%fetc/passwd变为/file/get%2fetc/passwd。

       在前端用JS对URL编码,忽略Spring的解码操作。使用双重URL编码处理../请求,绕过中间件和Spring的URLDecode,实现目录穿越,成功下载内容。

       集成Shiro框架时,案例一中的;可能需要编码为%3b。Shiro高版本对编码进行处理,继续利用需深思。

推荐资讯
韓媒:韓國警方開始扣押搜查前防長金龍顯官邸和辦公室

韓媒:韓國警方開始扣押搜查前防長金龍顯官邸和辦公室

种子搜源码_种子搜索器引擎

种子搜源码_种子搜索器引擎

自动打卡源码_自动打卡源码是什么

自动打卡源码_自动打卡源码是什么

人形时钟 源码_人形时钟app

人形时钟 源码_人形时钟app

“地沟油”身价飙升:从餐厨废油到“减碳明星”

“地沟油”身价飙升:从餐厨废油到“减碳明星”

变色rsi源码_变色的代码

变色rsi源码_变色的代码

copyright © 2016 powered by 皮皮网   sitemap