CGIphp5.2.3远程缓冲区溢出漏洞
点评:当php5.2.3处理CGI,由于编程错误(没有括号),它是计算一个字符串的长度错误,造成堆缓冲区溢出,并能执行远程代码。触发方式:配置CGI映射。PHP php.exe,并请求得到 /测试。PHP / AA HTTP / 1.1
在php-5.2.3sapicgicgi-man发生错误。C线886:
国际path_transl
当php5.2.3处理CGI,由于编程错误(没有括号),由一个字符串的长度计算错误,导致堆溢出,并远程执行任意代码。
触发方式:配置CGI映射。PHP php.exe,并请求得到 /测试。PHP / AA HTTP / 1.1
在php-5.2.3 CGI CGI SAPI人发生错误。C线886:
国际path_translated_len = ptlen env_path_info strlen(env_path_info):0;
程序应该是
国际path_translated_len = ptlen(env_path_info strlen(env_path_info):0);
程序处理流程:
(主)
{
......
init_request_info(tsrmls_c);
......
}
静态init_request_info(tsrmls_d)
{
......
国际path_translated_len = ptlen env_path_info strlen(env_path_info):0;
......
path_translated =(char *)emalloc(path_translated_len 1);
......
如果(env_path_info){
Memcpy(path_translated ptlen,env_path_info,path_translated_len - ptlen);
}
}