脱壳方面的书籍好像不多,就看雪的《加密与解密》和《软件加密技术内幕》
而视频教程里面的都没有说原理,在我的笔记里会总结一些原理性的东西
壳原理
壳的大概加载过程:
1 保存入口参数
2 获取壳用的API
3 解密原程序区块数据
4 IAT初始化
5 重定位处理(for dll)
6 跳到OEP
对壳的加载过程还是不太理解,应该自己写一个壳试试
找OEP原理
一 单步跟踪法
1 近call F7进入
2 打断向上跳转(就是把循环语句去掉)
3 有大跳转的话便离OEP不远了
原理:
我想应该就是跟着壳走一遍,就是把资源解压的流程走一遍吧,只不过资源解压时的
循环语句就不要傻帽地跟着走了,直接在跳转语句的下一句下个断点 然后用F4运行到
该句。有大跳转就离OEP不远的原因我想应该是壳代码离程序代码比较远吧,(应该在
不同一个区段)所以跳转会远些。