网站建设行业文章6
当前位置: 首页 -> 企业资讯 -> 行业文章 -> PHP Execute Command Bypass Disable_functions
鸿大千秋新闻顶部侧栏



PHP Execute Command Bypass Disable_functions



先简单说一下php调用mail()函数的过程。
看到源码ext/mail.c

236行:

从INI中获得sendmail_path变量。我们看看php.ini里是怎么说明的:

注释中可以看到,send_mail默认值为”sendmail -t -i”.

extra_cmd(用户传入的一些额外参数)存在的时候,调用spprintf将sendmail_path和extra_cmd组合成真正执行的命令行sendmail_cmd 。不存在则直接将sendmail_path赋值给sendmail_cmd 。
如下:

之后执行:

将sendmail_cmd丢给popen执行。
如果系统默认sh是bash,popen就会丢给bash执行。而之前的bash破壳(CVE-2014-6271)漏洞,直接导致我们可以利用mail()函数执行任意命令,绕过disable_functions。

影响版本:php 各版本

修复方法:修复CVE-2014-6271

给出POC(http://www.exploit-db.com/exploits/35146/)如下:

2014111814053525079

 

[via@phith0n ]



鸿大千秋网站建设团队敬上







Copyright © hongdaChiaki. All Rights Reserved. 鸿大千秋 版权所有


联系方式:
地址: 深圳市南山区招商街道沿山社区沿山路43号创业壹号大楼A栋107室
邮箱:service@hongdaqianqiu.com
备案号:粤ICP备15078875号