安全研究

安全漏洞
Mozilla Browser NNTP代码远程堆溢出漏洞

发布日期:2004-12-29
更新日期:2004-12-30

受影响系统:
Mozilla Browser 1.7.3
Mozilla Browser 1.7.2
Mozilla Browser 1.7.1
Mozilla Browser 1.7
不受影响系统:
Mozilla Browser 1.7.5
描述:
CVE(CAN) ID: CVE-2004-1316

Mozilla是开放源代码WEB浏览器。

Mozilla浏览器在处理NNTP协议时存在问题,远程攻击者可以利用这个漏洞进行堆溢出攻击,可能以进程权限执行任意指令。

Mozilla浏览器支持NNTP urls,可使用news://连接任何服务器,不过NNTP处理代码存在一个堆溢出:

char *MSG_UnEscapeSearchUrl (const char *commandSpecificData)
329 {
330     char *result = (char*) PR_Malloc (PL_strlen(commandSpecificData) + 1);
331     if (result)
332     {
333         char *resultPtr = result;
334         while (1)
335         {
336             char ch = *commandSpecificData++;
337             if (!ch)
338                 break;
339             if (ch == '\\')
340             {
341                 char scratchBuf[3];
342                 scratchBuf[0] = (char) *commandSpecificData++;
343                 scratchBuf[1] = (char) *commandSpecificData++;
344                 scratchBuf[2] = '\0';
345                 int accum = 0;
346                 PR_sscanf(scratchBuf, "%X", &accum);
347                 *resultPtr++ = (char) accum;
348             }
349             else
350                 *resultPtr++ = ch;
351         }
352         *resultPtr = '\0';
353     }
354     return result;
355 }

当commandSpecificData指向最后字符为'\\'拷贝到缓冲区时会忽略源字符数组终止符,而导致溢出缓冲区。

精心构建恶意数据,诱使用户处理,可导致以用户进程权限执行任意指令。

<*来源:Maurycy Prodeus (z33d@isec.pl
  
  链接:http://marc.theaimsgroup.com/?l=bugtraq&m=110436284718949&w=2
*>

建议:
厂商补丁:

Mozilla
-------
Mozilla 1.7.5已经修正此漏洞,建议用户下载使用:

http://www.mozilla.org/

浏览次数:2727
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障