敏感信息泄漏 - 目录遍历

  目录遍历漏洞的原因是Web应用在处理用户输入的文件路径时缺乏适当的验证和规范化,导致攻击者可以通过输入特殊字符(如../)访问到应用程序根目录之外的文件。其危害包括泄露敏感信息(如配置文件、密码文件)、读取未授权文件、执行任意代码等,严重威胁系统安全和数据隐私

漏洞场景:原生漏洞场景

在Java环境中,目录遍历漏洞通常伴随任意文件读取漏洞一起被利用

tips
/listdir?dir=/,可以尝试插入../从而遍历任意目录

缺陷代码

安全场景:敏感字符过滤

进行敏感字符过滤,禁止使用 '.'、';'、'\' 和 '%'

tips
黑名单过滤不严谨的话,往往可以通过特殊字符/编码进行绕过

安全代码

安全场景:限制遍历目录

检查请求的目录是否在规定的跟目录内,可以有效防止目录遍历攻击

tips
将可遍历目录限制到静态文件目录内

安全代码