教程和靶场来源于 Burpsuite 的官网 Portswigge:Path traversal - PortSwigger
路径遍历(Path traversal)又称目录遍历(Directory traversal),允许攻击者通过应用程序读取或写入服务器上的任意文件,例如读取应用程序源代码和数据、凭证和操作系统文件,或写入应用程序所访问或控制的文件,改变应用程序的行为,甚至接管服务器。
原理
假设一个购物应用程序用下面的标签展示一个图片文件的内容:
<img src="/loadImage?filename=218.png">
通过 filename 参数指定读取 218.png 文件的内容,218.png 是一个文件的名称,既然是文件,那么就必然有一个目录,该文件所在的目录也许在代码中被定义为 /var/www/images/,那么实际读取就是 /var/www/images/218.png 文件的内容。
然而,fiilename 参数是用户可控的,如果这个参数没有做任何路径遍历的防御,那么攻击者可以将其篡改为 ../../../etc/passwd,此时读取的文件是 /var/www/images/../../../etc/passwd,即 /e

最低0.47元/天 解锁文章
1161

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



