资源名称:软件安全实现:安全编程技术 pdf
第1章 安全编程概述
1.1 软件的安全问题
1.1.1 任何软件都是不安全的
1.1.2 软件不安全性的几种表现
1.1.3 软件不安全的原因
1.2 在软件开发生命周期中考虑安全问题
1.2.1 软件设计阶段威胁建模
1.2.2 安全代码的编写
1.2.3 软件的安全性测试
1.2.4 漏洞响应和产品的维护
1.3 本书的内容
1.3.1 编程中的安全
1.3.2 针对信息安全的编程
1.3.3 其他内容
小结
练习
参考文献
第2章 内存安全
2.1 缓冲区溢出
2.1.1 缓冲区
2.1.2 缓冲区溢出
2.1.2 缓冲区溢出
2.1.3 缓冲区溢出案例
2.1.4 堆溢出
2.1.5 缓冲区溢出攻击
2.1.6 防范方法
2.2 整数溢出
2.2.1 整数的存储方式
2.2.2 整数溢出
2.2.3 解决方案
2.3 数组和字符串问题
2.3.1 数组下标问题
2.3.2 字符串格式化问题
小结
练习
参考文献
第3章 线程/进程安全
3.1 线程机制
3.1.1 为什么需要线程
3.1.2 线程机制和生命周期
3.2 线程同步安全
3.2.1 线程同步
3.2.2 案例分析
3.2.3 解决方案
3.3 线程协作安全
3.3.1 线程协作
3.3.2 案例分析
3.3.3 解决方案
3.4 线程死锁安全
3.4.1 线程死锁
3.4.2 案例分析
3.4.3 解决方案
3.5 线程控制安全
3.5.1 安全隐患
3.5.2 案例分析
3.5.3 解决方案
3.6 进程安全
3.6.1 进程概述
3.6.2 进程安全问题
小结
练习
参考文献
第4章 异常/错误处理中的安全
4.1 异常/错误的基本机制
4.1.1 异常的出现
4.1.2 异常的基本特点
4.2 异常捕获中的安全
4.2.1 异常的捕获
4.2.2 异常捕获中的安全
4.3 异常处理中的安全
4.3.1 finally的使用安全
4.3.2 异常处理的安全
4.4 面向过程异常处理中的安全问题
4.4.1 面向过程的异常处理
4.4.2 安全准则
小结
练习
第5章 输入安全
5.1 一般性讨论
5.1.1 输入安全概述
5.1.2 预防不正确的输入
5.2 几种典型的输入安全问题
5.2.1 数字输入安全问题
5.2.2 字符串输入安全问题
5.2.3 环境变量输入安全问题
5.2.4 文件名安全问题
5.3 数据库输入安全问题
5.3.1 数据库概述
5.3.2 数据库的恶意输入
5.3.3 账户和口令问题
……..
资源截图: