网络安全进阶学习第六课——服务器解析漏洞

这篇具有很好参考价值的文章主要介绍了网络安全进阶学习第六课——服务器解析漏洞。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


1、概念

解析漏洞主要是一些特殊文件被Apache、IIS、Nginx等Web服务器在某种情况下解释成脚本文件格式并得以执行而产生的漏洞


2、Apache解析漏洞 CVE-2017-15715

影响范围:2.4.0~2.4.29版本

此漏洞形成的根本原因,在于 , 正则表达式中 , 正则表达式中 ,正则表达式中不仅匹配字符串结尾位置,也可以匹配\n 或 \r ,在解析PHP时,1.php\x0A将被按照PHP后缀进行解析,导致绕过一些服务器的安全策略。

上传文件test.php. 抓包 修改 php后面的点(2e) 为 换行(0a)
访问 test.php%0a


3、Apache AddHandler解析漏洞

Apache默认一个文件可以有多个后缀名,每次识别从右到左识别,当最右边的后缀无法识别时,则继续向左识别。mime.types中记录apache可识别的后缀名

添加AddHandler,使得任何文件只要包含.php后缀名的文件都会被当作php文件解析为了使php文件可以被解析,用户自己添加了AddHandler:AddHandler application/xhttpd-php .php


4、IIS6 解析漏洞(;)

基于文件名:该版本默认会将*.asp;.jpg此种格式的文件名,当成asp解析。

原理是服务器默认不解析 ; 号及其后面的内容相 当于截断


5、IIS6 解析漏洞(*.asp/目录)

基于文件夹名,该版本默认会将 *.asp/目录下的所有文件当成asp解析。

当在网站下建立文件夹的名字为*.asp、*.asa、*.cer、*.cdx 文件夹,那么其目录内的任何扩展名的文件都会被IIS当做asp文件来解释并执行。

注意:微软不认为这一个是漏洞,因为正常情况下,是无法创建 *.asp 命名的文件夹的。


6、IIS7 解析漏洞(ISAP或CGI的模式下)

服务器是使用IIS7环境,并且在ISAP或CGI的模式下,在任意文件,如test.jpg后面加上 /.php ,会自动将test.jpg解析为php文件。

例如:127.0.0.1/test.jpg/.php 会被解析成 127.0.0.1/test.php


7、nginx解析漏洞(cgi.fix_pathinfo)

nginx查看url,得到.php结尾,将路径传递给php fastcgi处理程序,nigin传递给php的路径为
网络安全进阶学习第六课——服务器解析漏洞,web安全,web安全,学习

php根据url映射,在服务器寻找xxx.php文件,但是xxx.php文件不存在,由于cgi.fix_pathinfo是默认开启。php会继续检查 路径存在的文件,并将多余部分当作PATH_INFO,接着找到文件存在.jpg文件,后以php形式执行.jpg内容,并将/xxx.php 存储在PATH_INFO后丢弃。
网络安全进阶学习第六课——服务器解析漏洞,web安全,web安全,学习

  • 举例来说:
    1)上传了一个图片木马文件:upload/1.jpg
    2)然后访问方式是:upload/1. jpg /1.jlkk/1.php
    3)这时后系统会从后面开始找,先去找1.php,没找到;接着往前找1.jlkk,也没找到;再往前找1. jpg,找到了。
    4)系统就会把找到的1.jpg来当成是最后的一个1.php来当成PHP文件执行。

8、nginx解析漏洞(%00空字节)

Nginx如下版本: 0.5.*、0.6.*、0.7 <= 0.7.65、0.8 <= 0.8.37 该漏洞不受cgi.fix_pathinfo影响,当其为0时,依旧解析。

  1. 生成一个upload/info.jpg格式的木马文件
  2. 使用burp抓包,访问info.jpg,修改为info.jpg…php , 在16进行模式下,修改jpg后面的 . ,为00
  3. 访问时就直接访问upload/info.jpg .php
  4. 这时就直接会把info.jpg当成info.php来执行。

9、总结

从攻击者的角度来给上传分类:

1)轻量级检测绕过

a.绕过前端JavaScript检测:使用Burp抓包改包。
b.绕过服务器端MIME类型检测:使用Burp抓包改包。

2)路径/文件扩展名检测绕过

黑名单检测方式

  • 文件名大小写绕过;
  • 名单列表绕过;
  • 特殊文件名绕过;
  • 0x00截断绕过;
  • .htaccess文件攻击;
  • 本地文件包含漏洞;
  • Apache解析漏洞;
  • IIS解析漏洞;
  • Nginx解析漏洞;

白名单检测方式

  • 0x00截断绕过;
  • 本地文件包含漏洞;
  • Apache解析漏洞;
  • IIS解析漏洞;
  • Nginx解析漏洞;

