安全研究
安全漏洞
zkfingerd say()远程格式串溢出漏洞
发布日期:2002-12-16
更新日期:2002-12-23
受影响系统:zkfingerd zkfingerd 0.9.1
描述:
BUGTRAQ ID:
6404
zkfingerd是一款开放源代码的可替代标准finger的守护程序。
zkfingerd多个函数对用户输入缺少正确过滤,远程攻击者可以利用这些漏洞进行格式串溢出攻击,可能以zkfingerd进程的权限在系统上执行任意指令。
第一个格式字符串漏洞存在于log.c的putlog()函数中,其中使用了不安全的syslog()调用:
..
syslog(LOG_INFO, c);
..
通过finger一个使用格式字符串的用户名,可以导致产生格式字符串漏洞,如果攻击者指定的用户名包含"%n"等字符,可能以任意值覆盖内存地址而以zkfingerd进程在系统上执行任意指令。
第二个漏洞存在与say()函数中:
void
say(char *fmt, ...)
{
va_list ap;
va_start(ap, fmt);
vprintf(fmt, ap);
va_end(ap);
printf("\r\n");
fflush(stdout);
return;
}
file_list()函数会调用say(),由于输入参数可被用户控制,所以提交包含恶意格式字符串的输入可导致可能以zkfingerd进程在系统上执行任意指令。
<*来源:NGSSoftware Insight Security Research (
nisr@nextgenss.com)
链接:
http://www.ngssoftware.com/advisories/zkfingerd.txt
*>
建议:
厂商补丁:
zkfingerd
---------
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
http://sourceforge.net/projects/zkfingerd浏览次数:2569
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载 绿盟科技给您安全的保障 |