web安全之目录穿越

这篇具有很好参考价值的文章主要介绍了web安全之目录穿越。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

简介:

目录穿越(又称目录遍历diretory traversal/path traversal)是通过目录控制序列 ../ 或者文件绝对路径来访问存储在文件系统上的任意文件和目录的一种漏洞。

原理:

web应用对于url请求没有进行合理的审查与过滤,导致构造目录控制序列直接传入文件系统apl。

危害:

对于存在该漏洞且文件权限没有严格控制的文件系统,攻击者可以肆意的浏览敏感系统文件、配置文件及日志文件等。

常见攻击手法:

  1. Url参数:../(父级目录,js)   ..\(父级目录,php + dev css)
  2. Nginx off by Slash:https://xxx.xx.com/files../
  3. UNC Bypass(通用命名规范Universal Naming Convention):\localhost\c$\windows\win.ini

常用绕过手段:

  1. 单次替换(双写):....//
  2. url编码:.(%2c)  /(%2f)   \(%5c)  %(%25)
  3. 截断绕过(特定文件限制防御时使用):%00

练习实践:

环境:burpsuite官网提供的靶场:Web Security Academy: Free Online Training from PortSwigger

第一关:

关卡提示:在产品图像的显示中包含文件路径遍历漏洞。

目标:为解决实验室,检索/ etc / passwd文件的内容。

web安全之目录穿越,web安全,安全

 根据提示随机打开一个产品信息:

web安全之目录穿越,web安全,安全

F12搜集有用的页面信息,按照官方给的提示,寻找有关图片的信息 

web安全之目录穿越,web安全,安全

 根据信息构造url,或者右击图片打开图片的完整显示,这里我们就可以用前面说到的攻击手法进行测试了

web安全之目录穿越,web安全,安全

 修改url后面部分,改为绝对路径filename=/etc/passwd 发现行不通

web安全之目录穿越,web安全,安全

采用目录序列控制符:../ 构造路径filename=../etc/passwd、filename=../../etc/passwd、filename=../../../etc/passwd……进行逐一尝试(因为咱并不知道该目录的级别,当然如果熟悉linux目录结构的话,也可一部到位),在filename=../../../etc/passwd尝试中,发现返回页面有所不同,但因为某些错误无法显示 

web安全之目录穿越,web安全,安全

 改用burpsuite抓包改包,成功执行web安全之目录穿越,web安全,安全

第二关:

关卡提示:在产品图像的显示中包含文件路径遍历漏洞。应用程序阻止遍历序列,但将提供的文件名视为相对于默认工作目录。

目标:要解决实验室,需要检索/ etc / passwd文件的内容

根据提示重复第一关的操作,直接用相对路径成功获取:filename=/etc/passwd

 web安全之目录穿越,web安全,安全

 文章来源地址https://www.toymoban.com/news/detail-718014.html

第三关:

关卡提示:在产品图像的显示中包含文件路径遍历漏洞。应用程序在使用之前从用户提供的文件名中剥离路径遍历序列。

目标:为解决实验室,检索/ etc / passwd文件的内容

本关加了防御措施,对目录控制序列符号进行了处理,需要绕过。绕过一般首选用编码绕过,不过我试后发现不行,重新选择单次替换进行绕过,构造filename=....//....//....//etc/passwd(有了第一关的基础就不需要探测这是几级目录了)

web安全之目录穿越,web安全,安全

 

第四关:

关卡提示:在产品图像的显示中包含文件路径遍历漏洞。应用程序对包含路径遍历序列的输入进行分块。然后在使用之前对输入进行URL解码。

目标:为解决实验室,检索/ etc / passwd文件的内容

这关提示很明确,就是利用编码绕过:filename=%2c%2c%2f%2c%2c%2f%2c%2c%2fetc/passwd

失败(将../编码):

web安全之目录穿越,web安全,安全

 Filename=%2c%2c/%2c%2c/%2c%2c/etc/passwd(将 . 编码)失败:

web安全之目录穿越,web安全,安全

Filename=..%2f..%2f..%2fetc/passwd(将/编码)失败:

web安全之目录穿越,web安全,安全 

 Filename=..%252f..%252f..%252fetc/passwd(将 / 和 % 编码)成功:

web安全之目录穿越,web安全,安全

 

第五关

关卡提示:在产品图像的显示中包含文件路径遍历漏洞。应用程序通过请求参数传输完整的文件路径,并验证所提供的路径以预期的文件夹开始。

目标:为解决实验室,检索/ etc / passwd文件的内容

由提示可知,该关采用了固定文件路径开头的防御措施,这也意味着filename=/var/www/images/,或者更上一层/var/www/,甚至/var/ ,不能改动,从长到短逐一进行测试:

Filename=/var/www/images/../../../etc/passwd,成功:

web安全之目录穿越,web安全,安全

 

第六关:

关卡提示:在产品图像的显示中包含文件路径遍历漏洞。应用程序验证所提供的文件名以预期的文件扩展名结束。

目标:为解决实验室,检索/ etc / passwd文件的内容

本关对文件类型做了限制,采用%00进行截断:

Filename=../../../etc/passwd%00.jpg

web安全之目录穿越,web安全,安全

总结:虽然在提示下,很容易便能达到目的,但是在实战中我们只能自己去提取有用的信息为攻击做铺垫,可能需要用到各种绕过方式进行组合尝试才能达到我们想要的结果。

防御:

  1. 避免将用户提供的输入完全传递给文件系统API;
  2. 白名单验证,如仅允许纯字母或数字字符等,在验证所提供的输入之后,应用程序应该将输入追加到基本目录中,并使用平台文件系统API来规范化路径;
  3. 黑名单(将截断符拉黑)加文件类型限制。

 

到了这里,关于web安全之目录穿越的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Nginx目录穿越漏洞

    影响版本 :全版本 影响说明 :信息泄漏 环境说明 :Nginx 1.13.0 漏洞复现: Nginx的目录穿越漏洞严格定义的话,并非是漏洞,而是Nginx的特性,由于运维人员或者开发人员配置错误而导致的漏洞。 该问题出现在Nginx的虚拟目录配置上,也就是Alias。Alias正如其名,alias指定的路

    2024年02月16日
    浏览(40)
  • Nginx漏洞修复之目录穿越(目录遍历)漏洞复现及修复

    前言 Nginx是一个高性能的HTTP和反向代理服务器,经常被做为反向代理,动态的部分被proxy_pass传递给后端端口,而静态文件需要Nginx来处理。 漏洞出现在服务器的静态文件中。如果静态文件存储在/home/目录下,而该目录在url中名字为files,那么就需要用alias设置目录的别名 。

    2024年02月04日
    浏览(43)
  • Nginx/OpenResty目录穿越漏洞复现

    2020年03月18日, 360CERT监测发现 openwall oss-security 邮件组披露了两枚漏洞。在特定配置下 nginx/openresty 存在 内存泄漏漏洞/目录穿越漏洞。 Nginx 是异步框架的网页服务器,也可以用作反向代理、负载平衡器和HTTP缓存。 OpenResty是一个基于nginx的Web平台,它对nginx增加LuaJIT引擎使其

    2023年04月10日
    浏览(39)
  • nginx目录穿越漏洞(insecure-configuration)

    该漏洞是由于配置错误导致的 这个常见于Nginx做反向代理的情况,动态的部分被proxy_pass传递给后端端口,而静态文件需要Nginx来处理。 vulhub靶场   进入nginx/insecure-configuration 运行docker-compose up -d 8081端口为目录穿越漏洞  最终结果:   我们打开docker-compose.yml文件,看看里面的

    2024年02月09日
    浏览(35)
  • 目录穿越/遍历漏洞及对其防御方法的绕过

      目录穿越(目录遍历)是一个Web安全漏洞,攻击者可以利用该漏洞读取运行应用程序的服务器上的任意文件。 这可能包括应用程序代码和数据,后端系统的登录信息以及敏感的操作系统文件。目录穿越不仅可以访问服务器中的任何目录,还可以访问服务器中任何文件的内

    2024年02月11日
    浏览(38)
  • 使用WAF防御网络上的隐蔽威胁之目录穿越

    目录穿越(Directory Traversal)是一种网络安全攻击手段,也被称为路径穿越。 这种攻击允许攻击者访问存储在Web服务器文件系统上的文件和目录,这些文件和目录原本不应该对用户可见或可访问。 通过利用安全漏洞,攻击者可以通过修改URL的路径来访问系统文件或其他关键目

    2024年01月22日
    浏览(40)
  • web安全之目录遍历

    目录遍历(也称为文件路径遍历)是一个 Web 安全漏洞,允许攻击者读取运行应用程序的服务器上的任意文件。这可能包括应用程序代码和数据、后端系统的凭据以及敏感的操作系统文件。在某些情况下,攻击者可能能够写入服务器上的任意文件,从而允许他们修改应用程序

    2023年04月08日
    浏览(39)
  • 网络安全——Web目录扫描

    一、Web目录扫描原因 1、发现网站后台管理登录页面,可以尝试发现漏洞,进行爆破 2、寻找未授权页面,有些网站在开发时有一些没有授权的页面,在上线后没有及时清除,可以利用这个弱点进行入侵 3、寻找网站更多隐藏信息 二、Web目录扫描方法 1、robots.txt  例:可以看到

    2024年02月05日
    浏览(46)
  • 049-WEB攻防-文件上传&存储安全&OSS对象&分站&解析安全&解码还原&目录执行

    1、文件上传-安全解析方案-目录权限解码还原 2、文件上传-安全存储方案-分站存储OSS对象 演示案例: ➢文件-解析方案-执行权限解码还原 ➢文件-存储方案-分站存储OSS对象 ➢实例-解析存储-传输分站OSS存储 将源码复制到对应目录下,并创建image.wusuowei.com文件夹,存储源码

    2024年04月12日
    浏览(59)
  • nginx上web服务的基本安全优化、服务性能优化、访问日志优化、目录资源优化和防盗链配置简介

    目录 一.基本安全优化 1.隐藏nginx软件版本信息 2.更改源码来隐藏软件名和版本 (1)修改第一个文件(核心头文件),在nginx安装目录下找到这个文件并修改 (2)第二个文件 (3)第三个文件,内置响应信息页面 (4)第四个文件 (5)重新编译安装并重启 3.更改nginx服务的默

    2024年02月13日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包