摘要: 如果还有人记得我当年发在80sec上的那篇《Linux 系统文件描述符继承带来的危害》的话,应该记得当时这个问题已经被apache官方使用FD_CLOSEXEC修复了:由于在系统底层exec其他进程的时候,所有开启的FD就会被自动关闭,因此就没有办法使用system等php函数,在子进程如bash中继续操作原有开启的高权限文件描述符。
但是最近PHP 5.3.6引进了一个新特性:利用fopen("php://fd/fd_number", "w")的形式,可以直接打开并操作当前进程的文件描述符。基本相当于一个fdopen函数调用。
结合这两点,由于php本身的一种运行方式是以apache的mod方式在apahe进程中存在的,所以对于php来说,他的自身进程也就是apache的进程,所有apache原来在root下打开的文件描述符,他都能操作。于是乎,原有修补完毕的漏洞,经过PHP新功能的妙手回春,又重现江湖了。
阅读全文
摘要: PHP 5.1.5 在8.17号发布了,修补了几个绕过open_basedir的漏洞,我们一个个来看:
Quote form http://www.php.net/release_5_1_5.php
--------------------------------------------------------------------------------
Added missing safe_mode/open_basedir checks inside the error_log(), file_exists(), imap_open() and imap_reopen() functions.
Fixed possible open_basedir/safe_mode bypass in cURL extension and with realpath cache.
-----------------------------------------------------------------------------
阅读全文
摘要: something about punbb unset()
阅读全文
摘要: zend_hash_del_key_or_index_vulnerability要用到的,写了个c方便计算 :)
阅读全文
摘要: Something about PHP substr_compare() Vulnerability
阅读全文