网站安全渗透测试中目录解析漏洞详情

天气逐渐变凉,但渗透测试的热情温度感觉不到凉,因为有我们的存在公开分享渗透实战经验过程,才会让这个秋冬变得不再冷,近期有反映在各个环境下的目录解析漏洞的检测方法,那么本节由我们Sine安全的高级渗透架构师来详细的讲解平常用到的web环境检测点和网站漏洞防护办法。

3.14.1. IIS

3.14.1.1. IIS 6.0

后缀解析 /xx.asp;.jpg

目录解析 /xx.asp/xx.jpg (xx.asp目录下任意解析)

默认解析 xx.asa xx.cer xx.cdx

PROPFIND 栈溢出漏洞

PUT漏洞 WebDAV任意文件上传

3.14.1.2. IIS 7.0-7.5 / Nginx <= 0.8.37

在Fast-CGI开启状态下,在文件路径后加上 /xx.php ,则 xx.jpg/xx.php 会被解析为php文件

3.14.1.3. 其他

在支持NTFS 8.3文件格式时,可利用短文件名猜解目录文件

3.14.2. Nginx

3.14.2.1. Fast-CGI关闭

在Fast-CGI关闭的情况下, Nginx 仍然存在解析漏洞:在文件路径(xx.jpg)后面加上 %00.php , 即 xx.jpg%00.php 会被当做 php 文件来解析

3.14.2.2. Fast-CGI开启

在Fast-CGI开启状态下,在文件路径后加上 /xx.php ,则 xx.jpg/xx.php 会被解析为php文件

3.14.2.3. CVE-2013-4547

“a.jpg\x20\x00.php”

3.14.3. Apache

3.14.3.1. 后缀解析

test.php.x1.x2.x3 ( x1,x2,x3 为没有在 mime.types 文件中定义的文件类型)。Apache 将从右往左开始判断后缀, 若x3为非可识别后缀,则判断x2,直到找到可识别后缀为止,然后对可识别后缀进行解析

3.14.3.2. .htaccess

当AllowOverride被启用时,上传启用解析规则的.htaccess

3.14.3.3. CVE-2017-15715

%0A绕过上传黑名单

3.14.4. lighttpd

xx.jpg/xx.php

3.14.5. Windows

Windows不允许空格和点以及一些特殊字符作为结尾,创建这样的文件会自动取出,所以可以使用 xx.php[空格] , xx.php., xx.php/, xx.php::$DATA 可以上传脚本文件

3.15. Web Cache欺骗攻击

3.15.1. 简介

网站通常都会通过如CDN、负载均衡器、或者反向代理来实现Web缓存功能。通过缓存频繁访问的文件,降低服务器响应延迟。

例如,网站 htttp://域名 配置了反向代理。对于那些包含用户个人信息的页面,如 http://域名/home.php ,由于每个用户返回的内容有所不同,因此这类页面通常是动态生成,并不会在缓存服务器中进行缓存。通常缓存的主要是可公开访问的静态文件,如css文件、js文件、txt文件、图片等等。此外,很多最佳实践类的文章也建议,对于那些能公开访问的静态文件进行缓存,并且忽略HTTP缓存头。

Web cache攻击类似于RPO相对路径重写攻击,都依赖于浏览器与服务器对URL的解析方式。当访问不存在的URL时,如 http://域名/home.php/non-existent.css ,浏览器发送get请求,依赖于使用的技术与配置,服务器返回了页面 http://域名/home.php 的内容,同时URL地址仍然是 http://域名/home.php/non-existent.css,http头的内容也与直接访问 http://域名/home.php 相同,cacheing header、content-type(此处为text/html)也相同。

3.15.2. 漏洞成因

当代理服务器设置为缓存静态文件并忽略这类文件的caching header时,访问

http://域名/home.php/no-existent.css 时,会发生什么呢?整个响应流程如下:

浏览器请求 http://域名/home.php/no-existent.css ;

服务器返回 http://域名/home.php 的内容(通常来说不会缓存该页面);

响应经过代理服务器;

代理识别该文件有css后缀;

在缓存目录下,代理服务器创建目录 home.php ,将返回的内容作为 non-existent.css 保存。

3.15.3. 漏洞利用

攻击者欺骗用户访问 http://域名/home.php/logo.png?www.myhack58.com ,导致含有用户个人信息的页面被缓存,从而能被公开访问到。更严重的情况下,如果返回的内容包含session标识、安全问题的答案,或者csrf token。这样攻击者能接着获得这些信息,因为通常而言大部分网站静态资源都是公开可访问的。

3.15.4. 漏洞存在的条件

漏洞要存在,至少需要满足下面两个条件:

web cache功能根据扩展进行保存,并忽略caching header;

当访问如 http://域名/home.php/non-existent.css 不存在的页面,会返回 home.php 的内容。

3.15.5. 漏洞防御

防御措施主要包括3点:

设置缓存机制,仅仅缓存http caching header允许的文件,这能从根本上杜绝该问题;

如果缓存组件提供选项,设置为根据content-type进行缓存;

