Apache Mod_Access_Referer NULL指针引用远程拒绝服务攻击漏洞 CVE-2003-1054 CNNVD-200304-113 CNVD-2003-1073 CNVD-2009-04705

5.0 AV AC AU C I A
发布: 2003-04-16
修订: 2008-09-05

Apache Mod_Access_Referer模块可实现基于\"Referer\" HTTP头字段的访问控制。 Mod_Access_Referer模块解析非法HTTP Referer头字段时存在问题,远程攻击者可以利用这个漏洞对Apache进行拒绝服务攻击。 在find_allowdeny()函数中,uri_components结构的\"uptr\"由Apache ap_parse_uri_components函数初始化,这个结构\"hostname\"指针回提供给is_ip()函数用于判断由referer字段的值是否为IP地址或主机名。相关代码如下: --- -snip snip- --- ap_parse_uri_components (r->pool, ap_table_get (r->headers_in, \"Referer\"), &uptr); if (!is_ip (uptr.hostname)) { --- -snip snip- --- static int is_ip (const char *host) { /* this just tests if it matches [\d.]* */ /* XX is a better test needed? */ while ((*host == \'\'.\'\') || ap_isdigit (*host)) host++; return (*host == \'\'\0\'\'); } --- -snip snip- --- 当服务器接收到不正确的referer头字段,ap_parse_uri_components会不初始化uptr.hostname指针,这就导致is_ip()会读取NULL指针而发生段错误,产生服务崩溃。

0%
当前有2条漏洞利用/PoC
当前有1条受影响产品信息