Enigma protector v1.12

What is Enigma Protector?

Enigma Protector is application for Microsoft Windows. It protects your work from program crackers with help of state-of-the-art encryption, data compression, and other security technologies. It provides creation of trial and registered applications, with possibility of the checking mode parameters with help of internal Enigma API functions. It allows you to design and add a complete software protection and registration-key system to your existing programs. It works with any programming language that produce Windows PE files. Enigma works with Win PE 32 executables (*.exe), screen savers (*.scr) and dynamic libraryes (*.dll, *.ocx). So if you are developer and you are interested in raising of level of white sales then Enigma Protector is your choice.

Enigma protector is shareware programm. You can try free demo version but it has some limitations. You will not be able to use Encrypted sections, DLL attachment, Black list. See help for more info.

Features of the Enigma Protector

  • compression & encryption of file
  • application code emulation:
    • file entry point protection (delete original code and replace it with polimorphic instructions)
    • import table redirection
    • advance force import protection
    • emulation some WinAPI functions
    • protection data section
    • encryption section of application data
  • "not crack" protection:
    • anti-debuggers (as SoftIce, OlliDbg, TWD) protection
    • control sum (CRC) checking
    • trash instructions
    • anti-tracing tricks
    • memory anti- dumping, patching
  • possibility to create trial applications
    • trial time depend on number of executions, number of used days, until the date
    • clock reversing control
    • internal Enigma API for working with trial mode
  • possibility to create registered application by means registration key(s)
    • application keys locking
    • time limited keys
    • hardware locking keys

Version description:

  • Added: trial option "Don't exit when expired"
  • Improved: SaveKey API function
  • Bug fixed: Application error when "Viruses check" option is enabled
  • Bug fixed: Application crash when "Reminder message" option is enabled
  • Bug fixed: Delphi9 applications - incorrect data section protection
  • Bug fixed: Visual Basic programs - restore exception handle
  • Bug fixed: trial was not reset when application is registered
  • Bug fixed: incorrect emulation "CompareMem" function (Map file)
  • Bug fixed: "Create backup copy", didn't work
  • Bug fixed: incorrect relocation table for *.dll files
  • Bug fixed: incorrect processing export table
  • Added overlay support
  • Completed loader "Run Password" and "Error" froms, changed color map
  • Added XP control style
  • Added obfuscated import redirection. Turn on 'Import redirection' option to take effect
  • Improved import redirection option
  • Improved data protection
  • New emulation functions option, use map file for it (see help for more info, Borland developpers only)
  • New compression algorithm, it's very fast (Fast compression option)
  • Added run-time loader code encryprion
  • Rebuild image processing engine. It's rather fastest now
  • Removed bug in "Exit on file name change"
  • Removed bug in searching breakpoints in system functions

http://www.enigma.izmuroma.ru/?page=downloads

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
【文章标题】: 绕过 Enigma Protector 2.xx 注册保护 【文章作者】: CodeGame 【作者邮箱】: [email protected] 【作者主页】: http://blog.csdn.net/codegame 【作者QQ号】: 441673604 【软件名称】: windows 计算器 【软件大小】: 669kb 【下载地址】: windows xp 系统自带 【加壳方式】: The Enigma Protector 2.20 正版 【保护方式】: The Enigma Protector 2.20 正版 【编写语言】: VC 【使用工具】: OllyDBG 【操作平台】: Windows XP sp3 【软件介绍】: 1+1=2 【作者声明】: 文笔菜的很请谅解,只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教! -------------------------------------------------------------------------------- 【详细过程】 参考了 http://unpack.cn/thread-59541-1-2.html 定位方式,迅速定位到了 Enigma 注册授权位置: 010F2CBF E8 CC76F3FF call calc_em.0102A390 010F2CC4 8B45 E8 mov eax,dword ptr ss:[ebp-0x18] 010F2CC7 E8 FC78F3FF call calc_em.0102A5C8 010F2CCC 50 push eax 010F2CCD E8 DE90FFFF call calc_em.010EBDB0 ; Check Registration Key Info 010F2CD2 85C0 test eax,eax ; Eax =1 Success! 010F2CD4 0F95C0 setne al 这里010EBDB0 这个CALL负责检测注册码是否正确,正确返回1 否则返回0,由于 Enigma有多线程内联补丁保护因此不能 直接硬写此处代码,所以我们采用了硬件断点HOOK来实现。 1:定位PatchAddress: 先看此块内存信息: 地址=01026000 大小=002F4000 (3096576.) 属主=calc_em 01000000 区段= 类型=Imag 01001002 访问=R 初始访问=RWE 这块内存实际是Enigma的内置DLL授权模块,此块DLL是被加密压缩过,因此也无法直接patch,通过对比加不同的程序 发现这块区域解压后的代码都不变: $+CCCBF > E8 CC76F3FF call calc_em.0102A390 $+CCCC4 > 8B45 E8 mov eax,dword ptr ss:[ebp-0x18] $+CCCC7 > E8 FC78F3FF call calc_em.0102A5C8 $+CCCCC > 50 push eax $+CCCCD > E8 DE90FFFF call calc_em.010EBDB0 ; Check Registration Key Info $+CCCD2 > 85C0 test eax,eax ; Eax =1 Success! $+CCCD4 > 0F95C0 setne al 因此PatchAddress = BaseAddress+PatchOffsetAddress,通过上面分析得到 Enigma Protector 2.20 的 PatchOffsetAddress = 0xCCCD2 ,不同版本的PatchOffsetAddress 有可能不一样,BaseAddress 的获取就更简单了, 直接搜索区段判断VirtualSize为0x002F4000的VirtualAddress+GetModuleHandle(0)即为BaseAddress,整理公式: PatchAddress = GetModuleHandle(0)+VirtualAddress+0xCCCD2 定完毕。 2.硬件Hook: 这里我们采用AddVectoredExceptionHandler向量化异常API来实现,具体细节请自己google,重点讲下Hook触发后的过程 由于我们Patch点为$+CCCD2 > 85C0 test eax,eax ,因此只需要模拟操作EFlags然后跳过此段指令即可: pException^.ContextRecord^.EFlags := $202; //TEST eax,eax pException^.ContextRecord^.Eax := 1; //TEST eax,eax PException^.ContextRecord^.Eip := PException^.ContextRecord^.Eip + 2; //Nex 3.整体封装: 这里我们采用是把硬件HOOK和处理的过程都封装成DLL 然后导出一个GoPatch的函数供目标程序调用,那么如何使目标程序 加载并执行我们的GoPatch函数呢,我想办法很多注入,远线程等等。。这里我采用了劫持EIP的方式使目标程序加载我们的 DLL并执行GoPatch函数。 到这里已经全部完成,执行GoPatch后任意输入或者不输入用户名、注册码都可以直接绕过Enigma 的注册保护直接执行。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值