访问 http://域名/home.php/non-existent.css 这类不存在页面,不返回 home.php 的内容,而返回404或者302。

对图片上传目录进行脚本权限限制,对上传扩展这里做过滤判断。

如果缓存组件提供选项,设置为根据content-type进行缓存;

对get url的地址进行waf的安全过滤,如果对这些安全防护部署以及渗透测试不熟悉的话,建议可以像专业的网站安全公司来处理解决,国内做的比较好的推荐Sinesafe,启明星辰,绿盟,等等专业的。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:SEO优化专员,转转请注明出处:https://www.chuangxiangniao.com/p/905895.html

(0)
上一篇 2025年1月4日 05:34:00
下一篇 2025年1月4日 05:46:32

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 第三方检测SW-LIMS微服务架构部署

    随着人们的消费意识和权利意识逐渐增强,第三方检测行业得以迅速发展,其市场竞争也越发激烈。第三方检测机构实验室检测系统化、标准化、精细化、专业化已成为在行业内立足与发展的有效竞争力。而科学充分运用实验室信息管理系统(LIMS)提升内部工作效率…

    2025年1月4日
    100
  • 网站安全防护渗透测试常见的攻击方法

    国内对渗透测试以及安全评估的研究起步较晚,并且大多集中在在渗透测试技术上的研究,安全评估方面也有部分企业和研宄团体具有系统的评估方式。然而国内对基于渗透测试的自动化集成系统研宄还非常少,从目前的网络安全态势来看,传统的渗透测试方式己经无法满…

    安全 2025年1月4日
    100
  • 渗透测试 域名状态码协议讲解

    网站上线前需要对网站进行渗透测试,上一节我们Sine安全讲师讲了web的基础知识了解,明白了具体web运行的基础和环境和协议,这一节我们来讨论下域名和DNS工作原理以及http状态码和请求的协议来分析检测中的重点域名收集。 1.3. 域名系…

    2025年1月4日
    100
  • 渗透测试 网站代码审计等基础方法篇

    这几天整理了下网站渗透测试中基础部分的第三节,我们SINE安全渗透工程师对代码安全审计,手工渗透测试检查代码的危险漏洞方法,找出安全问题重点,配合工具扫描来达到测试漏洞的目的,本测试重点仅限于客户授权才能操作,切记忽非法尝试入侵!以下方法只…

    建站经验 2025年1月4日
    100
  • 网站渗透测试详细检测方法

    越来越多的网站以及app手机端客户注重安全渗透测试服务,上线前必须要对平台进行全面的预渗透测试找出安全漏洞以及BUG,很多客户找我们SINE安全,做渗透测试服务的时候对具体的流程可能不太了解,下面我们把具体的渗透测试方法流程大体写的全面一点…

    建站经验 2025年1月4日
    100
  • 复检渗透测试网站安全攻守项目分析

    最近我们Sinesafe参加的几家机构的渗透测试防守方防护方案评估复查,部分防守方缺乏对攻击者的正确认知,攻击者的手法已经比较高超了,不扫描,不落地,污染日志等都很普及了。同时也要正确认知对手:攻防演练中,攻击者并非无所不能,他们面临着和防…

    2025年1月4日
    100
  • 实战渗透测试判断网站信息内容讲解

    上一节讲到渗透测试中的代码审计讲解,对整个代码的函数分析以及危险语句的避让操作,近期很多客户找我们Sine安全想要了解如何获取到网站的具体信息,以及我们整个渗透工作的流程,因为这些操作都是通过实战累计下来的竟然,渗透测试是对网站检查安全性以…

    建站经验 2025年1月4日
    100
  • 渗透测试对网站注入攻击方法剖析

    国庆即将到来,前一期讲到获取网站信息判断所属环境以及各个端口的用处和弱口令密码利用方法,这期仍有很多客户找到我们Sine安全想要了解针对于SQL注入攻击的测试方法,这一期我们来讲解下注入的攻击分类和使用手法,让客户明白漏洞是如何产生的,会给…

    建站经验 2025年1月4日
    100
  • 渗透测试XSS跨站攻击检测手法

    国庆假期结束,这一节准备XSS跨站攻击渗透测试中的利用点,上一节讲了SQL注入攻击的详细流程,很多朋友想要咨询具体在跨站攻击上是如何实现和利用的,那么我们Sinesafe渗透测试工程师为大家详细的讲讲这个XSS是如何实现以及原理。 XSS全…

    2025年1月4日
    100
  • 渗透测试中遇到的越权漏洞该如何解决

    渗透测试在网站,APP刚上线之前是一定要做的一项安全服务,提前检测网站,APP存在的漏洞以及安全隐患,避免在后期出现漏洞,给网站APP运营者带来重大经济损失,很多客户找到我们SINE安全公司做渗透测试服务的同时,我们积累了十多年的漏洞检测经…

    建站经验 2025年1月4日
    100

发表回复

登录后才能评论

联系我们

156-6553-5169

在线咨询: QQ交谈

邮件:253000106@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

联系微信