IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> PHP知识库 -> Apache HTTPD 换行解析漏洞(CVE-2017-15715) -> 正文阅读

[PHP知识库]Apache HTTPD 换行解析漏洞(CVE-2017-15715)

还是借助BMZCTF这个网站来复现漏洞,不需要自己再启动环境了。

1. 什么是解析漏洞

解析漏洞指的是服务器应用程序在解析某些精心构造的后缀文件时,会将其解析成网页脚本,从而导致网站的沦陷。大部分解析漏洞的产生都是由应用程序本身的漏洞导致的。

2.常见的解析漏洞

1.IIS5.x-6.x解析漏洞

使用 IIS5.x-6.x 版本的服务器,大多为Windows server 2003,网站比较古老,开发语句一般为asp;该解析漏洞也只能解析asp文件,不能解析aspx文件。

  • 目录解析漏洞
    IIS6.0中的目录解析漏洞,如果网站目录中有一个 *.asp/ 的文件夹,那么该文件夹下面的一切内容都会被 IIS 当作 asp 脚本来执行,如/xx.asp/xx.jpg
    在这里插入图片描述
    在这里插入图片描述

  • 文件解析漏洞
    在IIS6.0上,分号;后面的不解析。
    *.asp;.jpg会被解析为*.asp即将jpg图片格式解析为了asp可执行脚本文件。
    在这里插入图片描述

解析文件类型
IIS6.0 默认的可执行文件除了asp还包含这三种 :

  • /test.asa
  • /test.cer
  • /test.cdx

2.Apache(1.x、2.x)解析漏洞

Apache解析文件的时候是按照从右向左的方式,如请求http://192.168.11.132/test1/aaa.ccc.php.ras,Apache无法解析.ras,向左解析到.php,于是就把该请求交给php模块去处理,于是文件aaa.ccc.php.ras就会被解析为php可执行文件,如果在这个文件中写入php可执行代码,就可以利用漏洞,这就是Apache解析漏洞,该漏洞在旧版本中存在,但是在新版本中修复了。
如果遇到无法解析的文件后缀类型,会按默认处理方式认为是txt文本文件,如http://192.168.11.132/test1/asa.asd.sss.cdf
在这里插入图片描述

3.漏洞描述

Apache HTTPD是一款HTTP服务器,它可以通过mod_php来运行PHP网页。在解析PHP时,xx.php\x0A将被按照PHP后缀进行解析,导致可以绕过一些服务器的安全策略。
在这里插入图片描述
可以看到这里获取文件名是需要单独post一个name的,因为如果通过$_FILES['file']['name']获取文件名的话,会把\x0a自动去除,所以$_FILES['file']['name']这种方式获取文件名就不会造成这个漏洞。

该程序是采用黑名单的形式,如果文件后缀名不在名单内即可上传,所以 a.php\x0A不在黑名单列表中,可以上传。但是x0A是换行符,所以apache会直接忽略,将其当成php来执行。

4.漏洞影响

HTTPD的版本2.4.0~2.4.29都有可能存在该漏洞

5.漏洞复现

打开靶场看一下
在这里插入图片描述
上传一个1.php,发现返回bad file,被拦截了
在这里插入图片描述
这里有一点需要注意,我们不能直接在xj.php文件名后面加上%0a,因为Get传参他是有URL的编码解码的,但是我们这里是POST传参,他没有,所以我们通过Hex编码的方式手动给他加上.
这里有一点需要注意,我们不能直接在xj.php文件名后面加上%0a,因为Get传参他是有URL的编码解码的,但是我们这里是POST传参,他没有,所以我们通过Hex编码的方式手动给他加上

burp抓包,在Hex选项卡,php后面0d的位置右键-Insert byte,添加一个0a,然后发包,成功上传
在这里插入图片描述
修改之后就可以正常上传了
在这里插入图片描述
访问刚才上传的/1.php%0a,发现能够成功解析,但这个文件不是php后缀,说明目标存在解析漏洞
在这里插入图片描述
可以用蚁剑连接一下,连接成功
在这里插入图片描述
也可以用phpinfo()
在这里插入图片描述

6.修复建议

  • 升级到最新版本
  • 对上传文件重命名
  • 禁用上传文件的执行权限
  PHP知识库 最新文章
Laravel 下实现 Google 2fa 验证
UUCTF WP
DASCTF10月 web
XAMPP任意命令执行提升权限漏洞(CVE-2020-
[GYCTF2020]Easyphp
iwebsec靶场 代码执行关卡通关笔记
多个线程同步执行,多个线程依次执行,多个
php 没事记录下常用方法 (TP5.1)
php之jwt
2021-09-18
上一篇文章      下一篇文章      查看所有文章
加:2022-04-22 18:16:01  更:2022-04-22 18:16:44 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/18 15:01:58-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码