安全中级3:apache中间件漏洞

一、apache换行解析漏洞(apache版本在2.4.0~2.4.29)

1.原理

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

2.漏洞复现

(1)创建一个1.php的文件内容如下

<?php phpinfo(); ?>

(2)在浏览器打开http:192.168.191.129:8080

(3)上传我们刚才的1.php文件

(4)打开抓包工具burpsuit抓取数据包

(5)修改我们的文件名,在1.php后面加一个%0a换行符

(6)上传 

(7)在次抓包,修改请求参数为get /1.php%0a

3.防御

        在上传文件的时候采用白名单的限制,或者升级apache的版本

二、apache多后缀解析漏洞

1.原理

        运维人员在配置http的默认配置文件的时候,开启了AddHandler application/x-httpd-php .php,虽然限制住了php文件,但是我们可以添加后缀.jpg,只要我们的后缀含有一个php文件就可以解析,没必要是最后一个后缀。

2.漏洞复现

(1)访问http:// 192.168.191.129:80

(2)上传一个1.php文件内容如下

<?php phpinfo(); ?>

(3)上传

(4)上传上述的文件,我们发现无法进行上传,我们修改我们的后缀名为.jpg,再次上传文件

(5)上传文件成功,访问http://192.168.191.129/uploadfiles/1.php.jpg

3.防御

        运维人员在运维配置的时候,尽量不要开启AddHandler application/x-httpd-php .php,这是由于我们的运维人员错误配置导致的。

三、apache SSI远程命令执行漏洞

1.原理

       我们上传php文件的时候,我们的服务器拒绝上传,但是 apache在配置文件的http.conf的时候开启了SSI(服务器端包含)服务,允许我们的html页面上传shtml文件,而我们的cgi是前端的一个脚本,我们利用他的语法执行任意的命令。

2.漏洞的复现

(1)创建一个以shtml结尾的文件1.shtml,内容如下

<!--#exec cmd="id" -->

(2)访问我们的网页,http://192.168.191.129:8080/upload.php,上传一个php文件

 

(3)我们发现上传失败,我们重新上传1.shtml

(4)抓包,上传

(5)修改请求参数get /1.shtml

3.防御

        运维人员在配置我们http.conf文件的时候尽量不要去开启我们的SSI服务

四、

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值