如何用Visual Basic编写病毒
相信电脑界的每个人都痛恨计算机病毒,她给我们带来了很多麻烦和损失,可你知道编写病毒的方法和过程吗?在此我仅以VB编写为例,揭开她的面纱。我爱电脑技术论坛 e I$ W; @# ]9 y( H# ^
! t5 M7 l5 @8 x9 p# I' R+ T( C/ N 用VB编写病毒需要考虑到如下几点:
8 ~; h- Z+ T* C# W+ zwww.520diannao.com
$ \( L- [: t ^5 m电脑,技术,IT,学习,交流,网络安全,QQ,硬件,软件,编程,教程,建站 * 感染主机
& h8 f& c! K, l8 X9 y. g打造最好的电脑自学交流论坛& B/ R) X& g& z, K
首先染毒文件运行后先要判断主机是否以感染病毒,也就是判断病毒主体文件是否存在,如果不存在则将病毒主体拷贝到指定位置(如:将病毒文件拷贝到c:\windows\system\),可用filecopy语句实现;如果病毒已感染主机则结束判断。打造最好的电脑自学交流论坛, s% T: W# C, g$ ~ j# [
1 Z, c: m" L, k1 k+ ]
例如,判断C:\windows\system\Killer.exe是否存在,如果有则退出判断,如果没有则证明本机未感染病毒,立即拷入病毒文件。我爱电脑技术论坛/ A u) ]1 \7 K$ F% F) i% M9 }
www.520diannao.com: P/ ^- ~( j+ x, h- ]- W* I; c; r
病毒源文件名为game.exe电脑,技术,IT,学习,交流,网络安全,QQ,硬件,软件,编程,教程,建站- K4 d2 F2 L1 O2 Q. Z
www.520diannao.com+ x) _& Z8 V3 X) R* x( [
声明部分:电脑,技术,IT,学习,交流,网络安全,QQ,硬件,软件,编程,教程,建站 u/ n. R7 n8 {# z
我爱电脑技术论坛1 |! r# `8 b5 c. }
""定义 FileExists% 函数
9 n) L) X# T% g8 n: ^5 l% v4 ^" e public success%
" ?9 [$ O c/ l2 U) e) h. h$ d9 _: gwww.520diannao.com Function FileExists%(fname$); o8 N8 ?3 r1 ^/ ~3 p4 q' |7 y
On Local Error Resume Next
- h4 t) q6 Q5 I我爱电脑技术论坛 Dim ff%
* B! n- U- q0 H7 O, J( W5 Q我爱电脑技术论坛 ff% = FreeFile; X6 L3 d- z* [# C
Open fname$ For Input As ff%
9 h" m& z7 ~2 X/ F( ?* ^1 v: |我爱电脑技术论坛 If Err Then7 \/ O& ~; \9 n# a$ _
FileExists% = False电脑,技术,IT,学习,交流,网络安全,QQ,硬件,软件,编程,教程,建站3 M+ F V6 Q2 u/ c7 y" i4 Y
Else5 ~9 k3 I5 n+ U' i! c7 m# _( q
FileExists% = True
) H/ l3 X( k S. L6 A End If
5 x9 b$ E7 O# u. X3 q( ~我爱电脑技术社区--打造最好的电脑技术自学交流平台 Close ff%
/ V% f4 e$ ^4 m! n我爱电脑技术论坛 End Function
/ Z7 x# k' o2 F# ^+ k' x6 R1 A打造最好的电脑自学交流论坛
( G# u- P- }; e电脑,技术,IT,学习,交流,网络安全,QQ,硬件,软件,编程,教程,建站 代码部分:我爱电脑技术社区--打造最好的电脑技术自学交流平台" N7 m; T1 l6 `0 l* |
打造最好的电脑自学交流论坛5 f3 B! Y$ q0 y, I: K0 }' B, f+ b
""判断文件是否存在
' v3 L( U9 D6 L* Z9 C% b. y电脑,技术,IT,学习,交流,网络安全,QQ,硬件,软件,编程,教程,建站 success% = FileExists%("C:\windows\system\Killer.exe")我爱电脑技术论坛3 A. }' x( [% N( k
If success% = False Then ""病毒不存在则拷贝病毒到计算机我爱电脑技术社区--打造最好的电脑技术自学交流平台$ X- J1 w v$ z- Z
FileCopy "game.exe", "C:\windows\system\Killer.exe"0 J5 z4 T' [: T6 M. ]3 ]' u9 T( s
... ""修改注册表,将其加入RUN中。(省略若干代码)电脑,技术,IT,学习,交流,网络安全,QQ,硬件,软件,编程,教程,建站4 p- `* E" ^/ x1 l
End If我爱电脑技术论坛- m; ^) R0 d$ O, K$ d/ I4 Y
, x+ A( `+ m" e打造最好的电脑自学交流论坛 * 开机启动病毒
: j L1 U# l$ e" x' n9 S打造最好的电脑自学交流论坛打造最好的电脑自学交流论坛9 x) G# G: w' d; U& G3 O# B; F" v
在病毒感染主机的同时,将自身加入注册表的开机运行中,这与向主机拷入病毒是同时进行的,主机感染后不再修改注册表。可通过编程和调用API函数对WIN注册表进行操作来实现,这样在每次启动计算机时病毒自动启动。(具体编写方法请查阅其它资料)
* h. |. t; R3 v4 Z! {我爱电脑技术论坛
I }- q4 p) L4 q电脑,技术,IT,学习,交流,网络安全,QQ,硬件,软件,编程,教程,建站 * 任务管理器打造最好的电脑自学交流论坛7 s3 ~+ q8 m) B( g! b3 C
我爱电脑技术社区--打造最好的电脑技术自学交流平台/ N0 u. l) B0 C2 j
在任务管理器列表中禁止病毒本身被列出,可以通过编程来实现。用代码 App.TaskVisible = false 就可以实现;再有就是通过调用Win API函数来实现,这里就不作介绍了。
& g6 r/ I" v$ Q0 g5 V# W: v! f电脑,技术,IT,学习,交流,网络安全,QQ,硬件,软件,编程,教程,建站www.520diannao.com! d% @! I0 E7 Z5 Y/ b9 N- O
* 病毒发作条件www.520diannao.com5 @) m5 t# l5 y+ ?+ B8 S, y
5 C6 v& d4 |: L$ a: m. n5 f4 J- owww.520diannao.com 可用Day(Date)来判断今天是几号,再与确定好的日期作比较,相同则表现出病毒主体的破坏性,否则不发作。也可用Time、Date或其它方法作为病毒发作条件的判断。例:
3 F* E9 u( J6 x2 t/ u, ~我爱电脑技术论坛我爱电脑技术论坛. O5 @2 Q5 ?! i) q- P" s
if day(date)=16 then ""16是发作日期,取值为1-31的整数我爱电脑技术论坛3 [, V" I/ b X' G8 N1 X
... ... ""kill ******* 当日期相符时运行的破坏性代码(格式化、删除指定的文件类型、发送数据包杜塞网路等,省略若干代码)
# } w" t" Z: r6 z1 R( z打造最好的电脑自学交流论坛 end if打造最好的电脑自学交流论坛. F5 r( G: K% ^4 w: @* K
我爱电脑技术论坛; i0 `9 V% {0 ?0 K, ]3 L7 c
* 病毒的破坏性打造最好的电脑自学交流论坛# C1 O$ A$ E: R5 Z! E
0 ~7 }3 x$ S$ I! qwww.520diannao.com 编写的此部分代码决定了病毒威力的强弱。轻的可以使系统资源迅速减少直至死机(需要你懂得一点蠕虫的原理),也就是实现开机即死的效果;也可以加入硬盘炸弹代码、系统后台删文件等。重的可以使计算机彻底瘫痪(不作介绍,你可以参阅其它病毒的有关资料)。
/ T3 t, A' ~4 u4 d8 T4 E2 D6 A我爱电脑技术社区--打造最好的电脑技术自学交流平台电脑,技术,IT,学习,交流,网络安全,QQ,硬件,软件,编程,教程,建站0 `6 i! K2 S/ F( R0 l9 L* ~7 K o$ U
* 病毒的繁殖
1 E0 N! H" E6 I7 g* D, L+ ?7 b电脑,技术,IT,学习,交流,网络安全,QQ,硬件,软件,编程,教程,建站
, H: v6 w/ C( A- F% v* V我爱电脑技术社区--打造最好的电脑技术自学交流平台 原理很简单,就是将其自身与其它可执行文件合并,也就是两个文件并成一个文件。也可通过E-Mail传播,方法是病毒读取被感染主机的邮件列表,将带有病毒附件的E-Mail发给列表中的每一个人(这需要你懂得VB网络编程)。
9 R6 Q3 c5 ~: K# U1 A1 \
+ H- H5 d, P3 W% ?电脑,技术,IT,学习,交流,网络安全,QQ,硬件,软件,编程,教程,建站 读完本文章相信您已对病毒的编写思路有了初步的了解,如果你是个VB爱好者,你已经可以编写一个很简单的病毒了,但你要是精通VB的话,请不要有编写后传播她的想法,因为传播她造成很大的影响将改变你的命运(被公安抓住就挂了)。