导语:信息安全解决商Trustwave的安全研究专家最近在Mac版的Skype中发现了一个可以绕过其身份验证机制的后门,据猜测这个后门是开发人员的编码失误造成的。
信息安全解决商Trustwave的安全研究专家最近在Mac版的Skype中发现了一个可以绕过其身份验证机制的后门。
Trustwave在其发布的一篇博客中这样写道:
Mac版Skype的这个后门是在桌面API中发现的,这个API可以为本地程序或插件提供相应的功能接口,第三方应用可以通过这个桌面API来与Skype的服务器进行通信,而攻击者就是利用这个漏洞的,恶意软件可以使用客户端名称标识符“SkypeDashbd Wdgt Plugin”来将自己伪装成SkypeDashboard Widget插件,绕过Skype身份验证机制直接与桌面API进行交互。
Trustwave的安全研究专家认为,这个漏洞很有可能是开发商故意添加在Skype桌面API中的后门,而目的就是为了允许特定的应用程序在无需进行用户交互的情况下访问Skype桌面API。
一般情况下,当其他程序尝试访问桌面API的时候,系统会向用户发出通知,并请求用户同意操作。而此时,如果使用这个后门,Skype就不会对访问桌面API的程序进行验证,因为这些第三方程序会将自己伪装成SkypeDashboard Widget插件来访问桌面API。这也就意味着,任何的第三方应用(包括恶意软件)都可以利用Skype桌面API来实施非法操作而且用户将不会收到系统的任何通知也没有机会去拒绝访问。
Skype的这个后门是开发人员的手误
但奇怪的是,Trustwave的安全研究专家从未发现有人使用过SkypeDashboard Widget插件来对桌面API做过任何手脚,所以我们也有理由推测这个后门是开发人员的编码失误所造成的,连他们也不知道,如果这个推论成立,那么这个问题至少有五年了。因为研究人员发现,“SkypeDashbd Wdgt Plugin”这个字符串早在五年前的Mac OS X版本中就存在了。
在Mac OS X之前的版本中,应用程序可以使用这个桌面API来访问Skype所提供的全部服务。这些服务包括:消息接收通知及内容、修改信息、创建聊天会话、记录Skype的语音通话信息、以及检索用户的通讯录。在Mac OS X后的版本中,桌面API访问消息内容的这个功能已经被去除了,但是其他的功能仍然保留了下来。
访问这个后门其实非常的简单,攻击者甚至只需要修改一行代码就可以使用这个后门来进行恶意操作了。Skype提供了大量的演示实例来指引用户如何使用桌面API,而攻击者只需要将NSString方法“clientApplicationName”的值设置为“SkypeDashbd Wdgt Plugin”就可以了。
Skype后门很容易被利用,Trustwave的专家发布了一个‘概念型验证病毒”(proof-of-concept exploit code)。
例如,下面的概念型验证病毒将启动后门进程,而不要求用户获得进程的附加权限:
NSDistributedNotificationCenter *defaultCenter = [NSDistributedNotificationCenter defaultCenter]; [defaultCenter postNotificationName:@"SKSkypeAPIAttachRequest" object:(__bridge NSString *) CFSTR("Skype Dashbd Wdgt Plugin")];"