首页
社区
课程
招聘
[旧帖] [求助]Telock壳全系列,懂加密壳的朋友进,或者斑竹进呀。 0.00雪花
发表于: 2009-1-10 13:45 3060

[旧帖] [求助]Telock壳全系列,懂加密壳的朋友进,或者斑竹进呀。 0.00雪花

2009-1-10 13:45
3060
告别了压缩壳,我等小菜终于可以一窥加密壳是什么样子的了,我现在接触的加密壳就是telock呀,我今天想问的问题是我在看雪精华里面看见了关于fly大侠的关于telock的全系列脱壳脚本呀。使用OD也刷刷的跑了几次感觉比较爽呀,但是脚本毕竟是人家的作品呀,总感觉使用多了没有意思呀,于是自己手动来跟踪了几次呀,我现在想问的问题是现在使用od找到telock的oep简单,但是如果我要是没有importREC的关于telock的插件怎么办呀,就要改telock的magic jump了,我测试了这么几个telock版本加的壳在telock98 telock96 telock95的时候我们都是上来使用BP GetModuleHandleA在od里面下断点,然后alt+f9返回后就看见了壳的CRC校验了,改掉后面的一个值为jmp就可以干掉CRC了,然后就是跳想了telock的magic jump了,改了以后就可以了,这样在不使用importREC的插件也可以是所有函数全部有效呀,但是我在测试telock90,telock92还有telock8.x版本的时候这个方法就不管用了。如果有大侠知道telock9.2,telock9.0,还有telock8.x这些版本的magic jump在那里的话别忘记告诉告诉我呀,最后问的问题是telock全系列里面在telock0.90,telock0.85都可以使用这个断点BP VirtualProtectEx断下后下面就是oep了,但是在telock42,telock51,telock60,telock70,telock71使用这个断点就没有办法了,我怎么也没有手动跟踪到oep呀,要是使用硬件断点的话感觉没有意思呀。希望知道方法的朋友告诉告诉我呀,先谢了了。

[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 317
活跃值: (93)
能力值: ( LV9,RANK:140 )
在线值:
发帖
回帖
粉丝
2
楼主可以提供个样本出来吗!`
2009-1-10 16:04
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
这几天有在家里调试了关于telock从4.x一直到8.x感觉还是没有什么变化呀,就像我以前提到的问题一样在telock90,还有telock92的时候我们在下硬件断点好像已经不怎么管用了,于是我有找了一点资料说可以先忽略所有异常然后alt+m在数据断下内存写入断点然后中断以后下面f8单步跟踪以后就是判断crc的校验了,下面的破坏输入表的代码几乎是一样的呀。但是我在调试telock0.99的时候使用同样的方法以后到了判断crc校验的时候,后面是修改magic jump的时候怎么也不管用呀,我使用importREC修复的时候还是告诉我指针无效呀。还有就是在telock0.51的这个版本里面在破坏输入表的时候好像是使用的花指令吧,我还是使用了以前的代码来比较跟踪的。看看下面的代码在比较telock0.51的就能明白呀。
0040D317    33C9            xor     ecx, ecx
0040D319    2AF6            sub     dh, dh
0040D31B    8A13            mov     dl, byte ptr [ebx]
0040D31D    F6C2 40         test    dl, 40
0040D320    74 03           je      short 0040D325
0040D322    80E2 5F         and     dl, 5F
0040D325    0AD2            or      dl, dl
0040D327    74 1E           je      short 0040D347
0040D329    43              inc     ebx
0040D32A    FEC6            inc     dh
0040D32C    41              inc     ecx
0040D32D    3A5408 FF       cmp     dl, byte ptr [eax+ecx-1]
0040D331  ^ 74 E8           je      short 0040D31B
0040D333    3A5408 08       cmp     dl, byte ptr [eax+ecx+8]
0040D337  ^ 74 E2           je      short 0040D31B
0040D339    3A5408 12       cmp     dl, byte ptr [eax+ecx+12]
0040D33D  ^ 74 DC           je      short 0040D31B
0040D33F    3A5408 1D       cmp     dl, byte ptr [eax+ecx+1D]
0040D343  ^ 74 D6           je      short 0040D31B
0040D345  ^ EB D0           jmp     short 0040D317
0040D347    0AF6            or      dh, dh
0040D349    61              popad
0040D34A    C685 F3CC4000 0>mov     byte ptr [ebp+40CCF3], 0
0040D351    74 07           je      short 0040D35A
0040D353    808D F3CC4000 0>or      byte ptr [ebp+40CCF3], 1
0040D35A    33C0            xor     eax, eax
0040D35C    8803            mov     byte ptr [ebx], al
0040D35E    43              inc     ebx
0040D35F    3803            cmp     byte ptr [ebx], al
0040D361  ^ 75 F7           jnz     short 0040D35A
上传的附件:
2009-1-13 13:51
0
雪    币: 564
活跃值: (12)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
4
试脱了下0.99的~~
上传的附件:
2009-1-13 14:59
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
这个Telock0.99比较怪嘞。如果你下BP GetModuleHandleA下这个断点的化,中断以后下面的跳个其他的Telock的版本比较怪呀,如果你还是按照往常的改写下面的test eax,eax的话,到后面的输入表加密的时候,无论你是否改写为jmp以后,到oep的时候importREC都告诉你函数指针无效呀,我就是在这里吃亏嘞,后来一看它和以前的版本就是在下这个BP GetModuleHandleA断点以后以前的版本都是下面的JNZ来出来CRC而这个版本是在第一个JNZ来出来的CRC呀,而且我测试的时候在peid0.94显示的Telock0.99-Telock1的这个版本的时候还是按照以前的方法就可以搞定呀,我不知道这样的表达大家能不能听明白呀。
2009-1-14 16:53
0
游客
登录 | 注册 方可回帖
返回
//