批量利用未正确转义的字符串

时间:2011-08-08 13:04:52

标签: windows security batch-file escaping dos

在Windows软件X中,您制定的每个链接都会自动转换为可点击的对象。

这里有趣且与安全相关的部分是,像“http://%COMPUTERNAME%.com/”这样的链接将打开标准浏览器,例如“http://NR57005-PC.com/”,当然是一个信息泄露漏洞,因为所有环境变量都被转换。

现在我的问题是,这种行为是否会导致更严重的问题 - 例如代码执行漏洞,这将极大地增加快速修复的重要性。

您是否有任何建议如何证明,这不仅是一个披露问题,而且是一个关键漏洞?攻击者可以通过任何机会注入批处理命令吗?

我已经玩过管道,&符号和引号但到目前为止我没有找到任何有趣的东西。

提前致谢,

帕特里克

编辑: 澄清一下,我的方法如下: 系统必须执行firefox.exe "http://%COMPUTERNAME%.com/"之类的命令,否则系统变量将不会被转换。 现在,因为我知道有一些未经过滤的批处理调用,我认为可以转义参数字符串。例如,像http://google.com/"&notepad&" 这样的链接可以导致firefox.exe "http//google.com"&notepad&"",这会打开记事本 - 作为代码执行工作的概念证明。不幸的是,这种逃避尝试无效。因此,我想知道,如果有其他技巧可以获得shell访问或类似。

1 个答案:

答案 0 :(得分:0)

  • 您的攻击者必须注册并控制服务器NR57005-PC.com。为此,他必须事先获得有关主机名的信息。

  • 提供的攻击面取决于用于检索链接的用户代理,这取决于批处理文件处理和/或系统上配置的默认浏览器。

  • 假设使用Internet Explorer,您的攻击面将会从您预期的批量文件中减少,因为该网站将不再位于Local Computer区域,而是{{1你正在考虑的狡猾的技巧将不起作用。

  • 您只能使用典型的IE漏洞来获取控制权。批处理文件为您提供了机会,而不依赖于用户访问恶意网站。

我认为你是一名笔测试员/审核员,正在努力使一项调查结果合格。我推荐

1 - 黑客攻击一个演示,但根据用户错误运行可执行文件或类似。您可以声明用户不期望浏览器提供exe,因此将更加信任,即使他不应该。

2 - 认识到这不是一个关键的漏洞并继续前进。攻击者可以通过精心设计的社交工程电子邮件更轻松地获得相同的访问/信任。