快捷登录,享 免费下载
首页 > 教程资讯 > 教程详情

shielden的教程

补充锦囊 完美下载小客服 2021-03-30
文章分享
软件首页

完美者(wmzhe.com)网站以软件下载为基础,改版后的网站对功能性板块进行扩充,以期能够解决用户在软件使用过程中遇见的所有问题。网站新增了“软件百科”、“锦囊妙技”等频道,可以更好地对用户的软件使用全周期进行更加专业地服务。

Shielden是一款功能强大、免费的软件加密方案,Shielden入门级加密,包含软件授权系统,关键代码混淆、虚拟化,运行时反调试等功能,将以代码虚拟机为主,授权功能为辅助,提供入门级的软件加密安全方案,将解决由于使用过时、破解的保护软件所带来的无服务、无保障、无更新等问题,为非盈利性的免费软件和处于成长期的共享软件提供知识产权保护、专业级的抗逆向分析功能,并由Safengine技术支持团队支持,为软件的未来发展提供整套安全方案。此外,Shielden包含部分Safengine Protector和Safengine Licensor的功能性演示,其保护强度虽然不能满足商业软件保护的应用,但您可以不花一分钱体验Safengine系列商业软件产品提供的专业保护功能。

软件特点

Shielden将不对保护后的软件做任何功能限制,如弹出提示窗口、访问服务器等等,推翻传统免费加密软件有广告、后门的“潜规则”。门级加密,并不能代表Safengine全系列正式版之功能及效果,亦不可与正式版保护系统功能完整性相提并论,适用于非商业软件加密体验,Shielden包含的部分Safengine Protector和Safengine Licensor功能含演示性,并不代表Safengine Protector和Safengine Licensor的真正性能。

更新日志

增加GCC MAP文件支持

调整函数选择界面

修正繁体中文语言翻译

修正函数识别引擎BUG

修正代码乱序引擎BUG

"锦囊妙技"栏目是聚合全网软件使用的技巧或者软件使用过程中各种问题的解答类文章,栏目设立伊始,小编欢迎各路软件大神朋友们踊跃投稿,在完美者平台分享大家的独门技巧。

本站文章素材来源于网络,大部分文章作者名称佚失,为了更利于用户阅读和使用,根据需要进行了重新排版和部分改编,本站收录文章只是以帮助用户解决实际问题为目的,如有版权问题请联系小编修改或删除,谢谢合作。

shielden

shielden

软件大小:18.86 MB

高速下载

相关问答

