论坛: 病毒专区 标题: 一个可执行程序,怎么样复制自身的? 复制本贴地址    
作者: feeling [feeling]    论坛用户   登录
  谁能告诉我一个可执行程序是如何复制自己的?

也就是说,怎么样在自身运行的状态下,将自己存成另外一个文件。

地主 发表时间: 04/18 22:19

回复: Paper [paper]   论坛用户   登录
自己找一个病毒程序看一下不就知道了

B1层 发表时间: 04/19 14:21

回复: ranchuan [ranchuan]   版主   登录
楼上的老兄,说真的好不好, 我们菜鸟可是来学习的!

B2层 发表时间: 04/19 20:41

回复: feeling [feeling]   论坛用户   登录
上上面的那个,本人写个VBSCRIPT JAVASCRIPT 之类的病毒到是会的,因为HAPPY TIME 有全整的代码,可是用ASM的我可还不太会。看你说的应该看了很多了吧,能说说吗?

B3层 发表时间: 04/19 23:04

回复: feeling [feeling]   论坛用户   登录
我有一个想法,就是能不能先把整个程序的可执行代码保存到一个数组中,在程序运行的时候将这部分代码写到文件中去。
有可能实现吗?

B4层 发表时间: 04/19 23:08

回复: none [onizuka]   论坛用户   登录
这是不可能的,会造成编译错误(我在borland c++上试过了)

B5层 发表时间: 04/20 09:31

回复: ranchuan [ranchuan]   版主   登录
我也跟你的想法一样,但没试过

B6层 发表时间: 04/20 15:22

回复: feeling [feeling]   论坛用户   登录
to none
你是不是把变量的缓冲定太大了。你再试试定多几个变量。我想几十K 的东东不应该会。。


B7层 发表时间: 04/21 18:25

回复: feeling [feeling]   论坛用户   登录
还有一般数组放的是字符,直接负二进制的东东我也没用过。

B8层 发表时间: 04/21 18:28

回复: wildboy [wildboy]   论坛用户   登录
对于这个问题,
俺只是的谈一番啊。
你如果看过happy time的话,应该明白,
它是主要分成两大部分的,一部分是所谓的破坏性代码--主体部分,一部分是,“后勤”代码,主要是用来对主体进行,变形,传播,。
而你说的asm编写的,我想既然能用汇编,作者就熟悉内存与寄存器的占用与分配,他会考虑到代码的读入与读出。

B9层 发表时间: 04/22 09:37

回复: suha [suha]   论坛用户   登录
在程序中加一个写指令,并调整文件指针到文件头,在写长度上填上你要写的范围,即程序长度。这样,每次程序执行到这里都会完成一次写操作。当然,在这之前你还要查找或新建寄生体文件。
    我建议你还是学一点汇编知识,理解起来会很容易的。

B10层 发表时间: 04/28 20:51

回复: Paper [paper]   论坛用户   登录
哦,对不起,我知道那话说的很有客气,但你是用汇编呢,还是用C语言,或是其它?是仅仅在单机上实现,还是在网络上实现?因为用不同的语言,用处不同,过程也不太一样,难易也不同,你得说清楚呀。




[此贴被 Paper(paper) 在 4月28日22时10分 编辑过]

B11层 发表时间: 4/28 22:4

回复: ricky [ricky]   版主   登录
其实很简单,两个方法供参考
1:把自己绑在别的可执行文件前面,先运行自己,再把后面的文件写道另一个文件里运行,这个最简单。
2:看一下PE的结构,把自己和另外的程序按表组合。这个比较麻烦一点。

B12层 发表时间: 04/29 14:56

回复: horst [horst]   论坛用户   登录
好了大家心脏去炸这个IP 好了看看是谁先炸的
61.3546.2168.45
好了去吧

B13层 发表时间: 04/30 18:36

回复: top [top]   论坛用户   登录
什么是PE文件



B14层 发表时间: 05/10 16:41

回复: ranchuan [ranchuan]   版主   登录
就是可执文件了

B15层 发表时间: 05/14 10:50

论坛: 病毒专区

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号