|
[原创]ZProtect脱壳无KEY解码总结
留一楼进行总结。。 原来因为复制内存时里面的乱码导致部分文章发不出来,现在已经改好了。。 ========================================== 本文起源于。。下面的三个论坛悬赏帖: ZProtect 1.4.9脱壳练习遇到的疑问 主要疑问的是IAT修复后,脱壳,文件无法运行。 ZProtect 1.4.9脱壳练习遇到的疑问二 主要讨论的是无KEY解码和反ANTI-HOOK。 ZProtect 1.4.9脱壳练习遇到的疑问三 厄……这个没什么好说的,是我太菜了,连很多脱壳基本技巧都不懂所以问的。 ========================================== 2010-04-29 20:16 重新检查了一遍,把部分错字及可能产生误解的句子,进行了修订。 最后补充一下,我是在各位朋友的帮助下,有所学习与长进的。我并不强,觉得不错可以说声“谢谢”,如此足矣。 厄,这个帖子采用的试验程序,是由Storm1980提供的,虽然不是1.4.9的版本,但也要猜XOR数值解码,据说是什么企业版~~我只能猜解码,不能脱壳,因为无法修复IAT,很有意思的一种情况。 而XIMO大大的脚本,我是在吾爱论坛找到的,而上文中,XIMO大大的帖子,是昨天chyx告诉我的,原来我也不知道。当时,对XIMO大大的脚本的某些地方,还是很不解的。 这里也要谢谢storm1980和chyx~~ ========================================== 2010-05-01 03:31 忘记说明了。。最开始的脚本模板,大体上是仿Ximo大大的脚步写的,譬如获取OEP~~ 也是第一次学写OD脚本~感觉上还是蛮容易的。 除了repl命令不支持变量这点外。。已经在OD脚本插件的官方论坛留下意见了,希望可以更新。 ========================================== 不过怎么还是觉得有些东西忘了写。。。等我想起来再回来补上。 |
|
[转帖]Trial-Reset 4.0 RC1
Interesting tool~~ |
|
请教ZProtect脱壳中,IAT范围该如何寻找?
你确定么。。最新版无KEY不脱壳~~更无法破解。。郁闷中…… |
|
请教ZProtect脱壳中,IAT范围该如何寻找?
hyperchem 2010-4-7 06:38 不是IAT的下限,而是IAT调用的下限。确定的方式是通过通过搜索特征码(我的文章里面应该提到了特征码是什么)。直到找不到为止。稍微比最后一处IAT调用的地址大一些就可以看做是IAT调用的下限。 IAT上限为第一个FF25处。。 问题解决。。 |
|
[建议]关于论坛新注册用户发帖和论坛小测试。
论坛小测试。。看雪有啊。。我也做过,来拿币~但是问题答案也不太确定~最主要是规章里并没有很详细地描述。。我还是答错了2次才答对的,如果一定要答对才能发帖,可能新来的用户会不耐烦~ |
|
需要指明一个方向~我自己研究(Delphi程序&网络验证)
今天看了很多VM的资料,VM是一种虚拟机保护技术,我也确实在大家贴出来的VM代码中找出了我遇到的这种GETCURTHREADID开头的迷宫~~ VM作为虚拟机保护技术,可以只保护核心代码,也可以把整个程序纳入保护,后者会使得入口点被隐藏,无法正常进入程序入口进行调试,论坛上的反VMP技术一般只在于找到入口点,并且修复入口,但没有一种好的方法可以反出VMP保护的代码。 看到很多人说到NOOBY会VMP还原代码,专门搜索了一个下午,才知道NOOBY是谁,做过什么,他对VMP的一些了解与认识。 在另一个论坛找到他说的一段话: “VM有什么强的? 一段VM,和外面有哪些交流都搞清楚了,把正确的数据喂给他,难道还能生出个孬种来?” 厄。。从原理上说,我能理解他的做法,也确实可行~~但是我更像做到的是可以更改代码流程,跳过一些地方,跳到另一些地方,而不仅仅是需要某个判断通过。 另外,VM_CODE的代码研究是一个高难度的工作啊~而且,还不知道如何修改VM_CODE。。不知道VM_CODE是怎么实现JE\JZ等比较的。 |
|
需要指明一个方向~我自己研究(Delphi程序&网络验证)
[QUOTE=ucantseeme;783025]0050FDF4 64FF30 push dword ptr fs:[eax] 0050FDF7 648920 mov fs:[eax], esp 0050FDFA 68A6DEDEB7 ...[/QUOTE] 楼上好言简意赅啊~~好,方向有了,我自己研究。。 如果有相关问题大家有兴趣讨论的,就说~ 提高奖励到30,然后回答者一人一半吧~~~ |
|
需要指明一个方向~我自己研究(Delphi程序&网络验证)
突然想补充一点,VM是壳么? VM的介绍看过一点,说是可以让编程作者有选择地对某些代码段进行保护,保护段落会丢进虚拟机中进行执行,以起到无法直接反编译获得可辨识汇编代码。 而在看雪反了不少的文章,貌似都是在说如何找到VM入口,然后脱VM壳~~ VM是壳??? 加了壳的程序DEDE都是无法反编译的,会显示“发现使用运行时间包编译的应用程序”~ 而我所遇到的这个程序,开始是加了壳的,NsPacK V3.7 -> LiuXingPing *的壳,而用DiE 0.64可以检测到是DELPHI编译但不知道确切版本,通过脱壳机脱壳成功后,再用PEID或者DiE检测,都可以检测到具体的DELPHI版本Borland Delphi 6.0 - 7.0 [Overlay]。 当然不拍出PEID或者DIE误报,毕竟尽信他们不如没他们~~我之前也在另一个加壳程序检测时,检测不出是什么壳,但是通过DiE的Entropy功能依然是可以检测出Packed,用通用脱壳机脱壳后,显示Not Packed。 现在的程序,脱NsPacK壳后也是显示没有Packed的~~所以我不认为还有壳啊。。 当然。。对于VM的了解我仅仅是皮毛。。只是看论坛中大家都在说VM脱壳。。VM是壳么?如果只是像.net程序里的混淆器那样的原理,那应该不能称为壳吧。 |
|
[求助]请教一下,为什么现在没有继续发布新的看雪学院精华帖集?
啊咧~~原来在整理,辛苦辛苦! |
|
需要指明一个方向~我自己研究(Delphi程序&网络验证)
首先~~~非常感谢你的回帖! VM是指虚拟机吧~通过虚拟机技术保护核心代码,我最近在另一个软件那里,检测到一个壳是用VMPropectd保护的,暂时不知道怎么脱壳。 可以再请教一下么,你感觉这是VM的,VM有没有检测手段?只能通过感觉判断么?接下来我会去找一下VM的相关资料~看看能不能更进一步地破解它~ 以前在破解.NET程序的时候遇见过混淆的概念,混淆字符串,甚至混淆代码,但是它的代码混淆基本上还是可以还原的,就不知道VM是否可以了~~ 其他人有什么其他的看法也欢迎提出。 |
操作理由
RANk
{{ user_info.golds == '' ? 0 : user_info.golds }}
雪币
{{ experience }}
课程经验
{{ score }}
学习收益
{{study_duration_fmt}}
学习时长
基本信息
荣誉称号:
{{ honorary_title }}
能力排名:
No.{{ rank_num }}
等 级:
LV{{ rank_lv-100 }}
活跃值:
在线值:
浏览人数:{{ visits }}
最近活跃:{{ last_active_time }}
注册时间:{{ user_info.create_date_jsonfmt }}
勋章
兑换勋章
证书
证书查询 >
能力值