软件保护及分析技术 原理与实践

软件保护及分析技术 原理与实践
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
出版社: 电子工业出版社
2016-07
版次: 1
ISBN: 9787121292644
定价: 79.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 412页
字数: 612千字
正文语种: 简体中文
  • 《软件保护及分析技术——原理与实践》对软件安全领域的保护与分析技术进行了全面的讨论和剖析,通过保护与分析的对比讲解,结合代码和操作流程,对软件安全领域的各种技术进行了详尽的讨论,并将理论与实践相结合,利用具体的程序代码进行演示。同时,对现今较为成熟的保护系统进行了分析,全面介绍了软件安全领域的保护与分析技术。最后,结合多年从事软件软件保护与分析的经验,讲解了软件保护与分析中的各种经验和技巧。 
    《软件保护及分析技术——原理与实践》适合信息安全领域相关人员、高校相关专业学生及爱好者阅读。 章立春,2005-2007参与某网络游戏开发2007-2009某软件保护系统主程2009-2011年任成都磐石软件有限责任公司董事长 第0章 准备知识 10.1 Win32程序 10.2PE程序文件 30.3Win32进程的启动 50.4PE程序的加载 7第1部分 软件保护第1章软件保护技术 111.1反调试 111.1.1函数检测 121.1.2数据检测 121.1.3符号检测 131.1.4窗口检测 131.1.5特征码检测 141.1.6行为检测 141.1.7断点检测 151.1.8功能破坏 161.1.9行为占用 161.2反虚拟机 171.3数据校验 181.4导入表加密 191.5模块拷贝移位 271.6资源加密 291.7代码加密 301.7.1代码变形 301.7.2花指令 331.7.3代码乱序 331.7.4多分支 351.7.5call链 361.8代码虚拟化 371.8.1堆机 391.8.2栈机 401.8.3状态机 421.9脚本引擎 421.10网络加密 421.11硬件加密 421.12代码签名 43第2章软件保护系统 442.1保护功能 442.1.1试用控制 442.1.2授权控制 452.1.3功能扩展 452.2保护系统 452.2.1WinLicense和Themida 462.2.2VMProtect 47第3章软件保护强化 483.1设计优化 493.1.1 技巧1:代码习惯优化 493.1.2技巧2:SDK使用优化 513.1.3技巧3:验证保护系统 523.2加壳优化 523.2.1技巧1:侧重选择代码加密 533.2.2技巧2:精选被保护代码 543.2.3技巧3:充分测试 55第2部分 软件破解第4章软件破解工具 584.1调试分析工具 584.1.1OllyDbg 584.1.2WinDBG 594.1.3IDA 604.2修改工具 604.2.1LordPE 604.2.2010Editor 614.3自动化工具 61第5章软件破解技术 625.1静态分析 635.1.1基本信息分析 635.1.2代码静态分析 675.2软件调试 685.2.1一般调试原理 685.2.2伪调试技术 725.2.3本地调试 735.2.4远程调试 745.2.5虚拟机调试 765.3反反调试 775.4HOOK 785.4.1代码HOOK 795.4.2函数HOOK 865.4.3模块HOOK 865.4.4导出表HOOK 925.5代码注入 945.6补丁 1015.6.1冷补丁 1015.6.2热补丁 1025.6.3SMC 1025.6.4虚拟化补丁 1035.7模块重定位 1035.8沙箱技术 1045.9虚拟化 1065.10代码虚拟机 1075.10.1OP分支探测 1085.10.2OP调试 1135.11自动化技术 1145.11.1代码追踪 1145.11.2预执行 1185.11.3代码简化 1205.11.4代码重建 1245.11.5块执行 1255.11.6多分支剔除 1265.11.7小结 1295.12动态分析 1295.12.1着色 1295.12.2黑盒测试 1325.13功能模拟 1325.13.1授权模拟 1325.13.2网络模拟 1345.13.3加密狗模拟 1345.14脱壳 1345.14.1导入表重建 1355.14.2资源重建 1495.14.3区段重建 1525.14.4OEP定位 1545.14.5PE头修复 1595.14.6重定位修复 1595.14.7PE重建 1635.14.8补区段 1645.15进程快照技术 1665.15.1进程快照技术概述 1665.15.2快照脱壳 1785.16代码回溯技术 180第6章软件分析技巧 1846.1技巧1:精确代码范围 1846.2技巧2:多用对比参考 1866.3技巧3:逆向思考 1876.4技巧4:多利用自动化优势 1876.5技巧5:利用环境优势 1876.6技巧6:尽量避免算法分析 1876.7技巧7:够用原则 188第3部分 自己动手第7章打造函数监视器 1907.1制定功能 1907.2确定技术方案 1917.3开发筹备 1927.4具体实现 1937.4.1启动目标进程并注入xVMRuntime模块 1967.4.2通信协议 1997.4.3事件设定 2017.4.4辅助调试功能 2167.4.5技术问题 2177.5效果演示 217第8章打造资源重建工具 2208.1制定功能 2208.2确定技术方案 2208.3开发筹备 2228.4具体实现 2228.4.1数据结构及通信协议 2228.4.2获取内存段资源数据 2238.4.3监控资源函数获取数据 2258.4.4强制搜索内存穷举获取数据 2278.4.5重建资源区段 2308.4.6技术问题 2348.5效果演示 235第9章打造重定位修复工具 2389.1制定功能 2389.2确定技术方案 2389.3开发筹备 2399.4具体实现 2399.4.1通信协议 2399.4.2注入模块 2409.4.3抓取内存快照 2409.4.4对比内存数据 2449.4.5重建重定位区段 2459.5效果演示 2489.5.1DLL模块重定位修复 2499.5.2主模块重定位修复 251第10章打造进程拍照机 25310.1制定功能 25310.2确定技术方案 25310.3开发筹备 25510.4具体实现 25510.4.1先期模块注入 25510.4.2接管进程内存管理 26110.4.3建立函数调用中间层 26810.4.4实现场景载入功能 26910.4.5转储并修正映像及相关数据 27010.4.6增加TIB转储 27410.5效果演示 27610.5.1WinLicense测试 27610.5.2VMProtect测试 279第11章打造函数通用追踪器 28111.1制定功能 28111.2确定技术方案 28111.3开发筹备 28211.4具体实现 28311.4.1建立插件框架 28311.4.2分层式虚拟机 28411.4.3调用代码查找识别 28711.5追踪函数 29411.6重建导入表 29911.7修复调用代码 30411.7.1内存式修复 30511.7.2文件式修复 30711.8效果演示 309第12章打造预执行调试器 31212.1制定功能 31212.2确定技术方案 31212.3开发筹备 31312.4具体实现 31312.4.1预执行功能 31312.4.2代码追踪记录功能 31712.4.3块执行功能 32112.4.4OP记录调试功能 32712.5效果演示 331第13章打造伪调试器 33513.1制定功能 33513.2确定技术方案 33513.3开发筹备 33613.4具体实现 33613.4.1数据结构与通信协议 33713.4.2第1步:界面相关工作 33813.4.3第2步:在调试端启用和禁用伪调试技术 33913.4.4第3步:创建调试目标 34113.4.5第4步:等待调试事件主循环 34413.4.6第5步:被调试端的初始化 34613.4.7第6步:中转异常 34913.4.8第7步:辅助调试函数实现 35013.4.9小结 35413.5效果演示 354第4部分 实例分析第14章VMProtect虚拟机分析 358第15章WinLicense虚拟机分析 375第5部分 脱壳实例第16章VMProtect脱壳 382第17章WinLicense脱壳 394写在最后 405
  • 内容简介:
    《软件保护及分析技术——原理与实践》对软件安全领域的保护与分析技术进行了全面的讨论和剖析,通过保护与分析的对比讲解,结合代码和操作流程,对软件安全领域的各种技术进行了详尽的讨论,并将理论与实践相结合,利用具体的程序代码进行演示。同时,对现今较为成熟的保护系统进行了分析,全面介绍了软件安全领域的保护与分析技术。最后,结合多年从事软件软件保护与分析的经验,讲解了软件保护与分析中的各种经验和技巧。 
    《软件保护及分析技术——原理与实践》适合信息安全领域相关人员、高校相关专业学生及爱好者阅读。
  • 作者简介:
    章立春,2005-2007参与某网络游戏开发2007-2009某软件保护系统主程2009-2011年任成都磐石软件有限责任公司董事长
  • 目录:
    第0章 准备知识 10.1 Win32程序 10.2PE程序文件 30.3Win32进程的启动 50.4PE程序的加载 7第1部分 软件保护第1章软件保护技术 111.1反调试 111.1.1函数检测 121.1.2数据检测 121.1.3符号检测 131.1.4窗口检测 131.1.5特征码检测 141.1.6行为检测 141.1.7断点检测 151.1.8功能破坏 161.1.9行为占用 161.2反虚拟机 171.3数据校验 181.4导入表加密 191.5模块拷贝移位 271.6资源加密 291.7代码加密 301.7.1代码变形 301.7.2花指令 331.7.3代码乱序 331.7.4多分支 351.7.5call链 361.8代码虚拟化 371.8.1堆机 391.8.2栈机 401.8.3状态机 421.9脚本引擎 421.10网络加密 421.11硬件加密 421.12代码签名 43第2章软件保护系统 442.1保护功能 442.1.1试用控制 442.1.2授权控制 452.1.3功能扩展 452.2保护系统 452.2.1WinLicense和Themida 462.2.2VMProtect 47第3章软件保护强化 483.1设计优化 493.1.1 技巧1:代码习惯优化 493.1.2技巧2:SDK使用优化 513.1.3技巧3:验证保护系统 523.2加壳优化 523.2.1技巧1:侧重选择代码加密 533.2.2技巧2:精选被保护代码 543.2.3技巧3:充分测试 55第2部分 软件破解第4章软件破解工具 584.1调试分析工具 584.1.1OllyDbg 584.1.2WinDBG 594.1.3IDA 604.2修改工具 604.2.1LordPE 604.2.2010Editor 614.3自动化工具 61第5章软件破解技术 625.1静态分析 635.1.1基本信息分析 635.1.2代码静态分析 675.2软件调试 685.2.1一般调试原理 685.2.2伪调试技术 725.2.3本地调试 735.2.4远程调试 745.2.5虚拟机调试 765.3反反调试 775.4HOOK 785.4.1代码HOOK 795.4.2函数HOOK 865.4.3模块HOOK 865.4.4导出表HOOK 925.5代码注入 945.6补丁 1015.6.1冷补丁 1015.6.2热补丁 1025.6.3SMC 1025.6.4虚拟化补丁 1035.7模块重定位 1035.8沙箱技术 1045.9虚拟化 1065.10代码虚拟机 1075.10.1OP分支探测 1085.10.2OP调试 1135.11自动化技术 1145.11.1代码追踪 1145.11.2预执行 1185.11.3代码简化 1205.11.4代码重建 1245.11.5块执行 1255.11.6多分支剔除 1265.11.7小结 1295.12动态分析 1295.12.1着色 1295.12.2黑盒测试 1325.13功能模拟 1325.13.1授权模拟 1325.13.2网络模拟 1345.13.3加密狗模拟 1345.14脱壳 1345.14.1导入表重建 1355.14.2资源重建 1495.14.3区段重建 1525.14.4OEP定位 1545.14.5PE头修复 1595.14.6重定位修复 1595.14.7PE重建 1635.14.8补区段 1645.15进程快照技术 1665.15.1进程快照技术概述 1665.15.2快照脱壳 1785.16代码回溯技术 180第6章软件分析技巧 1846.1技巧1:精确代码范围 1846.2技巧2:多用对比参考 1866.3技巧3:逆向思考 1876.4技巧4:多利用自动化优势 1876.5技巧5:利用环境优势 1876.6技巧6:尽量避免算法分析 1876.7技巧7:够用原则 188第3部分 自己动手第7章打造函数监视器 1907.1制定功能 1907.2确定技术方案 1917.3开发筹备 1927.4具体实现 1937.4.1启动目标进程并注入xVMRuntime模块 1967.4.2通信协议 1997.4.3事件设定 2017.4.4辅助调试功能 2167.4.5技术问题 2177.5效果演示 217第8章打造资源重建工具 2208.1制定功能 2208.2确定技术方案 2208.3开发筹备 2228.4具体实现 2228.4.1数据结构及通信协议 2228.4.2获取内存段资源数据 2238.4.3监控资源函数获取数据 2258.4.4强制搜索内存穷举获取数据 2278.4.5重建资源区段 2308.4.6技术问题 2348.5效果演示 235第9章打造重定位修复工具 2389.1制定功能 2389.2确定技术方案 2389.3开发筹备 2399.4具体实现 2399.4.1通信协议 2399.4.2注入模块 2409.4.3抓取内存快照 2409.4.4对比内存数据 2449.4.5重建重定位区段 2459.5效果演示 2489.5.1DLL模块重定位修复 2499.5.2主模块重定位修复 251第10章打造进程拍照机 25310.1制定功能 25310.2确定技术方案 25310.3开发筹备 25510.4具体实现 25510.4.1先期模块注入 25510.4.2接管进程内存管理 26110.4.3建立函数调用中间层 26810.4.4实现场景载入功能 26910.4.5转储并修正映像及相关数据 27010.4.6增加TIB转储 27410.5效果演示 27610.5.1WinLicense测试 27610.5.2VMProtect测试 279第11章打造函数通用追踪器 28111.1制定功能 28111.2确定技术方案 28111.3开发筹备 28211.4具体实现 28311.4.1建立插件框架 28311.4.2分层式虚拟机 28411.4.3调用代码查找识别 28711.5追踪函数 29411.6重建导入表 29911.7修复调用代码 30411.7.1内存式修复 30511.7.2文件式修复 30711.8效果演示 309第12章打造预执行调试器 31212.1制定功能 31212.2确定技术方案 31212.3开发筹备 31312.4具体实现 31312.4.1预执行功能 31312.4.2代码追踪记录功能 31712.4.3块执行功能 32112.4.4OP记录调试功能 32712.5效果演示 331第13章打造伪调试器 33513.1制定功能 33513.2确定技术方案 33513.3开发筹备 33613.4具体实现 33613.4.1数据结构与通信协议 33713.4.2第1步:界面相关工作 33813.4.3第2步:在调试端启用和禁用伪调试技术 33913.4.4第3步:创建调试目标 34113.4.5第4步:等待调试事件主循环 34413.4.6第5步:被调试端的初始化 34613.4.7第6步:中转异常 34913.4.8第7步:辅助调试函数实现 35013.4.9小结 35413.5效果演示 354第4部分 实例分析第14章VMProtect虚拟机分析 358第15章WinLicense虚拟机分析 375第5部分 脱壳实例第16章VMProtect脱壳 382第17章WinLicense脱壳 394写在最后 405
