Windows 帮助文件中使用 MsgBox() 函数实现远程代码执行

admin 2021年4月3日19:39:04评论43 views字数 1270阅读4分14秒阅读模式

    老文章(2010-03-02 22:10),猎奇的东西,转载了……

    Windows帮助文件本身存在可以运行任意代码的可能性。winhlp32.exe中如果存在堆栈溢出漏洞,用户请求一个“畸形”的Windows帮助文件将会导致winhlp32.exe溢出。

    那么这种攻击模式,如何实现远程攻击呢。波兰的安全组织ISEC给了我们一个很好的例子。也是这两天看到的“警惕F1按键”那个事件。这个漏洞其实在2007年2月就被ISEC发现,只是他们2010年2月才公开。

    下面看下这个攻击实例:



    说明一下,VBScript中的MsgBox函数的格式为:MsgBox(prompt[, buttons][, title][, helpfile, context])。Helpfile字符串表达式,用于标识为对话框提供上下文相关帮助的帮助文件。Context数值表达式,用于标识由帮助文件的作者指定给某个帮助主题的上下文编号。于是我们可以使用MsgBox函数,使Windows帮助文件实现远程Samba共享。

临时解决方案:

    如果你看到弹出对话框,让你按F1键。看看对话框上是不是有标题包含"VBScript",因为当MicroSoft Internet Explorer使用MsgBox函数时,任何对话框的标题总是包含"VBScript",以便于将其与标准对话框区别开来。如果让你反复按F1键,那你就结束IE进程就可以了。

    也可以使用命令来锁住Windows帮助。

cacls "%windir%winhlp32.exe" /E /P everyone:N
cacls "%windir%winhlp32.exe" /E /R everyone

相关资料:

http://blogs.technet.com/srd/archive/2010/03/01/help-keypress-vulnerability-in-vbscript-enabling-remote-code-execution.aspx
http://www.krebsonsecurity.com/2010/03/ms-be-careful-with-those-function-keys/
http://isec.pl/vulnerabilities/isec-0027-msgbox-helpfile-ie.txt
http://isec.pl/poc-isec27/

文章来源于lcx.cc:Windows 帮助文件中使用 MsgBox() 函数实现远程代码执行

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年4月3日19:39:04
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Windows 帮助文件中使用 MsgBox() 函数实现远程代码执行https://cn-sec.com/archives/324164.html

发表评论

匿名网友 填写信息