|
作者: 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号