目录遍历漏洞浅析

admin 2025年2月15日22:53:08评论18 views字数 1113阅读3分42秒阅读模式
目录遍历漏洞浅析

学习目录

  • 1.简介
  • 2.攻击载荷
    • URL 参数
    • Nginx Off by Slash
    • UNC Bypass
  • 3.过滤绕过
    • 单次替换
    • URL 编码
    • 16 位 Unicode 编码
    • 超长 UTF-8 编码
  • 4.防御
  • 5.参考链接
目录遍历漏洞浅析

1. 简介

目录遍历(目录穿越)是Web安全漏洞

攻击者可以利用该漏洞读取运行应用程序的服务器上的任意文件

这可能包括应用程序代码数据,后端系统的登录信息以及敏感的操作系统文件

在某些情况下,攻击者可能能够在服务器上写入任意文件,(如,FFFTP是一款小型的FTP客户端软件FFFTP客户端没有正确地验证FTP服务器所返回的LIST命令响应中包含有目录遍历序列(斜线)的文件名,如果用户受骗从恶意的FTP服务器下载的目录包含有带有恶意文件名的文件的话,就可能导致向用户系统的任意位置写入文件)从而允许他们修改应用程序数据行为,并最终完全控制服务器。目录遍历漏洞浅析

2.攻击载荷

URL 参数

• ../
• ..
• ..;/

Nginx Off by Slash

• https://vuln.site.com/files../

UNC Bypass

• \localhostc$windowswin.ini

3.过滤绕过

•单次替换

– ...//

• URL 编码

. => %2c
/ => %2f
% => %25 (双重URL编码)

• 16 位 Unicode 编码

– u002e

• 超长 UTF-8 编码

– %e0%40%ae

4.防御

目录遍历漏洞浅析

在进行文件操作相关的 API 前,应该对用户输入做过滤。较强的规则下可以使用白名单,仅允许纯字母数字字符等。

若规则允许的字符较多,最好使用当前操作系统路径规范化函数规范化路径后,进行过滤,最后再进行相关调用。

5.参考链接

• Directory traversal by portswigger

https://portswigger.net/web-security/file-path-traversal

• path normalization

https://docs.microsoft.com/zh-cn/archive/blogs/jeremykuhne/path-normalization

• Breaking Parser Logic: Take Your Path Normalization Off and Pop 0days Out defcon

https://i.blackhat.com/us-18/Wed-August-8/us-18-Orange-Tsai-Breaking-Parser-Logic-Take-Your-Path-Normalization-Off-And-Pop-0days-Out-2.pdf

原文始发于微信公众号(猫因的安全):真的是干货 | 目录遍历漏洞浅析

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

发表评论

匿名网友 填写信息