3)文件内容检测方式

对文件进行恶意代码注入,再配合解析漏洞(或文件包含漏洞)。文章来源地址https://www.toymoban.com/news/detail-531996.html


到了这里,关于网络安全进阶学习第六课——服务器解析漏洞的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 网络安全进阶学习第九课——SQL注入介绍

    将 不受信任 的数据作为命令或查询的一部分发送到解析器时,会产生诸如SQL注入、NoSQL注入、OS 注入和LDAP注入的注入缺陷。攻击者的恶意数据可以诱使解析器在 没有适当授权 的情况下执行非预期命令或访问数据。 注入能导致 数据丢失、破坏 或 泄露给无授权方 ,缺乏可审

    2024年02月14日
    浏览(45)
  • 网络安全进阶学习第十课——MySQL手工注入

    重点库: information_schema PHP的网站,常用数据库为MYSQL、PostgreSQL 判断数据库类型: MYSQL:3306 PostgreSQL:5432 MSSQL:1433 使用场景:数据库在页面中存在显示位。 UNION操作符 用于连接两个以上的SELECT语句的结果组合到一个结果集合中。前提是两个select必有 相同列 。 1)首先判断

    2024年02月10日
    浏览(49)
  • 网络安全进阶学习第十四课——MSSQL注入

    强类型数据库,会把数字和字符严格区分的。 有四个默认的数据库: 1、master (重点) 保存着SQL Server实例的配置、权限、数据库定义和其他需要的信息。 2、model 模板数据库。每当创建一个新的数据库(包括系统数据库的TempDB),会创建一个以 Model 数据库为副本数据库,并

    2024年02月14日
    浏览(51)
  • 网络安全进阶学习第二十一课——XXE

    XXE(XML External Entity,XML) 外部实体 注入攻击。 — — 攻击者通过构造 恶意的外部实体 ,当解析器解析了包含“恶意”外部实体的XML类型文件时,便会导致被XXE攻击。XXE漏洞主要由于危险的外部实体引用并且未对外部实体进行敏感字符的过滤,从而可以造成命令执行,目录遍

    2024年02月06日
    浏览(61)
  • 网络安全进阶学习第二十一课——XML介绍

    XML(eXtensible Markup Language),可扩展标记语言,是一种标记语言,使用简单标记描述数据;(另一种常见的标记语言是HTML) XML是一种非常灵活的语言, 没有固定的标签,所有标签都可以自定义 ; 通常 XML被用于信息的传递和记录 ,因此,xml经常被用于充当配置文件。如果把

    2024年02月06日
    浏览(48)
  • 网络安全进阶学习第二课——XSS跨站脚本攻击

    首先了解什么是前端。前端从定义上来讲是指一个网站的前台部分,是展示给用户看的部分。它不需要关注任何业务之间的逻辑处理,只需要安安静静地做好自己,老老实实的把自己最美的一面展示给用户。 Cookie 是在 HTTP 协议下,服务器或脚本可以维护客户工作站上信息的

    2024年02月11日
    浏览(46)
  • 网络安全进阶学习第十一课——MySQL手工注入(2)

    UA是 用户代理(User-Agent) 的缩写,里面含有客户使用的操作系统及版本、CPU 类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等。 一些网站常常通过判断 UA 来给不同的操作系统、不同的浏览器发送不同的页面,因此可能造成某些页面无法在某个浏览器中正

    2024年02月14日
    浏览(59)
  • 网络安全进阶学习第十五课——Oracle SQL注入

    Oracle数据库系统是世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小微机环境。它是一种高效率的、可靠性好的、适应高吞吐量的数据库方案。 Oracle服务默认端口:1521 Oracle和MySQL数据库语法大致相同,结构不太相同。 最大的一

    2024年02月11日
    浏览(44)
  • 网络安全进阶学习第三课——CSRF跨站请求伪造

    会话跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Session。 Cookie是一个保存在客户机中的简单的文本文件,当我们使用自己的电脑,通过浏览器进行访问网页的时候,服务器就会生成一个证书然后返回给浏览器并写入我们的本地电脑,这

    2024年02月12日
    浏览(47)
  • 网络安全进阶学习第十三课——SQL注入Bypass姿势

    1、like,rlike语句,其中rlike是正则 2、大于号,小于号 3、符号:为不等于的意思相当于!= 4、采用regexp函数 5、in 6、between 1、 substring、substrB 2、 locate(str1,str2) 返回str1字符串在str2里第一次出现的位置,没有则返回0; locate(str1,str2, pos ) 返回str1字符串在str2里pos(起始位置)出现

    2024年02月13日
    浏览(49)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包