一、程序脱壳是什么意思
所谓“壳”就是专门压缩的工具。
这里的压缩并不是我们平时使用的RAR、ZIP这些工具的压缩,壳的压缩指的是针对exe、com、和dll等程序文件进行压缩,在程序中加入一段如同保护层的代码,使原程序文件代码失去本来面目,从而保护程序不被非法修改和反编译,这段如同保护层的代码,与自然界动植物的壳在功能上有很多相似的地方,所以我们就形象地称之为程序的壳。
1.保护程序不被非法修改和反编译。
2.对程序专门进行压缩,以减小文件大小,方便传播和储存。
而经过壳压缩后的exe、com和dll等程序文件可以跟正常的程序一样运行
新版中增加病毒扫描功能,是目前各类查壳工具中,性能最强的。
另外还可识别出EXE文件是用什么语言编写的VC++、Delphi、VB或Delphi等。
我们用PEID对easymail.exe进行扫描
UPX 0.89.6- 1.02/ 1.05- 1.24-> Markus& Laszlo
对一个加了壳的程序,去除其中无关的干扰信息和保护限制,把他的壳脱去,解除伪装,还原软件本来的面目。这个过程就叫做脱壳。
脱壳后的文件正常运行,功能没有损耗。
还有一般脱壳后的文件长度都会大于原文件的长度。
即使同一个文件,采用不同的脱壳软件进行脱壳,由于脱壳软件的机理不通,脱出来的文件大小也不尽相同。
自动脱壳就是用专门的脱壳机脱很简单按几下就 OK了
手动脱壳相对自动脱壳需要的技术含量微高这里不多说了
UPX是一种很老而且强大的壳不过它的脱壳机随处就能找到
来解压缩不过这些需要的命令符中输入
为了让大家省去麻烦的操作就产生了一种叫 UPX SHELL的外壳软件
注:如果程序没有加壳那么我们就可以省去第二步的脱壳了,直接对软件进行分析了。
通过尝试注册我们发现一个关键的字符串
反汇编一般用到的软件都是 W32Dasm
W32dasm对于新手易于上手操作简单
W32Dasm有很多版本这里我推荐使用 W32Dasm无极版
我们现在反汇编WebEasyMail的程序文件easymail.exe
然后看看能不能找到刚才的字符串
通过eXeScope这个软件来查看未能在w32dasm中正确显示的字符串信息
更改字体,更改菜单,更改对话框的排列,重写可执行文件的资源,包括(EXE,DLL,OCX)等。是方便强大的汉化工具,可以直接修改用 VC++及 DELPHI编制的程序的资源,包括菜单、对话框、字符串表等
新版可以直接查看加壳文件的资源
123,"恭喜您成为WebEasyMail正式用户中的一员!"
* Possible Reference to String Resource ID=00122:"?鲹e?"
不是没有是因为"?鲹e?"是乱码 w32dasm对于中文显示不是太好
先把今天会用到的汇编基本指令跟大家解释一下
call:调用子程序,子程序以ret结为
栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区。里面的变量通常是局部变量、函数参数等。
Possible Reference to String Resource ID=00122
* Referenced by a(U)nconditional or(C)onditional Jump at Address:
|:00406F17(C)//跳转来自 406F17
* Possible Reference to String Resource ID=00125:"1%"
:004070DF 8D4C2410 lea ecx, dword ptr [esp+10]
:004070E3 E8F75A1200 call 0052CBDF
* Possible Reference to String Resource ID=00122:"?鲹e?"
:004070EA 8D4C2408 lea ecx, dword ptr [esp+08]
:004070EE E8EC5A1200 call 0052CBDF
:00406F01 8B876C080000 mov eax, dword ptr [edi+0000086C]这里是对
:00406F07 8B4C2408 mov ecx, dword ptr [esp+08]
:00406F0B 50 push eax//这两个eax和ecx入栈就比较让我们怀疑了
:00406F0C 51 push ecx//产生注册码
:00406F0D E8AE381100 call 0051A7C0//这CALL里对注册位应该会有设置
:00406F12 83C40C add esp, 0000000C
:00406F15 85C0 test eax, eax//检测注册位
:00406F17 0F85C0010000 jne 004070DD//不存在注册位就会跳到4070DD就会出现那个错误的字串符了
好了我们找到了注册码0012AF04 00FD4A10 ASCII"04893e058f9c1c9fb16764c3b86f78e6"
相信这个是很多人梦寐以求的事情
注册机我们需要的是一个KEYMAKE的软件
做一个内存注册机需要下面几个资料
不过大家都是新手这个步骤就去了吧
不知不觉说了这么多废话希望能对大家有些作用
如果有什么不懂不理解的事情请联系我或者到论坛发贴
今天的课程就到这里大家赶快去动手实践吧~!
--------------------------------------------------------------------------------
--发布时间:2005-10-11 11:13:00
--实战查壳脱壳制作破解注册机最详细的教程
今天8月1日了刚从医院回来正好凌晨
这期的课程做晚了这里给大家道个歉
既然是建军节也要象征性的弄些东西来
为了建军节这期我选择打击黑暗势力--黑社会
远程屏幕;完全控制;文件传送; Telnet;远程关机
可以通过静态IP动态域名,网页文件的方式反弹通知IP.
内网的朋友想用自动上线功能,可以实现了
4本软件集成了常用攻击工具(如OpenTelnet OpenTftp等)
通过IPC拷贝,而且带有标准的拷贝进度,全球首次面世;
opentelnet就不介绍了,相信大家都知道;
opentftp为本软件独创,可以远程开启tftp服务;
5本软件集成的极速端口扫描器(扫描速度世界领先)
最开始我用的扫描器是大名鼎鼎的SuperScan3.0,感觉速度很慢;
后来改用SSPort1.0扫描速度有了明显的提高.
经过速度对比,本软件扫描速度比SSPort快 1/3,是SuperScan的N倍!!!
我的机器是赛扬700+256M内存,一般扫描速度为180台/秒;
一些号称可以达到1000台/秒的扫描器在本机上试验只有120台/秒.
--------------------
--------------------
ASPack 2.12-> Alexey Solodovnikov、
--------------------
0048D3B0 75 08 JNZ SHORT黑社会.0048D3BA
0048D3B2 B8 01000000 MOV EAX,1
0048D3B7 C2 0C00 RETN 0C//402c4a
这是一个小小的 PE文件解压缩器(EXE, DLL,...)她可以解压缩
自 Aspack 2000以后的任何 Aspack版本.包括:
-------------------
-------------------
大家于是一定想到了第一节的办法
-------------------
打开eXeScope并载入但是发现都没有字符串
-------------------
Microsoft Visual Basic 5.0/ 6.0
--------------------
步骤六采用GetVBRes v0.51对付VB程序
GetVBRes v0.51一个非常好的VB汉化工具
对于VB程序我们用专门汉化用的GetVBRes v0.51来对付它
也许有人不理解为啥用汉化工具呢
---------------------
步骤六用W32Dasm载入修改后的文件
那个就是我们修改的原来是“注册码错误!”
* Referenced by a(U)nconditional or(C)onditional Jump at Address:
:00479474 B904000280 mov ecx, 80020004
:00479479 B80A000000 mov eax, 0000000A
:0047947E 894D9C mov dword ptr [ebp-64], ecx
:00479481 894DAC mov dword ptr [ebp-54], ecx
:00479484 894DBC mov dword ptr [ebp-44], ecx
:00479487 8D5584 lea edx, dword ptr [ebp-7C]
:0047948A 8D4DC4 lea ecx, dword ptr [ebp-3C]
:0047948D 894594 mov dword ptr [ebp-6C], eax
:00479490 8945A4 mov dword ptr [ebp-5C], eax
:00479493 8945B4 mov dword ptr [ebp-4C], eax
* Possible StringData Ref from Code Obj->"1111111"//刚才我们看到的注册吗错误的哦
:00479496 C7458C98194100 mov [ebp-74], 00411998
:0047949D C7458408000000 mov [ebp-7C], 00000008
安照习惯我们来到4792EF后接着向前看
* Referenced by a(U)nconditional or(C)onditional Jump at Address:
:0047928C 8B55E4 mov edx, dword ptr [ebp-1C]
* Reference T MSVBVM60.__vbaStrMove, Ord:0000h
:0047928F 8B3578124000 mov esi, dword ptr [00401278]
:00479295 8D4DE0 lea ecx, dword ptr [ebp-20]
:00479298 895DE4 mov dword ptr [ebp-1C], ebx
:0047929D 8B4DE8 mov ecx, dword ptr [ebp-18]
:004792A2 8D55E0 lea edx, dword ptr [ebp-20]
:004792A7 E8440F0000 call 0047A1F0
:004792AE 8D4DDC lea ecx, dword ptr [ebp-24]
* Reference T MSVBVM60.__vbaInStr, Ord:0000h
:004792B5 FF15E8114000 Call dword ptr [004011E8]
:004792BD 8D45E8 lea eax, dword ptr [ebp-18]
:004792C2 8D4DDC lea ecx, dword ptr [ebp-24]
:004792C8 8D55E0 lea edx, dword ptr [ebp-20]
* Reference T MSVBVM60.__vbaFreeStrList, Ord:0000h
:004792D3 FF150C124000 Call dword ptr [0040120C]
:004792D9 8D45D4 lea eax, dword ptr [ebp-2C]
:004792DC 8D4DD8 lea ecx, dword ptr [ebp-28]
* Reference T MSVBVM60.__vbaFreeObjList, Ord:0000h
:004792E3 FF1548104000 Call dword ptr [00401048]
:004792E9 83C41C add esp, 0000001C
:004792EF 0F847F010000 je 00479474
EAX=0015A47C,(UNICODE"1000464401458371268751252821609291844811465000")
1000464401458371268751252821609291844811465000
------------------
步骤七用不确定正确的注册尝试注册
1000464401458371268751252821609291844811465000
------------------
------------------
找一个网站比如黑基或者你的朋友之间
------------------
------------------
------------------
所以才导致这期的课程这么晚才做出来
--------------------------------------------------------------------------------
--发布时间:2005-10-11 16:42:00
目标:采用ASPACK、UPX加壳的NOTEPAD.EXE
工具:OllyDbg 1.09英文版、DUMP插件、PEditor
关键词:脱壳、OllyDbg、OD、DUMP、PUSHAD、POPAD
大多数壳都有一个共同的特点。在壳准备开始解压时都要执行PUSHAD,当壳解压
完时都要调用POPAD。到底PUSHAD和POPAD是什么干什么用的呢?其实PUSHAD是用来将
所有普通寄存器顺序进栈的指令,POPAD是所有普通寄存器顺序出栈指令。POPAD的出
栈顺序和PUSHAD相反。壳为了保护寄存器,便在解压前将所有寄存器进栈保护起来,
当解压完成后又将寄存器出栈,恢复其原貌,并将IP设置为原程序的OEP。这样我们就可以通过这个特点快速脱掉多种软件的壳。
先用ASPACK将NOTEPAD.EXE加壳。用OllyDbg(以下简称OD)载入。看见光标停在
0040D001>60PUSHAD;壳的入口。准备开始解压,保护寄存器
0040D002E8 03000000CALLNOTEPAD.0040D00A
我们不管它,直接向下翻页找POPAD指令。在40D3AF处找到POPAD
0040D3AF61POPAD;解压完成,恢复寄存器
0040D3B075 08JNZSHORT NOTEPAD.0040D3BA
0040D3BA68 CC104000PUSHNOTEPAD.004010CC;返回到原程序OEP处
选定40D3AF这一行,F4运行到此处。在这里说明壳已经完成解压工作。并且返回到原
程序的入口处。F8单步到4010CC,这里便是原程序的OEP。用DUMP插件直接DUMP出来就可以了(在DUMP时注意将入口点改为10CC,即4010CC-400000=10CC,400000是映象基地址)。文件大小是77059字节,用PEditor重建PE头便可以了。未压缩的文件大小是53248字节,脱壳后的文件大小是60930字节。
用UPX将NOTEPAD.EXE加壳,然后用OD载入。停在PUSHAD处,用脱ASPACK同样的方
0040E9FF- E9 C826FFFFJMPNOTEPAD.004010CC
下面的JMP就是跳转到程序的OEP处。F4到40E9FF处,F8单步一下,来到OEP处,DUMP出来。DUMP文件的大小是65536字节,直接就可以运行。为了完美,用PEditor重建PE头。那么脱壳后的文件大小是60293字节。
用上面说的方法,很多种壳都可以快速的手动脱掉。如果你没有OD的DUMP插件,
可以到新论坛的下载区找。如果实在没有,也可以直接停在OEP处用PEDump来DUMP。很久没有写东西了。这一篇是写给初学者练手的。其实壳也是软件,再怎么复杂都有可能被脱下来。祝你好运。
另外,转载时请保持本文的完整。
--------------------------------------------------------------------------------
--发布时间:2005-10-11 17:10:00
--用Ollydbg手脱EncryptPE V1.2003.5.18加壳的DLL
有兄弟让看看EncryptPE加壳的DLL,我说新版的就不行了,搞不定的。后来看是EncryptPE V1.2003.5.18旧版加壳的,应该用的是老王老师发布的免费版。呵呵,所以脱了一下,顺便记录过程。
大家可以自己用EncryptPE V1.2003.5.18免费版加个EdrLib.dll看看。
—————————————————————————————————
设置Ollydbg忽略所有的异常选项。用IsDebug 1.4插件去掉Ollydbg的调试器标志。
添加“同时忽略0EEDFADE、C0000008、009B25C、00953D74”异常。
代码:--------------------------------------------------------------------------------
00877000 60 pushad//进入OD后停在这
00877002 64:FF35 00000000 push dword ptr fs:[0]
00877009 E8 79010000 call EdrLib.00877187
--------------------------------------------------------------------------------
下断:BP IsDebuggerPresent断下后取消断点
为何用这个地址?因为V12003518.EPE是相同的。呵呵,钻了个旧版的空子。
其实可以再BP GetProcAddress,根据返回地址来判断。如果返回地址是711XXXXX,说明这是V12003518.EPE的调用,就可以取消断点Ctrl+F9返回了。具体情况以堆栈的返回地址为准。
现在Ctrl+S在“整个区段”搜索命令序列:
代码:--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
找到在711A339F处,我们在711A339F处下个硬件执行断点。
现在我们关闭Ollydbg,重新载入这个dll,直接Shift+F9运行,中断在711A339F处
代码:--------------------------------------------------------------------------------
711A33A1 8B55 F8 mov edx,dword ptr ss:[ebp-8]
//改为: mov edx,dword ptr ss:[ebp-4]★正确函数写入
711A33A4 8910 mov dword ptr ds:[eax],edx
711A33AB 64:8910 mov dword ptr fs:[eax],edx
711A33AE EB 0A jmp short V1200351.711A33BA
--------------------------------------------------------------------------------
把711A33A1处修改好之后,取消以前下的711A339F处的断点。
代码:--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
找到在711A43C2处,我们在下面xor eax,eax的711A4401下断。Shift+F9运行
代码:--------------------------------------------------------------------------------
711A43C5 8B45 B4 mov eax,dword ptr ss:[ebp-4C]
711A43CB 8945 B4 mov dword ptr ss:[ebp-4C],eax
711A43CE 8B03 mov eax,dword ptr ds:[ebx]
711A43D2 0F87 39FDFFFF ja V1200351.711A4111
711A43D8 A1 74C71B71 mov eax,dword ptr ds:[711BC774]
711A43DD 8038 00 cmp byte ptr ds:[eax],0
711A43E0 75 1F jnz short V1200351.711A4401
711A43E2 8B45 C4 mov eax,dword ptr ss:[ebp-3C]
711A43E8 8945 C4 mov dword ptr ss:[ebp-3C],eax
711A43EB 8B45 C4 mov eax,dword ptr ss:[ebp-3C]
711A43EE 8378 0C 00 cmp dword ptr ds:[eax+C],0
711A43F2 76 0D jbe short V1200351.711A4401
711A43F4 8B45 C4 mov eax,dword ptr ss:[ebp-3C]
711A43F7 8378 10 00 cmp dword ptr ds:[eax+10],0
711A43FB 0F87 38FCFFFF ja V1200351.711A4039//循环处理IAT
711A4401 33C0 xor eax,eax//此处下断!★
--------------------------------------------------------------------------------
当我们中断在711A4401处时IAT已经处理完毕,此时就可以用ImportREC得到正确的输入表了。
因为EncryptPE后面有自校验,所以我们返回711A33A1处,点右键->撤销选择,恢复原来的代码。
—————————————————————————————————
Ctrl+S在“整个区段”搜索命令序列:
二、软件如何脱壳
所谓“壳”就是专门压缩的工具。
这里的压缩并不是我们平时使用的RAR、ZIP这些工具的压缩,壳的压缩指的是针对exe、com、和dll等程序文件进行压缩,在程序中加入一段如同保护层的代码,使原程序文件代码失去本来面目,从而保护程序不被非法修改和反编译,这段如同保护层的代码,与自然界动植物的壳在功能上有很多相似的地方,所以我们就形象地称之为程序的壳。
1.保护程序不被非法修改和反编译。
2.对程序专门进行压缩,以减小文件大小,方便传播和储存。
而经过壳压缩后的exe、com和dll等程序文件可以跟正常的程序一样运行
新版中增加病毒扫描功能,是目前各类查壳工具中,性能最强的。
另外还可识别出EXE文件是用什么语言编写的VC、Delphi、VB或Delphi等。
我们用PEID对easymail.exe进行扫描
UPX0.89.6-1.02/1.05-1.24->Markus&Laszlo
对一个加了壳的程序,去除其中无关的干扰信息和保护限制,把他的壳脱去,解除伪装,还原软件本来的面目。这个过程就叫做脱壳。
脱壳后的文件正常运行,功能没有损耗。
还有一般脱壳后的文件长度都会大于原文件的长度。
即使同一个文件,采用不同的脱壳软件进行脱壳,由于脱壳软件的机理不通,脱出来的文件大小也不尽相同。
自动脱壳就是用专门的脱壳机脱很简单按几下就OK了
手动脱壳相对自动脱壳需要的技术含量微高这里不多说了
UPX是一种很老而且强大的壳不过它的脱壳机随处就能找到
来解压缩不过这些需要的命令符中输入
为了让大家省去麻烦的操作就产生了一种叫UPXSHELL的外壳软件
注:如果程序没有加壳那么我们就可以省去第二步的脱壳了,直接对软件进行分析了。
通过尝试注册我们发现一个关键的字符串
反汇编一般用到的软件都是W32Dasm
W32dasm对于新手易于上手操作简单
W32Dasm有很多版本这里我推荐使用W32Dasm无极版
我们现在反汇编WebEasyMail的程序文件easymail.exe
然后看看能不能找到刚才的字符串
通过eXeScope这个软件来查看未能在w32dasm中正确显示的字符串信息
更改字体,更改菜单,更改对话框的排列,重写可执行文件的资源,包括(EXE,DLL,OCX)等。是方便强大的汉化工具,可以直接修改用VC及DELPHI编制的程序的资源,包括菜单、对话框、字符串表等
新版可以直接查看加壳文件的资源
123,"恭喜您成为WebEasyMail正式用户中的一员!"
*PossibleReferencetoStringResourceID=00122:"?_e?"
不是没有是因为"?_e?"是乱码w32dasm对于中文显示不是太好
先把今天会用到的汇编基本指令跟大家解释一下
call:调用子程序,子程序以ret结为
栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区。里面的变量通常是局部变量、函数参数等。
PossibleReferencetoStringResourceID=00122
*Referencedbya(U)or(C)onditionalJumpatAddress:
*PossibleReferencetoStringResourceID=00125:"1%"
004070DF8D4C2410leaecx,dwordptr[esp10]
004070E3E8F75A1200call0052CBDF
*PossibleReferencetoStringResourceID=00122:"?_e?"
004070EA8D4C2408leaecx,dwordptr[esp08]
004070EEE8EC5A1200call0052CBDF
00406F01moveax,dwordptr[edi0000086C]这里是对
00406F078B4C2408movecx,dwordptr[esp08]
00406F0B50pusheax//这两个eax和ecx入栈就比较让我们怀疑了
00406F0DE8AE381100call0051A7C0//这CALL里对注册位应该会有设置
00406F1585C0testeax,eax//检测注册位
00406F17jne004070DD//不存在注册位就会跳到4070DD就会出现那个错误的字串符了
好了我们找到了注册码0012AF0400FD4A10ASCII""
相信这个是很多人梦寐以求的事情
注册机我们需要的是一个KEYMAKE的软件
做一个内存注册机需要下面几个资料
不过大家都是新手这个步骤就去了吧
不知不觉说了这么多废话希望能对大家有些作用
三、脱壳能获得源代码吗
加壳的全称应该是可执行程序资源压缩,是保护文件的常用手段.
加壳过的程序可以直接运行,但是不能查看源代码.要经过脱壳才可以查看源代码.
加“壳”其实是利用特殊的算法,对EXE、DLL文件里的资源进行压缩。类似WINZIP的效果,只不过这个压缩之后的文件,可以独立运行,解压过程完全隐蔽,都在内存中完成。解压原理,是加壳工具在文件头里加了一段指令,告诉CPU,怎么才能解压自己。加“壳”虽然增加了CPU附带但是减少了硬盘读写时间,实际应用时加“壳”以后程序运行速度更快(当然有的加“壳”以后会变慢,那是选择的加“壳”工具问题)。
一般软件都加“壳”这样不但可以保护自己的软件不被破解、修改还可以增加运行时启动速度。
加“壳”不等于木马,我们平时的巨大多数软件都加了自己的专用“壳”。
RAR和ZIP都是压缩软件不是加“壳”工具,他们解压时是需要进行磁盘读写,“壳”的解压缩是直接在内存中进行的,用RAR或者ZIP压缩一个病毒你试试解压缩时杀毒软件肯定会发现,而用加“壳”手段封装老木马,能发现的杀毒软件就剩不下几个。
因为加壳了之后等于把这个文件进行了保护(就是有些杀毒软件杀不了的原因)
因为文件不能重复加壳.判断依据是文件是否已经加了保护
修改文件不一定要脱壳,看你的水平
《软件防盗版战士》是一个以数字许可的形式为MicrosoftWindows下(PE格式)应用程序提供版权保护以及数字化销售支持的纯软件产品。它含有认证版、序列号版这两个可选版本。认证版以128位二进制证书文件作为被保护软件的最终用户使用许可,并且主要以最终用户的硬盘、CPU、网卡及操作系统等特征信息为版权保护的安全源(保守地说,理论上认证版的版权保护强度达到3-5年内不可破解)。
安全指标:1、对象安全强度——《软件防盗版战士》的各种对象安全都尽可能地加入了加密算法中,其强度相当于对称算法的128位加密,比普通硬件狗的8位、16位、32位和64位(很少有64位的)安全强度强许多。2、入口安全强度——《软件防盗版战士》采用功能相关法解决入口安全问题。入口安全的最小复杂度大于40位的安全强度。《软件防盗版战士》的入口安全强度最大限定为128位(含128位)。
比泰软件防盗版战士2005J(BS-APC),是比泰科技出品的一个软件加密保护产品系列(含L版、A版、J版等产品线),它们为商业软件提供可靠的防盗版保护并支持数字化发行。|它采用比泰公司世界领先的“执行代码抽取加密”技术,软硬件结合,以“认证技术”保证软件“对象安全”、以“功能相关法”保证软件“入口安全”、以具有唯一性的计算机(物理)特征数据作为身份认证指纹,并以软件用户计算机本身的运算能力进行防盗版保护。具有64位以上,到128位的加密安全强度。安全强度远胜传统的外壳加密式加密狗、API内嵌式加密狗,软件保护的功能范围及运行效率超过智能狗,且无须学习加密狗编程,不引入附加硬件维护问题。|适合对C/MFC/VisualC++(VC++)/BorlandC++Builder(BCB)、Delphi/ObjectPascal、PowerBuilder(PB)、Authorware、Director等开发工具所编译程序的保护。|因为它是对真实指令进行代码抽取加密,因此暂不保护伪编译程序,如VB、VFP、C#、JAVA。
ACProtect是由国人研究开发并拥有自主知识产权的加密软件精品,它有许多技术已经达到并超过了国外同类产品,是一个为Windows下的EXE/DLL/OCX/SCR等32位可运行文件加密系统。它通过为程序加上一层坚硬的保护壳,可以非常有效的防止盗版。还可以为程序设置限制注册功能。
即使你没有程序的原代码,你也可以用ACProtect在程序上加上运行次数限制,运行天数限制,运行有效日期限制。通过公匙加密算法(RSA)创建并校验注册KEY,只有在RSAKEY正确的情况下,才对那些受保护的代码进行正常解码。同时使用了内嵌式加密,可以有效的防止加密软件从内存中被抓取,也就是无法被脱壳。
内置反调试引擎,有效的增加了破解的难度。
专用的API系统,可以使ACProtect和你的软件紧密的接合在一起,这样,你就可以通过使用ACProtect来创建你的全功能评估版。
XQBoxSoftwareProtecting是一个以数字许可的形式为应用程序提供版权保护以及数字化销售支持的纯软件产品。它采用机器具有唯一性的数据做指纹,利用宿主计算机的运算能力进行防盗版保护。
XQBox保护系统是集软件保护和安装工具于一身的集成工具。XQBox核心代码是遵守标准c的规则来编写,它可以在,windows3.x/9x/2000/nt,unix,linux等各种操作系统下编译运行。作为中间件,它可在c、c++、java、delphi、vc、vb、vf、Masm32、pb、php、Authorware等。各种工具开发的软件中嵌入使用,它的兼容性非常好。核心代码经全域均匀抽值测试,各种特值测试和可行的全域测试均通过。
这款反盗版软件的用户注册方便,终端用户不需要手动输入序列号认证码等等,一切由注册端软件自动完成;用户机器的硬件信息作为注册码/加密密钥;一个拷贝只能在同一台机器上注册;只要是同一台机器,可以在这台机器上注册多次;只能在注册的那台机器上运行
使用理论上安全的密码学协议和算法,保证不可脱机破解。不能通过注册机破解;不能通过散发序列号破解。
更改检测(可以检测病毒和破解者更改);反跟踪功能(Anti-Debug)。
运行时代码完整性校验,可防止Cracker跟踪时设置断点;可防止通过补丁程序破解。
反Dump功能(Anti-Dump);反反汇编功能(Anit-Disassembler);可以有效的管理经销商和序列号的发放;可以统计软件的销售数量;可以有效的管理用户注册。
EncryptPE能加密保护常规PE文件(EXE、DLL、OCX等一般程序或NT服务程序),防静态分析修改,反动态跟踪调试,有效地保护软件,防止盗版。除常规的对抗调试器(SoftIce、TRW、OllyDbg等)、监视器、DUMP工具方法外,EncryptPE采用的加密保护的手段还有:随机加密算法、CRC校验、变形、代码替换、进程注入、APIHOOK、多线程、调试运行、全程监控等。
能将普通软件变成共享软件,增加定时注册提醒、限制试用日期、限制试用次数、限制试用天数、限制每次试用多长时间等功能。
能根据最终用户的机器信息、注册用户及加密时的保护密码计算注册码,从诸多加密算法中随机选择一种用于注册码的计算。
支持多语言,并为待加密软件提供多语言接口。
向待加密软件提供丰富的方便的编程接口,便于设计个性注册方式,同时使被加密程序与加密壳之间融为一个整体,增加破解难度。
可以运行于多种Windows平台,包括9X/ME/NT/2000/XP/2003。
本软件可以自动随机生成2至32位注册序列号及对应的注册码,并将这些注册信息包含到一个动态联接库DLL文件中,这样软件开发者可以将这个DLL文件同应用程序一并发行,并在应用程序的相关模块中调用这个DLL文件中提供的函数获得注册号及相对应的注册码,注册号及相对应的注册码对软件使用者来说是不透明的,它可以用效的避免软件的盗版及其重复注册,切实保护软件开发者的版权。随软件一同提供免费的DLL源程序生成器工具,DLL注册码查询工具,启动应用程序时的注册对话框示例程序及全部C++源代码等。
计算机软件防盗版系统具有国际领先水平的保护知识产权的新技术。现该技术已顺利完成了全部研制。利用嵌入式加密,动态激活解密,工具化设计特征,检测体系,产品形态技术。于1999年7月通过公安部计算机信息安全检测中心的检测。计算机软件防盗版磁盘、光盘获公安部颁发的计算机信息安全产品销售许可证。
好了,关于exe脱壳和EXE脱壳教程的问题到这里结束啦,希望可以解决您的问题哈!