安全研究
安全漏洞
Tetex mkind.c命令行参数缓冲区溢出漏洞
发布日期:2007-05-07
更新日期:2007-05-18
受影响系统:teTeX teTeX 3.0.0
teTeX teTeX 2.0.2
描述:
BUGTRAQ ID:
23872
CVE(CAN) ID:
CVE-2007-0650
teTeX是Linux上最常用的编辑器之一,几乎所有的Linux发行版都内置的这个软件。
teTeX在处理超长的路径名参数时存在缓冲区溢出漏洞,本地攻击者可能利用此漏洞提升自己的权限。
teTeX的mkind.c文件中的open_sty函数没有正确验证用户通过“-s”选项提供的参数数据:
150 /* style file */
151 case 's':
152 argc--;
153 if (argc <= 0)
154 FATAL("Expected -s <stylefile>\n","");
155 open_sty(*++argv);
156 sty_given = TRUE;
157 break;
sty_fn仅为72个字符,请见mkindex.h:
56 char sty_fn[LINE_MAX];
(gdb) print LINE_MAX
$2 = 72
(gdb)
这允许恶意攻击者覆盖sty_fn[]缓冲区后的任意数据,导致执行任意指令。
此外mkind.c文件中的check_idx函数中还存在堆溢出漏洞,但由于无法控制覆盖地址,因此基本不可利用。
<*来源:Mark Richters
链接:
https://bugzilla.redhat.com/bugzilla/long_list.cgi?buglist=225491
*>
测试方法:
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
makeindex -s
/home/mr/perforce/tools/dblatex-0.2.3/share/dblatex/latex/scripts/doc.ist
建议:
厂商补丁:
teTeX
-----
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
http://www.tug.org/teTeX/浏览次数:2735
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载 绿盟科技给您安全的保障 |