更多
  • Shielden たSDK命令怎么调用

    编译后,加壳.运行提示错误.也不知道是不是这个壳不支持. SEGetExecTimeLeft 获取剩余使用时间 SESetExecTime 设置使用时间 SEGetTotalExecTimeUsed 获取已使用总时间 SEGetTotalExecTimeLeft 获取剩余使用总时间 SESetTotalExecTime 设置使用总时间 这些加了就出错.如果不加.直接保护.还是没问题的.

  • 这个软件是什么壳啊 OD加载总是失败

    Safengine Shielden v2.1.5.0不过这个好像是两个文件 摁在一块的。。OD关掉还有一个在运行

  • 求助 如何让 Safengine Shielden 2.3.3.0 可受调试

    (1)  在内存里找 CreateThread 的 Shadow :  癈了他. 请将第一条指令改成 ret 18, 如 : shadow_CreateThread 00D1FB55 8BFF mov edi, edi ;改成 ret 18 00D1FB57 55 push ebp 00D1FB58 8BEC mov ebp, esp 00D1FB5A FF75 1C push dword ptr [ebp+1C] 00D1FB5D FF75 18 push dword ptr [ebp+18] 00D1FB60 FF75 14 push dword ptr [ebp+14] 00D1FB63 FF75 10 push dword ptr [ebp+10] 00D1FB66 FF75 0C push dword ptr [ebp+C] 00D1FB69 FF75 08 push dword ptr [ebp+8] 00D1FB6C 6A FF push -1 00D1FB6E E8 D9FDFFFF call 00D1F94C 00D1FB73 5D pop ebp 00D1FB74 C2 1800 ret 18 复制代码 原因应该不用讲了吧. 那些反调试选项每打个勾就占一个 Thread. 我是看到 nevsayno 的贴图才想到 一个选项 一个 Thread 的, 借 他的图贴一下 :) (2)  在内存里(跟上面是同一段的)找 GetThreadContext 的 Shadow : Shadow_GetThreadContext 00D488DD 8BFF mov edi, edi 00D488DF 55 push ebp 00D488E0 8BEC mov ebp, esp 00D488E2 FF75 0C push dword ptr [ebp+C] 00D488E5 FF75 08 push dword ptr [ebp+8] 00D488E8 FF15 EA0ED100 call [D10EEA] 00D488EE 85C0 test eax, eax 00D488F0 0F8C 57B60000 jl 00D53F4D 00D488F6 33C0 xor eax, eax 00D488F8 40 inc eax 00D488F9 5D pop ebp 00D488FA C2 0800 ret 8 ;jmp 00E41F90 00D488FD 90 nop 00D488FE 90 nop 00D488FF 90 nop 00D48900 90 nop 00D48901 90 nop 复制代码 上面的 ret 8 改成跳到没用之处, 并增写下列代码 : 00E41F90 50 push eax 00E41F91 8B4424 0C mov eax, [esp+C] 00E41F95 8038 10 cmp byte ptr [eax], 10 00E41F98 75 16 jnz short 00E41FB0 00E41F9A 33D2 xor edx, edx 00E41F9C 8950 04 mov [eax+4], edx ;clr Dr0~3 00E41F9F 8950 08 mov [eax+8], edx 00E41FA2 8950 0C mov [eax+C], edx 00E41FA5 8950 10 mov [eax+10], edx 00E41FA8 52 push edx 00E41FA9 6A 04 push 4 00E41FAB E8 457C9C7B call kernel32.TlsSetValue 00E41FB0 58 pop eax 00E41FB1 C2 0800 ret 8 复制代码 原因:   壳总是会判断这 TlsValue 是否等于 Dr0+Dr1+Dr2+Dr3 之 Total 值   我们在壳欲取得 Drx 的值时,将之清为 0,并设 TlsValue 为 0 注: 因为这样本只有 Anti Debugger 时会调用 Shadow_GetThreadContext   所以若新代码你不想用串接的话,直接覆盖也行. (3)  在内存里找 SetThreadContext 的 Shadow :   并将开头改为: mov al, 1 ret 8 复制代码 原因:   若不癈了这函数的话,到时可能我们自己调试用的硬断会被抢走. (4)  之前我们有记下一个值为 42F765, 其实这是 VM 的 ds:[imm] 指令 : vm.ds:[imm] 0042F763 8B01 mov eax, [ecx] ;jmp 00534FC5 0042F765 8D1C33 lea ebx, [ebx+esi] 0042F768 ^ 7E B9 jle short 0042F723 0042F76A ^ 7F CB jg short 0042F737 复制代码 我们得 Hook 它.跳到没用处并写下列代码 :  这里的 4 个 cmp , 为一开头我们记录下来的那 Dr0~3 00534FC5 81F9 C4754000 cmp ecx, 004075C4 00534FCB 74 18 je short 00534FE5 00534FCD 81F9 49754000 cmp ecx, 00407549 00534FD3 74 10 je short 00534FE5 00534FD5 81F9 B4744000 cmp ecx, 004074B4 00534FDB 74 08 je short 00534FE5 00534FDD 81F9 AF744000 cmp ecx, 004074AF 00534FE3 75 09 jnz short 00534FEE 00534FE5 9C pushfd 00534FE6 66:810C24 0001 or word ptr [esp], 100 00534FEC 9D popfd 00534FED 90 nop 00534FEE 8B01 mov eax, [ecx] ;补上原指令 00534FF0 8D1C33 lea ebx, [ebx+esi] ;补上原指令 00534FF3 ^ E9 70A7EFFF jmp 0042F768 ;跳回 复制代码 原因:   壳总是会设那 4 个值到 Dr0~3, 并设 Dr7 为 33335555h   意思是只要读取那 4 处, 就会产生 80000004 的例外,   壳特意去读取时,若没发生 80000004 的话是不行的.   当你 OD 设了断点断下来后,任何将控制权再交给 Target 的动作前,   OD都会改其值,这就是很多人讲的:只要一断不管什么断,就没办法   正常 Run 下去了的原因.   一开头被我们删掉的 7 个 Thread 里也充满了这些对 Drx 的占用. (5)  改 VM 的 rdtsc 指令 vm.rdtsc 原样为 : rdtsc sub ebp, 8 mov [ebp+0], edx mov [ebp+4], eax 复制代码 中间当然被插入好多垃圾,我们主要是要让 eax = 0, 本样本如下 : 00437C98 8D2424 lea esp, [esp] ;改为xor eax,eax / nop 00437C9B 895500 mov [ebp], edx 复制代码 刚好可将 lea esp,[esp] 这垃圾指令改为 xor eax,eax / nop 原因:   壳总是利用 rdtsc.eax 来乱数做内存校验   我们有改了 ds:[imm], 而且我们可能日后会下一大堆软件断点(CC)   改了后,他就只固定去校验第0小块. 完成上面5项,对壳里对软件里对云里雾里,应该就跟调试记事本一样了. 你可完全的分析此壳了. 最后同样的,让我们期待大牛的脱壳脚本吧. 注: 针对 "无法下断点" 这词 :   若你当平常的壳在调试的话, 调试过程你会有二种现象 : 1. 你下了断点, 也断了下来, 也能 F9 成功 Run 起. 不要高兴, 这是因为壳尚未起动 Anti. 2. 若壳的 Anti 起动了的话, 你的断点断了下来, 但你已无法正常执行了 可能会得到 "内部错误" 之类的讯息. 3. 若内存校验被检出的话,可能直接 Crash .

  • Safengine Shielden v2.1.2.0 这个壳有会脱的么?

    提取DLL 脱壳几乎没人行