病毒及流氓软件自我复制的简单实现(C#)

转载 2007年09月21日 21:14:00
最近朋友的电脑中了病毒,让我跑了三次,费了九牛二虎之力,几种杀毒软件还是没有能把病毒全清除掉,最后没有办法,只能把资料复制出来,把硬盘重新分区了再装系统,装上了可以免费使用的AntiVir,于是乎世界终于清静。

  不仅因为Windows系统的脆弱,而且因为病毒无休止的自我复制和满硬盘的藏匿,使得我们脆弱的神经不堪重负,面对千疮百孔,有着莫名其妙而又千奇百怪的名字文件夹和文件的系统,相信大多数人都会选择重装系统。病毒和流氓软件总是让人气愤!那么,计算机程序怎么实现自我复制呢?其实这非常的简单。下面我将用C#简单的实现一个能够自我复制的小小的恶意程序。

  程序要实现下面几个功能。

  第一,运行时不出现运行界面,当然,在任务管理器里,还是可以看到进程的,道行再深的病毒也不可能无迹可寻。

  第二,程序在运行目录下自我复制n份。

  第三,采用递归复制的方法,即第一个程序生成第二个程序,第二个程序生成第三个程序,以此类推。

  源代码很简单,下面来分析一下:

以下是引用片段:
35 // 不在任务栏显示
36 this.ShowInTaskbar = false;
37 // 窗体透明
38 this.Opacity = 0;


  System.Windows.Forms.Form类封装了一般的Windows窗口程序大部分特性,极大的简化窗口界面的设计过程,上面这两个属性用于隐藏我们的程序的运行状态,第一个ShowInTaskbar属性,设置为否时,程序就不会在状态栏上面显示。第二个Opacity属性,表示窗口的不透明度,取值在0到100之间。0%的不透明度也就是100%透明了。这样,在程序运行时,你就看不见窗体了。

以下是引用片段:
44 // 默认复制次数
45 const int TOTAL = 100;
46 int _count = TOTAL;
47 // 正在运行的程序路径和文件名
48 string _file = Application.ExecutablePath;
49 // 正在运行的程序路径
50 string _path = Application.StartupPath;
51 // 正在运行的程序文件名 
52 string _name = _file.Replace(string.Format("{0}//", _path), string.Empty).ToLower();
53 try
54 {
55  _count = int.Parse(_name.Replace(".exe", string.Empty));
56  _count--;
57 }
58 catch
59 {
60 }
61 finally
62 {
63 }
64 // 目标文件
65 string _target = string.Format("{0}//{1}.exe", _path, _count.ToString("000"));

 

病毒及流氓软件自我复制的简单实现

 作者: Anature 出处: 天极开发 责任编辑:方舟     最近朋友的电脑中了病毒,让我跑了三次,费了九牛二虎之力,几种杀毒软件还是没有能把病毒全清除掉,最后没有办法,只能把资料复制出来,把硬...
  • luckisok
  • luckisok
  • 2007年02月23日 12:10
  • 799

病毒及流氓软件自我复制的简单实现

程序要实现下面几个功能。  第一,运行时不出现运行界面,当然,在任务管理器里,还是可以看到进程的,道行再深的病毒也不可能无迹可寻。  第二,程序在运行目录下自我复制n份。  第三,采用递归复制的方法,...
  • nileel
  • nileel
  • 2007年11月02日 16:13
  • 943

病毒及流氓软件自我复制的简单实现(C#)

下面我将用C#简单的实现一个能够自我复制的小小的恶意程序。   程序要实现下面几个功能。  第一,运行时不出现运行界面,当然,在任务管理器里,还是可以看到进程的,道行再深的病毒也不可能无迹可寻。  第...
  • ILOVEMSDN
  • ILOVEMSDN
  • 2007年02月28日 13:31
  • 909

病毒及流氓软件自我复制的简单实现(C#)

下面我将用C#简单的实现一个能够自我复制的小小的恶意程序。   程序要实现下面几个功能。  第一,运行时不出现运行界面,当然,在任务管理器里,还是可以看到进程的,道行再深的病毒也不可能无迹可寻。  第...
  • songkexin
  • songkexin
  • 2007年02月27日 06:52
  • 1276

C++基础-----程序自我复制

C++基础-----程序自我复制
  • u012526003
  • u012526003
  • 2016年04月15日 09:52
  • 564

中外流氓软件大比拼

什么是流氓软件?业界通常认为,流氓软件常常介于病毒软件和正常软件之间,同时具有正常功能和恶意行为.根据不同的特征和危害,流氓软件主要分为广告软件(Adware)、间谍软件(Spyware)、 浏览器劫...
  • zdg
  • zdg
  • 2006年04月04日 02:19
  • 15184

一个具自我复制功能的程序

      我在学C的时候写的程序,现在愿意拿来和大家分享. 此程序是一具自我复制程序,它将以自己为模板,复制许多(产生10000个文件后就退出)不同名字的程 序, 这此复制的程序同样都有自我复制的能...
  • shaohui
  • shaohui
  • 2004年11月02日 14:06
  • 10580

利用Windows PE来检查和清除计算机病毒和流氓软件

当今的网络社会,计算机病毒、木马和流氓软件是狼狈为奸,对计算机系统的安全性、运行的稳定性构成很大威胁。如何有效检测和清除我们计算机中的病毒、木马和流氓软件,一直都是杀毒领域里面的重要话题。一般的查毒和...
  • hwman
  • hwman
  • 2007年04月17日 08:59
  • 2705

第1章 初识计算机病毒 1.1 计算机病毒基础知识

第1章   初识计算机病毒这一章将从概念上简要介绍计算机病毒的基本知识以及计算机病毒的命名,通过对这些概念的了解,从而使我们能更方便的阅读有关计算机病毒信息的文档和书籍。 1.1 计算机病毒基础知识虽...
  • DuShouYaoShi
  • DuShouYaoShi
  • 2010年03月25日 21:23
  • 1199

仿病毒的自我复制。

仿病毒的自我复制。但没有与任何应用程序勾上。也没有写入注册表,新建一个window程序,在form1_load中加入            this.Hide();            this.S...
  • TMyesorno
  • TMyesorno
  • 2008年08月20日 10:55
  • 385
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:病毒及流氓软件自我复制的简单实现(C#)
举报原因:
原因补充:

(最多只允许输入30个字)