1. 病毒程序是怎么制作的 计算机病毒的特征是传播性,非授权性,隐藏性,潜伏性,破坏性复,不可预见性,可触发性 。
计算机病毒根据感染方式可以分为感染可执行文件的病制毒,感染引导区的病毒,感染文档文件的病毒 。
现阶段的反病毒技术有特征码扫描,启发式扫描,虚拟机技术,主动防御技术,自免疫技术,云杀毒等等 。
一个简单病毒的模块包含,触发模块,传播模块,表现模块 。
学习计算机病毒,要了解知硬盘结构,计道算机扇区结构,计算机系统启动过程,文件系统,计算机引导过程 。
汇编语言和C语言用的会比较多 。
现阶段也有一些简单病毒制造机,此类软件可以在网上找到 。
2. 如何写一个简单的病毒程序 前些天学病毒这门技术着实吃了很多苦头,走了很多弯路,尽管按我的知识水平,病毒已经是水到渠成的学习内容了 。
但是我现在学了入门才发现这门技术实际上隐藏着很多玄机,包含着许多技术,不专门学习研究根本无法达到“牛”的境界上去 。如今写了这篇文章,介绍的都是相当实用的东西,可以让你少走许多弯路(有时侯一个错误够你找几个小时的) 。
不过需要些基础知识才能看懂 。假如你有天知识储备够了,不学学病毒将是你的遗憾 。
另,由于是写给协会会员参考的,也没写的多“专业”,多了些赘述 。在你看之前,你应该知道这只是篇可以带你入门的文章,如果你已经会了就不用看了 。
看的时候最好准备个PE表在旁边 。写病毒程序可以使用很多种语言来写比如C,汇编,甚至有人用Dephi这样可视化编程工具都能写出来 。
但是最适合写病毒程序的还是汇编语言 。汇编语言底层,灵活,速度快,体积小的优势能将一个病毒程序发挥到极至,通常一个程序写出来才几千字节就包含了所有的功能 。
一般一个病毒都有如下几个功能:一 代码重定位 二 自己找到所需API地址 三 搜索文件、目录 四 感染文件 五 破坏系统或文件(随便你了) 其中一,二项功能是必要的,五项功能是可选的 。而一个病毒程序感染文件的功能是它的核心,是衡量它质量的重要标准 。
(一)代码的重定位 一个变量或函数其实是一个内存地址,在编译好后,程序中的指令通过变量或函数的内存地址再去存取他们,这个地址是个绝对地址 。如果你将代码插入到其他任何地方,再通过原来编译时产生的地址去找他们就找不到了,因为他们已经搬家了 。
但是,你在写程序时考虑到这个问题,你就可以在代码最开始,放上几行代码取得程序基地址,以后变量和函数作为偏移地址,显式的加上这个基地址就能顺利找到了,这就是重定位 。就象这段代码 。
Call getbaseaddress Getbaseaddress:pop ebx Sub ebx,offset getbaseaddress Mov eax,dword ptr [ebx+Var1] 如果你使用宏汇编语言写病毒,请尽量使用ebx做基地址指针,不要使用ebp,因为ebp在调用带参数的函数时会改变 。(二)自己取得所需的API地址 一个win32程序文件,所调用的API函数地址,是由系统填入到程序文件中描述各类数据位置的数据结构中的 。
而病毒作为一个残废是享受不到这个待遇的 。因为你在把病毒的代码插入目标程序时没有把这些描述数据存放位置的数据结构信息也弄进去 。
它被插入到其他目标程序后就成了只有代码的残废儿童:(所以作为一个残废儿童,应当自力更生 。自己搜寻自己需要的API地址 。
目标程序文件就包含了我们需要的东西,我们需要自己去找 。目标程序文件只要还是win32程序,它的地址空间中就包含的有Kernel32.dll 。
- 英文刷新怎么写
- 程序英文怎么写
- 鸭汤的功效及做法
- 痛风饮食禁忌有哪些
- 黄油是什么做的 黄油是什么做的为何这么香
- 变频热水器是什么意思? 变频热水器是什么意思
- 姐姐|女明星综艺节目卸妆,“神仙姐姐”仙气尽失,倒是贾玲毫不做作?
- 小轿车拼音怎么写
- 阿拉伯联合酋长国是哪个国家 阿拉伯联合酋长国总人口2022
- 氢氧化钠俗称 氢氧化钠俗称是苏打吗