2007年5月24日星期四

[Tips]PHP Bugs FAQ

author axis
date:2007-03-15

这个月是Month of PHP Bugs
请参考http://www.php-security.org 以及 http://www.milw0rm.com

很多朋友疑惑PHP漏洞的利用和意义,我在这里简单写个FAQ,也希望大家可以提些建议,一起补充。

Q: Month of PHP Bugs是怎么回事?
A: Harden-PHP的Stefan Esser将在这个月发布一系列的PHP漏洞,因此本月称作:Month of PHP Bugs. 这里指的漏洞不是某个具体应用的(比如remote include、sql injection),而是从php内核的角度,针对某些函数的漏洞。



Q:PHP漏洞能提权吗?
A:PHP漏洞一般与运行的webserver紧密相关,最常见的是apache,所以一般来说,php漏洞利用成功后(比如溢出),还是webserver的权限,所以不存在提权一说,就是说原来是什么权限,溢出后就是什么权限。


Q:PHP漏洞不能提权那可以做什么?
A:可以用来绕过PHP的safemode,或者是类似的一些限制。比如这次的MOPB里,有的漏洞还可以搜索ssl的私钥,或者修改php.ini,这些都可能导致获得更大的权限。



Q: PHP漏洞的远程利用是怎么回事?
A:PHP漏洞一般是出在某个函数上,如果某些应用,比如论坛(PHPBB)用到了该函数来处理用户提交过来的数据,那么就可能是存在漏洞的,这个时候就可以远程利用该php漏洞了。否则只能本地利用。



Q: PHP漏洞好利用吗?
A: PHP+Apache的组合用的最多的是Unix类平台,比如linux和solaris等,但是在windows下也有不少。所以针对这两大类, shellcode肯定是不同的。同时有的PHP漏洞还与环境有关,比如以前的PHP的sscanf漏洞,就与文件路径有关。但有时候还是能找到比较通用的方法,在exploit的利用技术上,这里就不多做探讨了。但是对于高版本的Redhat,因为有默认开启的Exec-shield的保护,所以会让 PHP溢出失败,暂时还没有什么好的办法,在浏览器地址栏调用的方式下,可以绕过这个保护的。更多的信息可以参考我写的关于Exec-shield的文章。




--EOF--

没有评论: