时间:2021-05-24
php5.2.3在处理CGI的时候,由于一编程错误(缺少括号),错误计算一字符串长度,导致堆缓冲溢出,可能远程执行任意代码。
触发方式:配置.php到php.exe的CGI映射,请求GET /test.php/aa HTTP/1.1错误发生在php-5.2.3\sapi\cgi\cgi-man.c line 886:int path_translated_len = ptlen env_path_info ? strlen(env_path_info) : 0;程序应该是int path_translated_len = ptlen (env_path_info ? strlen(env_path_info) : 0);程序处理流程:main()
{
......
init_request_info(TSRMLS_C);
......}static void init_request_info(TSRMLS_D)
{
......
int path_translated_len = ptlen env_path_info ? strlen(env_path_info) : 0;
......
path_translated = (char *) emalloc(path_translated_len 1);
......
if (env_path_info) {
memcpy(path_translated ptlen, env_path_info, path_translated_len - ptlen);
}}
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Web服务器存在的主要漏洞包括物理路径泄露,CGI源代码泄露,目录遍历,执行任意命令,缓冲区溢出,拒绝服务,SQL注入,条件竞争和跨站脚本执行漏洞,和CGI漏洞
缓冲区溢出漏洞。缓冲区溢出漏洞是指用户在进行Web系统的应用中,发出一个非常复杂的请求,但是系统却无法对这个请求做出有效处理时出现的漏洞。在用户发出超长请求后,
前言:MS07-029,Windows域名系统(DNS)服务器服务的远程过程调用(RPC)管理接口中存在基于堆栈的缓冲区溢出。漏洞的前提是没打补丁,开启DNS服
前言:MS07-029,Windows域名系统(DNS)服务器服务的远程过程调用(RPC)管理接口中存在基于堆栈的缓冲区溢出。漏洞的前提是没打补丁,开启DNS服
前言: MS07-029,Windows域名系统(DNS)服务器服务的远程过程调用(RPC)管理接口中存在基于堆栈的缓冲区溢出。漏洞的前提是没打补丁,开启DN