一种绕过LFI(本地文件包含)的方法

渗透技巧 2年前 (2021) admin
1,004 0 0

声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由用户承担全部法律及连带责任,文章作者不承担任何法律及连带责任。


背景介绍:


LFI(本地文件包含):允许攻击者暴露目标服务器上的文件,在目录遍历(../)的帮助下,可以使攻击者访问本不应该访问到的文件。


今天的故事来自国外一位名为Abhishek的白帽子,接下来我们看看他是如何绕过LFI过滤的吧。


绕过利用:


首先来看个例子:


https://example.com/redirect.php?page=/home/index.html 


上面这个URL是正常访问index.html页面。


https://example.com/redirect.php?page=../../../etc/passwd 


而如果该网站存在LFI漏洞的话,通过上面这个URL可以顺利读取到服务器上的passwd文件。


而此类漏洞被评级为P1级,因为通过LFI漏洞有可能通过各种方法实现RCE。


一种绕过LFI(本地文件包含)的方法

 hackerone上对于LFI的评级


这位白帽小哥在一次目标渗透时,遇到了一个疑似可以LFI的漏洞,他进行某次尝试时:

../../../../../../../etc/passwd.html


出现了如下提示:

一种绕过LFI(本地文件包含)的方法


感觉有戏,但是结尾会以.html结束。


于是这位小哥尝试将文件类型更改为 txt、png等后缀,得到的结果却依然失败:


一种绕过LFI(本地文件包含)的方法


另外,小哥还尝试使用了空字节%00,同样失败:


一种绕过LFI(本地文件包含)的方法


在经历了大量的错误与阻止后,经过小哥的不懈努力,最终成功绕过:


一种绕过LFI(本地文件包含)的方法


而最终的Payload是:


www.target.com/rd?page=Li4lMkYuLiUyRi4uJTJGLi4lMkYuLiUyRi4uJTJGLi4lMkZldGMuLiUyRnBhc3N3ZC4uJTJGMDAudHh0Ly8uJTAw


如果你把上面这段编码进行base64解码的话,就是:

..%2F..%2F..%2F..%2F..%2F..%2F..%2Fetc..%2Fpasswd..%2F00.txt//.%00


正所谓“世上无难事,只怕有心人!”,希望这篇文章能给正在阅读的你有更多的启发!


另外,附上一份LFI的字典:


https://raw.githubusercontent.com/emadshanab/LFI-Payload-List/master/LFI%20payloads.txt


点击下方“阅读原文”可跳转至文章原文地址。


====正文结束====

原文始发于微信公众号(骨哥说事):一种绕过LFI(本地文件包含)的方法

版权声明:admin 发表于 2021年12月3日 上午6:53。
转载请注明:一种绕过LFI(本地文件包含)的方法 | CTF导航

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...