PE文件简单加密(加壳)--100%源码 ( 积分: 100 )

  • 主题发起人 主题发起人 smokingroom
  • 开始时间 开始时间
S

smokingroom

Unregistered / Unconfirmed
GUEST, unregistred user!
关键字:PE文件 PE加密 PE加壳 PE修改 PE入口地址
这个小软件通过在可执行文件(.exe)的尾部添加一个新节(Section),并且修改PE的入口地址,使可执行文件在运行时,跳出一个输入密码的对话框,从而实现了简单的加密。
(注意,与网上流传的那种生成临时文件的加密不一样^_^)
源程序采用Delphi 6.0编写, 兼有少量的asm代码,用於可执行文件的加密。
如需传播,请保留作品的完整性!
软件大小:396 KB
界面预览:http://www.programmerlife.com/images/soft/PEEncrypt.gif
下载地址:
http://www.programmerlife.com/downlink.asp?softid=28&url=1
 
关键字:PE文件 PE加密 PE加壳 PE修改 PE入口地址
这个小软件通过在可执行文件(.exe)的尾部添加一个新节(Section),并且修改PE的入口地址,使可执行文件在运行时,跳出一个输入密码的对话框,从而实现了简单的加密。
(注意,与网上流传的那种生成临时文件的加密不一样^_^)
源程序采用Delphi 6.0编写, 兼有少量的asm代码,用於可执行文件的加密。
如需传播,请保留作品的完整性!
软件大小:396 KB
界面预览:http://www.programmerlife.com/images/soft/PEEncrypt.gif
下载地址:
http://www.programmerlife.com/downlink.asp?softid=28&url=1
 
好啊 试了一下 不错!!可以提供解密吗??虽然可以通过恢复来解密
 
如果大家觉得有一定研究价值的话就顶一下,把机会也给其它朋友。
to cwmdelpher:
解密程序没写,你自己根据原理也可以写一个的~~
 
感谢。。。这么大方好啊。
 
非常感谢!!!真是个好人,原代码都开放了。
 
帮你顶起来,这么好的东东现在少多了
 
多谢!源码没有什么问题!好好看一下,我想试试在原来的基础上再加一些功能。
 
已经发布到http://www.2ccc.com/article.asp?articleid=1986
感谢楼主的代码,很有研究价值。
 
3Q ;
有没有防止脱壳的功能;
 
可以研究一下了
 
to mantousoft:
  谢谢添加到www.2ccc.com
to sunjke:
  如果有改进,能不能给我一份呢^_^
to 金卡绣球jk8.com:
  这个比较难,目前大部分壳都能找到脱壳方法,更不要说这个最基本的壳了~
to all:
  谢谢支持!如果谁知道PE的文件的压缩技术,能不能给些指点呢?
 
to smokingroom
我看到了你的程序,也研究了一下,PE修改那里我还没有完全的看懂!
我也看了老罗的ASM的原代码,(好难啊:))。
我看原代码的调用API函数全是自己定义,自己写的调用过程,我想这些API函数DELPHI全都定义好了,所以我试着把这些API函数改成为windows.pas中已经声明好的,都改过了,程序能运行,但加密后的程序就不能运行了,我不知道这是为什么,请指教!
我的QQ是272041341
在此再次感谢您的无私奉献!
 
to vcanddelphi:
  你的问题,其实就是PE文件关于导入API的问题。对API的调用,一定要获取该API函数的入口地址,在Delphi程序中,我们不用做这个工作,事实上Delphi已经做好了这个工作,
比如我们调用函数MessageBoxA,我们可直接写MessageBoxA(0,nil,nil,0)就可以了,其实,这里的MessageBoxA已经不是本质上的那个"MessageBoxA"函数了,它只是一个程序中的一个标号而已,编译时会将其指向导入表中的某个位置,运行时再依据这个位置来获取这个API函数的地址。
  当你把编译后的代码拷贝到别的PE文件中后,导入表不同,当然,也就不能找到相应的地址了。所以,必须在运行时自己获取API的地址。
 
to smokingroom
感谢你的回复,我今天也看到了关于老罗的一篇文章“暴力搜索内存中的API函数地址”的那篇文章,那里解释了为什么要暴力搜索API地址的问题,刚好可以回答我的问题。
我知道了,是我们写的API函数在编译成EXE文件后,会在PE文件中的导入表中记录关于此API函数的内存地址。
呵呵,其实我也整理了一些关于PE的资料,(但没有好好看过!)对与你的程序中的向文件头中添加一个节,我能看懂,但是设置地址与更改入口我就不太明白,还请指教!
小弟的内功实在是太次了,请不要笑话,还请帮帮忙!
在此先谢谢了!:)
 
好东西,简单了些,几年前见过这样的程序,还复杂些,防破解,没源码,但很容易跳过去。
 

Similar threads

回复
0
查看
1K
不得闲
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
923
DelphiTeacher的专栏
D
后退
顶部