文件路径遍历序列非递归地剥离

admin 2024年11月1日13:03:11评论13 views字数 1260阅读4分12秒阅读模式

今天,我将向大家介绍我在利用路径遍历逻辑漏洞时的思维方式。这些文章来自受控环境,用于解释我的方法,以帮助您学习如何自己测试应用程序。

目的

检索 /etc/passwd 文件的内容。

什么是路径遍历?

文件遍历,也称为目录遍历,是一种漏洞,允许攻击者访问受限目录并在 Web 服务器的根目录之外执行命令。攻击者可以访问存储在预期应用程序表面之外的文件和目录,从而可能暴露敏感信息,例如配置文件、密码和其他关键数据。此漏洞通常是由于用户输入的清理不足造成的,允许插入的字符或序列遍历目录树并访问未经授权的区域。

我的目标是在各种网络安全主题中为您提供价值,并成为您扩展专业知识或任何有抱负的网络安全专业人士进入该领域的最终目的地。

方法论

想要亲自尝试一下实验室并跟随?您可以在 PortSwigger 的网站上免费查看。

侦察

与任何应用程序一样,我们的第一步是弄清楚我们的攻击媒介将在哪里。

看起来该应用程序的功能非常简单:一个带有没有功能的产品页面的商店。

文件路径遍历序列非递归地剥离文件路径遍历序列非递归地剥离

也没有对应用程序进行身份验证的功能。

接下来,我们来看看 SiteMap。

没有任何东西可以立即包含路径遍历。尽管有 prodcut的检索,但它只是检索产品的 API 调用,而不是特定文件。

文件路径遍历序列非递归地剥离文件路径遍历序列非递归地剥离

/images 文件夹看起来也没有任何功能。

接下来,我们来看看 Proxy 选项卡下的 HTTP History。

文件路径遍历序列非递归地剥离文件路径遍历序列非递归地剥离

看起来我们可能已经找到了入口点!

我们可以看到,有一个 filename 参数用于检索产品页面中使用的图像。

让我们将其发送到 Repeater 进行 som 测试。

测试

由于我们将在这里尝试文件遍历,我们应该首先尝试经典的双点技术:../

这是我们经常通过 Command-Line 界面或在编程以遍历文件目录时看到的一种技术。

让我们试一试:

文件路径遍历序列非递归地剥离文件路径遍历序列非递归地剥离

我们可以看到,此函数的几个变体会产生 400 响应。

让我们使用文件名再次测试它,以确保我们没有遗漏任何内容。

文件路径遍历序列非递归地剥离文件路径遍历序列非递归地剥离

还是一无所获...

让我们退后一步,记住我们实验室的名称。我们可以假设非递归剥离正在发生。

这意味着应用程序可能会查看我们的四个双点序列并将其剥离。

但是,由于它不是递归查看,这意味着它在删除 sequence 后不会再次检查。

这正是我们需要尝试的。

开发

让我们拼凑一下我们的攻击:....//etc/passwd

由于双点序列被移除,这意味着它将给我们留下:../etc/passwd

完善。

让我们试一试。

文件路径遍历序列非递归地剥离文件路径遍历序列非递归地剥离

还是什么都没有!!

但是,信不信由你,这实际上是意料之中的。

我们需要在当前有效负载之前测试更多的 ....// 序列,因为我们的目标文件不太可能只是我们当前位置的上一个文件夹。

我们需要不断后退,直到找到它......

文件路径遍历序列非递归地剥离文件路径遍历序列非递归地剥离

三次遍历看起来是我们需要的正确数量 - 实验室解决了!

我们学到了什么

我们已经了解到 在 Web 应用程序中清理用户输入的重要性。任何时候,只要应用程序天生信任用户可以修改的任何内容,我们就在为危险做好准备。我们还在这里看到了跳出框框思考的重要性。“非递归”是一条直面我们的线索,我们花了一点时间才意识到这一点。

 

原文始发于微信公众号(安全狗的自我修养):文件路径遍历序列非递归地剥离

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年11月1日13:03:11
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   文件路径遍历序列非递归地剥离https://cn-sec.com/archives/3341420.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息