查看详情
好书推荐 / 更多
软件保护及分析技术 原理与实践
侧看成峰:葛兆光海外学术论著评论集(精)
葛兆光 著
软件保护及分析技术 原理与实践
病床边的陌生人:法律与生命伦理学塑造医学决策的历史
Rothman 著;[美]戴维·J.罗思曼(David、J.、潘驿炜 译
软件保护及分析技术 原理与实践
甲骨文丛书·恐惧与自由:第二次世界大战如何改变了我们
基思·罗威(Keith Lowe) 著;朱邦芊 译
软件保护及分析技术 原理与实践
果麦经典:平面国(数学界的超级文化符号,《三体》二向箔的灵感来源,理解维度概念的绝佳途径。)
鲁冬旭 译者;果麦文化 出品;埃德温·A·艾勃特
软件保护及分析技术 原理与实践
天生有罪: 特雷弗·诺亚的变色人生(精装珍藏版)
[南非]特雷弗·诺亚 著;董帅 译;未读 出品
软件保护及分析技术 原理与实践
《末代沙皇:罗曼诺夫王朝的覆灭》(再现末代沙皇的真实面孔与罗曼诺夫王朝的命运终章)
道洛什·久尔吉 著;何剑 译
软件保护及分析技术 原理与实践
版本与目录
辛德勇
软件保护及分析技术 原理与实践
生死有时:美国医院如何形塑死亡
[美]莎伦·考夫曼 著 ;初丽岩;王清伟
软件保护及分析技术 原理与实践
带着花椒去上朝:古杀十九式
马陈兵
软件保护及分析技术 原理与实践
与自然和谐:低碳社会的环境观
[日]稻盛和夫 著;陈琳珊 译
软件保护及分析技术 原理与实践
5G机会:5G将带来哪些机会,如何把握?
项立刚 著
软件保护及分析技术 原理与实践
胆小鬼俱乐部:为什么美国司法部治不了大公司高管
[美]杰西·艾辛格 著;崔松 译