能力值:
( LV4,RANK:50 )
|
-
-
2 楼
来个水贴,希望大大们见谅!
我想问问题啊。。。
|
能力值:
( LV9,RANK:530 )
|
-
-
3 楼
压缩壳可以那样.
加密壳一般不行.
对未知加密壳一般如下:
1. 先去掉反调试, 使程序能在调试器的控制下运行:
1.1 先用调试器OD/softice等 载入, 在无单步/断点的情况下看能否顺利运行. 如不能运行, 表明有反调试;
1.2 简单的用OD的HideOD 插件就可以搞定. 复杂的要具体分析, 要比较熟悉常用的反调试及怎么反-反调试.
1.3 如果知道是什么样的反调试,不会跳过, 那是基本功的问题, 在看雪精华中总可以找到参考的例子.
1.4 如果是特别新的反调试,普通人是搞不定的. 大虾一般都对新的挑战感兴趣, 只能等大虾出马.
1.5 使程序能在调试器的控制下运行, 即可以设置断点, 该断下就断下, 该运行就运行.
2. 找OEP 和 DUMP 程序内存 IMAGE
2.1 找OEP一般可用二次或多次内存断点大法. 到OEP先判断有无 stolen code, 有的话就要修复.
2.2 如果只是在OEP处有少量的 stolen code, 可跟踪带壳程序, 找到原来的代码, 要靠经验.
2.3 如果 stolen code 很多,且不仅仅只在OE处, 则一般需要补区段.
2.4 一般的加密壳可在OEP DUMP, 猛壳一般都不行.
2.5 在 OEP DUMP的如果不行, 表明程序不是一次完全解密的. 有的是还没完全解密, 有的是又重新加密回去了.
2.6 如果不能DUMP, 表明有anti-DUMP, 则一般都要经过DEBUG找到anto-DUMP在哪, 又是基本功了
3. 修复IAT, 资源, 如果是DLL, 一般还要修复重定位.
4. 补附加数据,去暗桩
多余的话:
1. 未知壳一般都不会是猛壳, 压缩壳就不说了,加密壳参考上面就可搞定.
2. 新出名的猛壳, 又大量应用的, 在看雪肯定是热门话题.
3. 应用较少的猛壳,或一些高手的超猛壳, 带 SDK 的, 还是放弃吧, 何苦和自己过不去.
4. 对未知猛壳都能拿下的话,是不用看上面几条的,请分享你的经验.
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
Ls回答的很是详细,谢谢了。
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
来点水帖我想问下本站有陪训的吗?
|