为你推荐
译者序
前言
致谢
第1章夹缝求生
1.1 衡量危险
1.2 安全概念
1.3 C和C++
1.4 开发平台
1.5 小结
1.6 阅读材料
第2章字符串
2.1 字符串
2.2 常见的字符串操作错误
2.3 字符串漏洞及其利用
2.4 字符串漏洞缓解策略
2.5 字符串处理函数
2.6 运行时保护策略
2.7 著名的漏洞
2.8 小结
2.9 阅读材料
第3章指针诡计
3.1 数据位置
3.2 函数指针
3.3 对象指针
3.4 修改指令指针
3.5 全局偏移表
3.6 .dtors区
3.7 虚指针
3.8 atexit()和on_exit()函数
3.9 longjmp()函数
3.10 异常处理
3.11 缓解策略
3.12 小结
3.13 阅读材料
第4章动态内存管理
4.1 C内存管理
4.2 常见的C内存管理错误
4.3 C++的动态内存管理
4.4 常见的C++内存管理错误
4.5 内存管理器
4.6 Doug Lea的内存分配器
4.7 双重释放漏洞
4.8 缓解策略
4.9 值得注意的漏洞
4.10 小结
第5章整数安全
5.1 整数安全导论
5.2 整数数据类型
5.3 整数转换
5.4 整数操作
5.5 整数漏洞
5.6 缓解策略
5.7 小结
第6章格式化输出
6.1 变参函数
6.2 格式化输出函数
6.3 对格式化输出函数的漏洞利用
6.4 栈随机化
6.5 缓解策略
6.6 著名的漏洞
6.7 小结
6.8 阅读材料
第7章并发
7.1 多线程
7.2 并行
7.3 性能目标
7.4 常见错误
7.5 缓解策略
7.6 缓解陷阱
7.7 值得注意的漏洞
7.8 小结
第8章文件I/O
8.1 文件I/O基础
8.2 文件I/O接口
8.3 访问控制
8.4 文件鉴定
8.5 竞争条件
8.6 缓解策略
8.7 小结
第9章推荐的实践
9.1 安全开发生命周期
9.2 安全培训
9.3 要求
9.4 设计
9.5 实现
9.6 验证
9.7 小结
9.8 阅读材料
参考文献
缩略语
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