壳专题
1 壳的原理
1.1 必要的知识
1.1.1 汇编语言教程
没有风的汇编语言专题,简短实用。可以省下不少汇编教程书籍的银子了。
http://bbs.pediy.com/showthread.php?t=64480&tcatid=73
看雪论坛上有很多关于汇编的话题足够初学的朋友学习了
利用GOOGLE很方便的检索一下
site:pediy.com 汇编
site:pediy.com intitle:汇编
site:pediy.com incontent:汇编
以上几句在google.com提交会列出很多。
汇编其实是最简单的编程语言。只要弄清楚8个常用的寄存器使用方式,弄清楚一个栈结构.弄清楚10+条指令,最后弄清楚地址和内存就可以写程序了。其中要记忆的东西非常少。至于什么标志寄存器和中断什么的。在写程序当中熟悉就可以了。
而要学习任何高级语言,要记住的东西绝对不止这些。
个人很喜欢TASM。但是BORLAND一直没有后文了。为了能适应潮流不得不换了MASM。
1.1.2 PE文件格式分析
PE结构方面,看雪论坛上有很多精彩的帖子。这里收集一下。
http://bbs.pediy.com/archive/index.php?t-16568.html
http://bbs.pediy.com/showthread.php?s=&threadid=22892
http://www.pediy.com/document/PE/pecoff_v8.rar
http://www.pediy.com/document/PE.rar
http://bbs.pediy.com/showthread.php?t=66180
(这本电子书可以做为PE格式进阶读物)
同样在看雪论坛上查找
site:pediy.com PE结构
会列出更对的对PE结构的讨论,这些足够初学的朋友学习。
1.2 对PE文件的操作
1.2.1 添加一个新节
http://bbs.pediy.com/showthread.php?p=467116
1.2.2 加密引入表
http://bbs.pediy.com/showthread.php?t=67098
1.2.3 处理TLS表
http://bbs.pediy.com/showthread.php?t=67627
1.2.4 加密资源节
http://bbs.pediy.com/showthread.php?t=68262
1.2.5 处理引出表
http://bbs.pediy.com/showthread.php?t=80406
1.3 壳主体的编写
1.3.1 反静态反汇编技术
http://bbs.pediy.com/showthread.php?t=68486
1.3.2 反调试器技术
http://bbs.pediy.com/showthread.php?t=71113
1.3.3 反汇编引擎的构建
http://bbs.pediy.com/showthread.php?t=74414
1.3.4 重定位模块的构建
http://bbs.pediy.com/showthread.php?t=77514
1.3.5 PE Loader的构建
http://bbs.pediy.com/showthread.php?t=83669
1.3.6 变形引擎的构建
http://bbs.pediy.com/showthread.php?t=95879
1.3.7 代码乱序引擎的构建
http://bbs.pediy.com/showthread.php?t=96640
1.3.8 代码替换引擎的构建
http://bbs.pediy.com/showthread.php?t=96644
1.3.9 再谈引入表保护
http://bbs.pediy.com/showthread.php?t=101394
1.3.10 识别函数与数据区域
http://bbs.pediy.com/showthread.php?t=102977
1.3.11 使用数学运算式随机生成花指令
http://bbs.pediy.com/showthread.php?t=103229
1.3.12 构建壳使用的x86汇编器
http://bbs.pediy.com/showthread.php?t=103757
1.3.13 虚拟机保护技术
2 壳源码分析
2.1 yC1.3代码分析
2.2 UPX3.03 代码分析
3 成果展示
玩命的壳