熊猫烧香病毒之专杀工具的编写教程.docx

上传人:b****2 文档编号:2164860 上传时间:2022-10-27 格式:DOCX 页数:20 大小:947.10KB
下载 相关 举报
熊猫烧香病毒之专杀工具的编写教程.docx_第1页
第1页 / 共20页
熊猫烧香病毒之专杀工具的编写教程.docx_第2页
第2页 / 共20页
熊猫烧香病毒之专杀工具的编写教程.docx_第3页
第3页 / 共20页
熊猫烧香病毒之专杀工具的编写教程.docx_第4页
第4页 / 共20页
熊猫烧香病毒之专杀工具的编写教程.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

熊猫烧香病毒之专杀工具的编写教程.docx

《熊猫烧香病毒之专杀工具的编写教程.docx》由会员分享,可在线阅读,更多相关《熊猫烧香病毒之专杀工具的编写教程.docx(20页珍藏版)》请在冰豆网上搜索。

熊猫烧香病毒之专杀工具的编写教程.docx

熊猫烧香病毒之专杀工具的编写教程

熊猫烧香病毒之专杀工具的编写教程

熊猫烧香病毒之专杀工具的编写教程

通过对熊猫烧香的行为分析,这里仅针对所得结果,来进行专杀工具的编写。

本节课我们会学习使用C++来写一个简单的“熊猫烧香”专杀系统。

  实验目的:

  结合本篇文章的知识点,能够彻底掌握文章所讲述的编写杀毒软件的方法。

  实验思路:

  1.理解专杀工具所需要实现的功能

  2.利用VC++编写专杀工具

  3.结合ProcessMonitor验证专杀工具

  实验步骤:

  1、病毒行为回顾与归纳

  这里我们首先回顾一下病毒的行为:

  **病毒行为1:

**病毒本身创建了名为`spoclsv.exe`的进程,该进程文件的路径为:

  C:

WINDOWSsystem32driversspoclsv.exe

  **病毒行为2:

**在命令行模式下使用`netshare`命令来取消系统中的共享。

  **病毒行为3:

**删除安全类软件在注册表中的启动项。

  **病毒行为4:

**

  在注册表:

HKCUSoftwareMicrosoftWindowsCurrentVersionRun中创建svcshare

  用于在开机时启动位于`C:

WINDOWSsystem32driversspoclsv.exe`的病毒程序。

  **病毒行为5:

**修改注册表,使得隐藏文件无法通过普通的设置进行显示,该位置为:

  HKLMSOFTWAREMicrosoftWindowsCurrentVersionExplorerAdvancedFolderHiddenSHOWALL

  病毒将`CheckedValue`的键值设置为了0。

  **病毒行为6:

**将自身拷贝到根目录,并命名为`setup.exe`,同时创建`autorun.inf`用于病毒的启动,这两个文件的属性都是“隐藏”。

  **病毒行为7:

**在一些目录中创建名为`Desktop_.ini`的隐藏文件。

  **病毒行为8:

**向外发包,连接局域网中其他机器。

  纵观以上八点行为,这里需要说明的是,其中的第二点行为,由于我不知道用户计算机在中毒前的设置,因此这条我打算忽略。

第三点行为,我不知道用户的计算机安装了哪些杀毒软件,而病毒又会将所有杀软的注册表启动项删除,所以这一条我打算忽略,用户在使用本专杀工具后,可以自行重新安装杀软,或者有经验的用户也可以自行在注册表中添加回杀软名称。

另外,病毒的第八点行为,我也打算忽略,因为只要删除了病毒本体,那么自然就解决了这个问题,所以我的专杀工具主要应付剩下的五个问题。

在这里各位读者想必也能够发现,我的专杀工具所要做的工作,与我之前写的手动查杀的过程其实是极为相似的,这也是为什么我当时就强调,我们依旧要掌握手动查杀病毒这个技能的原因。

2、专杀工具界面的制作

如果使用批处理来杀毒,因为它运行时没有界面,因此我们往往不知道杀毒程序究竟干了些什么,也不知道究竟有没有查杀成功,这也凸显了使用高级语言开发专杀工具的优势。

这里我使用MFC进行“熊猫烧香”病毒专杀工具的开发,绘制界面如下图所示:

该函数的参数有两个,一个是指向缓冲区的指针,第二个是缓冲区的长度。

它将文件全部读入缓冲区中,然后用CRC32函数计算文件的CRC32散列值,可以得到我所研究的“熊猫烧香”病毒的散列值为0x89240FCD。

这里请大家注意,不同版本的病毒的散列值是不同的,我所得出的这个值仅针对我所讨论的这个版本的病毒。

  4、查找进程与提升权限

  我们需要在内存中查找病毒是否存在,代码如下:

  这里还需要提升系统的权限,提升成功后,当前进程就可以访问一些受限的系统资源。

代码如下:

  5、查找并删除Desktop_.ini文件

  病毒会在所有盘符下面的非系统目录中创建名为Desktop_.ini的文件,虽说这个文件看似并不会对系统产生什么危害,但是为了实现对“熊猫烧香”的彻底查杀,还是应当将其删除的。

这里主要涉及两方面的知识,一个是遍历整个磁盘的文件,这需要使用FindFirstFile()与FindNextFile()这两个API函数,并采用递归调用的方法;另一个是修改文件属性,因为病毒创建出来的文件会带有系统、只读和隐藏这三个属性,若不对其进行更改,是无法删除病毒文件的。

依照这个思想,编写代码如下:

  需要说明的是,这里需要在本程序前定义一个CString类型的csTxt全局变量,用于将查杀的结果信息输出到程序界面,之后的程序中也会用到这个变量。

  6、主程序的编写

  主程序也就是“一键查杀”按钮的响应,我在代码中已添加相应的注释:

  至此,所有代码编写完毕,将其编译,并没有错误,直接生成可执行文件。

  7、专杀工具测试

  为了测试本专杀工具,我将它和“熊猫烧香”都拷贝到虚拟机中。

首先运行病毒程序,之后再运行本专杀工具,如下图所示:

可见,本程序已经将病毒彻底杀除,结合ProcessMonitor对本程序的监控,可以知道我们的专杀工具是切实可行的,这里不再赘述。

  8、小结

  因为我们这次所面对的是一个实际的病毒,因此代码显得较长,这和我之前所举的例子中,仅仅几行代码就能够删除一个“虚拟”病毒是截然不同的。

在以后面对不同病毒木马的专杀工具的编写中,我还会以这个专杀工具的代码为框架进行制作。

而在以后的文章中,我只会对新增的知识点进行叙述,而与这篇文章重合的知识点,我就会一笔带过。

也希望各位读者能够彻底掌握本篇文章所讲述的方法。

完毕

声明:

本文内容来源为“i春秋学院”,未经许可,任何机构不得转载或引用本文内容。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 笔试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1