[中间件漏洞]apache漏洞复现

目录

apache未知扩展名解析漏洞

漏洞复现

防范建议

AddHandler导致的解析漏洞

防范建议

Apache HTTPD 换行解析漏洞(CVE-2017-15715)

漏洞复现

防范建议


apache未知扩展名解析漏洞

Apache默认一个文件可以有多个以点分割的后缀,当最右边的后缀无法识别,则继续向左识别,直到识别到合法后缀才进行解析。

哪些后缀Apache不认识? 不在mime.types当中的都不认识 (Multipurpose Internet Mail Extensions)

使用module模式与php结合的所有版本apache存在未知扩展名解析漏洞。

使用fastcgi模式与php结合的所有版本apache不存在此漏洞。

利用此漏洞时必须保证扩展名中至少带有一个.php,不然将默认作为txt/html文档处理。

漏洞复现

在vulhub靶场中实现

[root@server apache_parsing_vulnerability]# docker-compose up -d  --启动靶场



[root@server apache_parsing_vulnerability]# docker-compose ps    --查看端口

打开浏览器访问该端口

在电脑中创建一个文件,文件内容为

<?php
phpinfo()
?>

然后将文件名改为1.php.jpg

 选择文件提交上传

上传成功后访问该文件

 出现phpinfo信息表示成功

防范建议

方法一 

在httpd.conf或httpd-vhosts.conf中加入以下语句,从而禁止文件名格式为.php.的访问权限:

<FilesMatch ".(php.|php3.|php4.|php5.)">
Order Deny,Allow
Deny from all
</FilesMatch>

方法二

如果需要保留文件名,可以修改程序源代码,替换上传文件名中的“.”为“_”: $filename = str_replace('.', '_', $filename);


AddHandler导致的解析漏洞

在有多个后缀的情况下,只要包含.php后缀的文件就会被识别出php文件进行解析,不需要是最后一个后缀

和上面例子一样

最后一个后缀名为.jpg,合法,因为文件名info.php.jpg中包含.php,所以解析为php文件

防范建议

1.在httpd.conf或httpd-vhosts.conf中加入以下语句,从而禁止文件名格式为.php.的访问权限:

<FilesMatch ".(php.|php3.|php4.|php5.)">
Order Deny,Allow
Deny from all
</FilesMatch>

2.把配置不当的文件进行修改


Apache HTTPD 换行解析漏洞(CVE-2017-15715)

Apache HTTPD是一款HTTP服务器,它可以通过mod_php来运行PHP网页。其2.4.0~2.4.29版本中存在 一个解析漏洞,在解析PHP时,1.php\x0a将被按照PHP后缀进行解析,导致绕过一些服务器的安全策略。

影响范围

apache :2.4.0~2.4.29版本

漏洞复现

先创建文件,文件内容为phpinfo

正常上传会出现badfile,无法上传

用bp代理抓包,送到repeater模块

在hex模块里找到1.php

 在07后面插入0a

点击send,没有回显badfile了

访问该文件

 

成功看到info信息,利用成功

防范建议

1.升级到最新版本

2.或将上传的文件重命名为为时间戳+随机数+.jpg的格式并禁用上传文件目录执行

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值