【问题标题】:What's the "gadget vulnerability"?什么是“小工具漏洞”?
【发布时间】:2012-07-14 12:08:32
【问题描述】:

在最近的安全公告中,Microsoft 警告说“小工具中的漏洞可能允许远程执行代码”:

成功利用小工具漏洞的攻击者可以在当前用户的上下文中运行任意代码。

(Microsoft Security Advisory 2719662)


我真的不明白这一点。据我所知,小工具(按设计)是基于 HTML 的应用程序,在完全信任的情况下运行!

完全信任

运行小工具的选择以与运行从 Internet 下载的任何应用程序的选择相同的方式呈现给用户。有关小工具作者的信息会显示在一个对话框中,表明该文件存在相关风险。用户接受警告后,小工具将使用与用户登录帐户关联的所有权限运行。

(MSDN: Gadgets for Windows Sidebar Security)

例如,没有什么能阻止你添加

<script language="VBScript"> 
    Set shell = CreateObject("Wscript.Shell")
    shell.Run "notepad.exe"
</script> 

并从您的小工具执行任意命令。 This works and it's by design.

显然,他们可以做在本地用户上下文中运行的另一个应用程序可以做的所有事情。那么,MS 安全公告提到的“可被利用”的漏洞在哪里?

【问题讨论】:

  • 显然这个小工具代码是javascript,它本身有些受限,但是小工具子系统中有一个漏洞,它允许执行随机代码,不限于JS macnine。
  • @GSerg:小工具中的 JavaScript/VBScript 与 HTAs 中的 JavaScript/VBScript 具有相同的功能,例如 it can start arbitrary applications。那么,如果语言本身允许您执行任意代码,那么“利用”又有什么意义呢?
  • PS:我特意决定将其发布到 StackOverflow 而不是 SuperUser,因为 Gadget developer 更有可能回答这个问题,而不是 Gadget 用户.

标签: security windows-desktop-gadgets


【解决方案1】:

“小工具漏洞”的问题是:

小工具面临的风险与任何基于网络的设备面临的风险相同 应用程序,例如中间人或代码注入。大多数 Web 浏览器的早期版本中都存在类似问题,但现代浏览器已专门实施了控制措施以试图缓解其中许多问题。这些控件尚未在 Gadgets 平台中实施,因此容易受到众所周知且经过深入讨论的攻击。 - 我们有你的小工具,黑帽。

所以你可以看到主要的利用是没有控制来限制小工具无限制地运行代码。

另一个问题:

微软表示,它发现某些 Vista 和 Win7 小工具不遵守安全编码规范,应被视为导致 对运行它们的系统造成风险。

所以确实运行任意代码是 HTA 的一部分,但是因为侧边栏和小工具平台并没有缓解它并且非常悲观,认为所有小工具程序员都会编写安全代码并且不会尝试利用或做小工具不是不应该这样做。

希望它回答了你的问题。

我仍然认为这个问题很模糊,因为你说:他们允许运行任意代码,这是模型和概念的一部分,他们没有缓解它,那么漏洞是什么?它已经被利用了...... - 这就是整个想法:)

可以询问每个缺陷和攻击,而这正是问题所在 - 这是设计问题,并不安全,因为没有缓解措施,而且您确实能够运行和执行恶意代码没问题,这些小工具有缺陷。

【讨论】:

    【解决方案2】:

    在我看来,我认为安全问题是一个烟幕。这些“安全问题”存在于许多载体和小工具中,如果它们是这样的问题,那么在 Windows 8 发布之初就会得到解决。我的观点是,小工具被抛弃了,因为它们会消耗大量的电量。 Windows 8 平板电脑。它让我想起了功能区界面是如何“暴露深埋的功能”的,而我认为实际上微软确实在计划触摸界面。因此,无论微软为做某事提供什么“借口”,我都倾向于寻找更深层次的目的。希望这会随着新的管理层而改变。有谁知道是否可以在 Windows 8.1 上安装某种小工具平台?谢谢!

    【讨论】:

      【解决方案3】:

      同意,与用户执行未签名应用程序相比,Gadgets 平台似乎更容易受到攻击。

      为什么应用于应用程序的相同系统级执行预防、启发式分析和其他方法不能应用于小工具,这让我很困惑。

      这有点微软的懒惰:Gadgets 平台没有得到高度重视或广泛使用(尽管有潜力提供前所未有的功能水平并将网络功能直接集成到桌面中),所以与其让任何保护用户免受恶意小工具侵害的尝试,他们只是停止了它们。

      随着 Windows、Mac 和 Android 中用户界面的发展方向,普通用户越来越不了解应用程序(或插件)实际上是如何工作的,因此不必要的、机会主义的甚至恶意的扩散应用程序继续。我一直在反复讨论 Gadgets 规范,据我所知,它并不比 Chrome 和 FireFox 使用的插件系统更不安全。

      在小工具中执行 ActiveX 和 Java 取决于 Internet Explorer 中的安全设置。如果您的安全设置允许小工具执行某些操作,那么大多数这些功能也可以在插件或 Java 应用程序中利用。

      我读过的分析师报告表明,这些漏洞已在“大多数现代浏览器”中得到修补,但显然 Internet Explorer 并非如此,因为我看到的每个 Gadget 漏洞利用也可以在 IE 浏览器中运行.

      简而言之,ActiveX、Java 和其他插件的“切换”样式处理在这里有问题。通过尽量避免用户无休止的提示并消除做出明智决定的要求,Microsoft 继续让不知情或粗心的用户对恶意 Web 应用程序和插件敞开大门。

      信任证书和安全补丁比停止使用该功能要好得多。

      【讨论】:

        【解决方案4】:

        感谢您找到确切的详细信息,这里是 blackhat 中的文章,它使 Microsoft 禁用了小工具:

        We have you by the gadgets - Black Hat(pdf 文件)

        【讨论】:

        • 我已经阅读了这篇文章,但找不到任何具体漏洞,也没有任何不是设计的漏洞(例如“小工具面临的风险与任何基于 Web 的应用程序面临的风险相同”或“小工具的开发方式几乎与传统软件相同”)。因此我的问题在这里。 ;-)
        【解决方案5】:

        这些攻击以这种方式发生:

        1. 攻击者必须说服用户安装和启用易受攻击的小工具
        2. 成功利用小工具漏洞的攻击者可以获得与登录用户相同的用户权限。如果用户使用管理用户权限登录,成功利用此漏洞的攻击者可以完全控制受影响的系统。然后攻击者可以安装程序;查看、更改或删除数据;或创建具有完全用户权限的新帐户。

        如您所见,安装易受攻击的小工具很简单,现在告诉我谁授权了您的小工具?万维网上有很多假小玩意..小心。

        微软也有一个修复程序来禁用侧边栏和小工具,您可以在此链接中找到: microsoft advisory

        他们杀死了 Windows 8 中的小工具和侧边栏

        【讨论】:

        • 谢谢,但它仍然没有回答问题:是什么让小工具“易受攻击”?那种感觉就像在说“用户可以在他的 PC 上安装易受攻击的软件,因此我们不允许安装软件”......我仍然不明白是什么让小工具比从 Internet 下载的任何其他应用程序更“易受攻击”。
        • 似乎攻击者不一定需要执行 #1,因为用户可能已经在他们的机器上安装了易受攻击的小工具。我想这就是问题所在……太多主流、合法的小工具都存在安全漏洞。我发现了这份文档 (PDF),其中详细介绍了 ITN News Gadget 中的一个漏洞。
        猜你喜欢
        • 2013-03-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-03-22
        • 1970-01-01
        相关资源
        最近更新 更多