对于本书,小编本意是对其讲述的内容,分点进行笔记的整理,后来学习以后,发现,这本书应该不算是一本技术提升类的书籍,更像是一本领域拓展和知识科普类书籍,所讲知识广泛,但是较少实践,应是小白入门安全的书籍,若是要对每个章节做一个知识分享,就很难逃脱照抄书本原文(知识密度大),因此,小编放弃了章节的总结,进行了全本书内容的汇总,包括每个章节所提到的一些概念,以及自己的感受。在之后的章节中,小编会对这些概念,查找资料,进行更加详细的描述。
软件安全概述(3-12)
概述性知识,可作为了解
软件安全基础(13-48)
磁盘结构,主引导扇区结构,文件系统,80X86处理器工作模式,Windows内存结构与管理(DOS内存布局,Windows内存布局,虚拟地址转译,内存分配和管理),计算机引导过程,PE文件格式
软件漏洞利用和防护(49-64)
CVE标准,CNVD,CNNVD,软件漏洞利用对系统的威胁,软件漏洞产生的原因,软件漏洞利用方式,典型软件漏洞(缓冲区溢出)
典型软件漏洞机理分析(65-94)
缓冲区溢出漏洞(栈溢出利用,堆溢出利用)格式化串漏洞,Web引用程序漏洞,OWASP
shellcode开发(95-113):
软件漏洞的具体技术:修改内存变量,修改代码逻辑,需改函数返回地址,修改函数指针,攻击异常处理机制,修改PEB中线程同步函数的入口地址(纯概念梳理)
简单堆栈溢出点的定位,地址重定位技术(call),API函数自搜索技术,shellcode编码,shellcode典型功能(正向连接,反向连接,下载程序并执行,生成可执行文件并执行)
突破操作系统和CPU对堆栈数据的限制:
Ret2Lib技术:该技术使得Shellcode在最开始的时候并不直接跳转到Shellcode,当发生缓冲区溢出时,用系统库中特定函数的地址覆盖返回地址,从而漏洞触发时执行相应的函数功能
ROP技术(Return Oriented Programminng):通过拼接内存中的返回命令,可实现控制程序执行流程到内存中的任何指令序列
MSF漏洞利用框架
静态分析,动态分析,fuzzing
Windows系统安全机制及漏洞防护技术(113-129)
DEP保护机制(data execution prevention)
栈溢出检查----GS保护原理和实现
地址空间分布随机化---ASLR
SafeSEH
EMET
软件安全开发流程(129-148)
安全教育-》设计-》开发-》测试-》发行和维护
软件安全策略
软件安全设计法则
安全编码技术
访问控制
授权与审计
恶意代码机理和防护(153-159)
网络蠕虫、木马、后门、Rookit
流氓软件,僵尸程序
恶意代码机理分析(159-248)
病毒的特点和分类,计算机病毒的结构,计算机病毒传播方式,PE文件格式
捆绑式感染方式,熊猫烧香,WSH,VBS脚本病毒,爱虫病毒,病毒如何获取电脑控制权
宏病毒,病毒的自我隐藏机制,美杜莎病毒,ELF类病毒,网络蠕虫,木马(进程管理,文件管理,注册表操作,服务管理,屏幕截取,鼠标控制,视频监视,语音监听方案,远程shell,传播病毒,破坏系统,添加后门),灰鸽子木马,Rookit(HOOK,LAT,IDT,SSDT,进程隐藏技术)SSTD隐藏进程,DKOM隐藏进程,文件隐藏技术(用户态文件隐藏技术,内核态文件隐藏技术)
通信隐藏技术(SSDT挂钩隐藏端口,驱动程序钩子隐藏端口),注册表隐藏技术,Rookit检测原理和工具 手机恶意软件(基于Content Provider的隐私窃取)
个人认为本部分是该书的精华部分
病毒检测技术和检测对抗技术(249-274)
特征值检测技术,虚拟机检测技术,启发式扫描技术
对抗特征值检测,对抗启发式扫描技术,对抗虚拟机技术,反病毒软件对抗
加壳和脱壳
恶意软件样本捕获和分析(275-291)
蜜罐,恶意软件样本分析,进程监控,文件监控,注册表监控,网络连接监控,系统启动项监控,内核监控
文件类型检测,PE文件格式分析(PEview,Stud_PE),静态反汇编(IDA pro),动态调试(OllyDbg),恶意软件分析报告
软件自我保护(292-304)
软件知识产权保护技术,验证机制,KeyFile验证,网络验证,光盘验证,加密锁验证
静态分析对抗技术(花指令,自修改代码技术(SMC)加密和多态变形技术),动态分析对抗技术(检测自身是否处于调试状态,检测调试器软件是否存在,发现调试器以后的操作),软件自校验技术(磁盘文件校验,内存映像校验)