主页 详情

《软件安全相关的19个致命漏洞》_(美)豪沃(Howard,M.),(美)勒伯兰克(LeBlanc,D.),(美)维加(Viega,J.)著;肖枫涛,杨明军译_

【书名】:《软件安全相关的19个致命漏洞》
【作者】:(美)豪沃(Howard,M.),(美)勒伯兰克(LeBlanc,D.),(美)维加(Viega,J.)著;肖枫涛,杨明军译
【出版社】:北京:清华大学出版社
【时间】:2006
【页数】:252
【ISBN】:7302138044
【SS码】:11733280

最新查询

内容简介

1.1 漏洞概述

第1章 缓冲区溢出

1.2 受影响的编程语言

1.3 漏洞详细解释

1.3.1 受漏洞影响的C/C++

1.3.2 相关漏洞

1.4 查找漏洞模式

1.5 在代码审查中查找该漏洞

1.6 发现该漏洞的测试技巧

1.7.1 CVE-1999-0042

1.7.2 CVE-2000-0389—CVE-2000-0392

1.7 漏洞示例

1.7.3 CVE-2002-0842、CVE-2003-0095、CAN-2003-0096

1.7.4 CAN-2003-0352

1.8 弥补措施

1.8.1 替换危险的字符串处理函数

1.8.2 审计分配操作

1.8.3 检查循环和数组访问

1.8.4 使用C++字符串来替换C字符串缓冲区

1.8.5 使用STL容器替代静态数组

1.8.6 使用分机工具

1.9 其他防御措施

1.9.2 不可执行的栈和堆

1.10 其他资源

1.9.1 栈保护

1.11 本章总结

第2章 格式化字符串问题

2.1 漏洞概述

2.2 受影响的编程语言

2.3 漏洞详细解释

2.3.1 受漏洞影响的C/C++

2.3.2 相关漏洞

2.4 查找漏洞模式

2.5 在代码审查中查找该漏洞

2.6 发现该漏洞的测试技巧

2.7.2 CVE-2000-0844

2.7.1 CVE-2000-0573

2.7 漏洞示例

2.8 弥补措施

2.9 其他防御措施

2.10 其他资源

2.11 本章总结

第3章 整数溢出

3.1 漏洞概述

3.2 受影响的编程语言

3.3 漏洞详细解释

3.3.1 受漏洞影响的C和C++

3.3.2 受漏洞影响的C

3.3.3 受漏洞影响的Visual Basic和Visual Basic.net

3.3.4 受漏洞影响的Java

3.3.5 受漏洞影响的Perl

3.4 查找漏洞模式

3.5 在代码审查中查找漏洞

3.5.1 C/C++

3.5.2 C

3.5.3 Java

3.5.4 Visual Basic和Visual Basic.NET

3.5.5 Perl

3.6 发现该漏洞的测试技巧

3.7 漏洞示例

3.7.1 在Windows脚本引擎中存在的漏洞可以导致任意代码执行

3.8 弥补措施

3.7.3 在HTR块编码中存在的堆溢出可以导致Web服务器遭到入侵

3.7.2 在SOAPParameter的对象构造函数中存在整数溢出

3.9 其他防御措施

3.10 其他资源

3.11 本章总结

第4章 SQL注入

4.1 漏洞概述

4.2 受影响的编程语言

4.3 漏洞详细解释

4.3.1 受漏洞影响的C

4.3.2 受漏洞影响的PHP

4.3.3 受漏洞影响的Perl/CGI

4.3.4 受漏洞影响的Java和JDBC

4.3.5 受漏洞影响的SQL

4.3.6 相关漏洞

4.4 查找漏洞模式

4.5 在代码审查中查找该漏洞

4.6 发现该漏洞的测试技巧

4.7 漏洞示例

4.7.1 CAN-2004-348

4.7.2 CAN-2002-0554

4.8 弥补措施

4.8.1 验证所有的输入

4.8.2 不要使用字符串连接来构造SQL语句

4.9 其他防御措施

4.10 其他资源

4.11 本章总结

第5章 命令注入

5.1 漏洞概述

5.2 受影响的编程语言

5.3 漏洞详细解释

5.4 查找漏洞模式

5.5 在代码审查中查找该漏洞

5.6 发现该漏洞的测试技巧

5.7 漏洞示例

5.7.1 CAN-2001-1187

5.7.2 CAN-2002-0652

5.8 弥补措施

5.8.1 数据验证

5.9 其他防御措施

5.8.2 当检查失败时

5.10 其他资源

5.11 本章总结

第6章 未能处理错误信息

6.1 漏洞概述

6.2 受影响的编程语言

6.3 漏洞详细解释

6.3.1 产生太多的信息

6.3.2 忽略了错误信息

6.3.6 处理所有的异常

6.3.5 处理了错误的异常

6.3.4 使用了无用的错误值

6.3.3 曲解了错误信息

6.3.7 受漏洞影响的C/C++

6.3.8 Windows上受漏洞影响的C/C++

6.3.9 受漏洞影响的C++

6.3.10 受漏洞影响的C#、VB.NET及Java

6.3.11 相关漏洞

6.4 查找漏洞模式

6.5 在代码审查中查找该漏洞

6.6 发现该漏洞的测试技巧

6.7 漏洞示例

6.8.1 C/C++弥补措施

6.8.2 C#、VB.NET和Java弥补措施

6.8 弥补措施

6.9 其他资源

6.10 本章总结

第7章 跨站脚本

7.1 漏洞概述

7.2 受影响的编程语言

7.3 漏洞详细解释

7.3.1 受漏洞影响的C/C++ ISAPI应用程序或者过滤程序

7.3.2 受漏洞影响的ASP

7.3.3 受漏洞影响的ASP.NET表单

7.3.4 受漏洞影响的JSP

7.3.5 受漏洞影响的PHP

7.4 查找漏洞模式

7.3.6 受漏洞影响的使用Perl的CGI程序

7.3.7 受漏洞影响的mod_perl

7.5 在代码审查中查找该漏洞

7.6 发现该漏洞的测试技巧

7.7 漏洞示例

7.7.1 IBM Lotus Domino跨站脚本和HTML注入漏洞

7.7.2 Oracle HTTP服务器的“isqlplus”输入验证漏洞允许远程用户实施跨站脚本攻击

7.7.3 CVE-2002-0840

7.8 弥补措施

7.8.1 ISAPI C/C++弥补措施

7.8.2 ASP弥补措施

7.8.3 ASP.NET表单弥补措施

7.8.4 JSP弥补措施

7.8.6 CGI弥补措施

7.8.5 PHP弥补措施

7.8.7 mod_perl弥补措施

7.8.8 关于HTML编码的注意事项

7.9 其他防御措施

7.10 其他资源

7.11 本章总结

第8章 未能保护好网络流量

8.1 漏洞概述

8.2 受影响的编程语言

8.3 漏洞详细解释

8.4 查找漏洞模式

8.5 在代码审查中查找漏洞

8.7 漏洞示例

8.6 发现该漏洞的测试技巧

8.7.1 TCP/IP

8.7.2 电子邮件协议

8.7.3 电子商务

8.8 弥补措施

8.9 其他防御措施

8.10 其他资源

8.11 本章总结

第9章 使用Magic URL及隐藏表单字段

9.1 漏洞概述

9.2 受影响的编程语言

9.3 漏洞详细解释

9.3.3 相关漏洞

9.3.1 Magic URL

9.3.2 隐藏表单字段

9.4 查找漏洞模式

9.5 在代码审查中查找该漏洞

9.6 发现该漏洞的测试技巧

9.7 漏洞示例

9.7.1 CAN-2000-1001

9.7.2 MaxWebProtal隐藏表单字段修改

9.8 弥补措施

9.8.1 攻击者浏览数据

9.8.2 攻击者重放数据

9.8.3 攻击者预测数据

9.8.4 攻击者更改数据

9.11 本章总结

9.9 其他防御措施

9.10 其他资源

第10章 未能正确使用SSL和TLS

10.1 漏洞概述

10.2 受影响的编程语言

10.3 漏洞详细解释

10.4 查找漏洞模式

10.5 在代码审查查找该漏洞

10.6 发现该漏洞的测试技巧

10.7 漏洞示例

10.7.1 电子邮件客户端

10.7.2 Safari Web浏览器

10.8 弥补措施

10.7.3 Stunnel SSL代理

10.8.1 选择协议版本

10.8.2 选择加密套件

10.8.3 确保证书的有效性

10.8.4 验证主机名

10.8.5 检查证书撤销

10.9 其他防御措施

10.10 其他资源

10.11 本章总结

11.2 受影响的编程语言

11.3 漏洞详细解释

11.1 漏洞概述

第11章 使用基于弱口令的系统

11.4 查找漏洞模式

11.5 在代码审查中查找该漏洞

11.5.1 口令内容策略

11.5.2 口令修改和重置

11.5.3 口令协议

11.5.4 口令处理和存储

11.6 发现该漏洞的测试技巧

11.7 漏洞示例

11.7.1 CVE-2005-1505

11.7.2 CVE-2005-0432

11.7.3 TENEX漏洞

11.8.1 多方式认证

11.8 弥补措施

11.7.4 Paris Hilton劫持

11.8.2 存储以及检查口令

11.8.3 选择协议的原则

11.8.4 口令重置的原则

11.8.5 口令选择的原则

11.8.6 其他原则

11.9 其他防御措施

11.10 其他资源

11.11 本章总结

12.2 受影响的编程语言

12.3 漏洞详细解释

12.1 漏洞概述

第12章 未能安全地存储和保护数据

12.3.1 采用脆弱的访问控制机制“保护”秘密数据

12.3.2 受漏洞影响的访问控制

12.3.3 代码中内嵌秘密数据

12.3.4 相关漏洞

12.4 查找漏洞模式

12.5 在代码审查中查找漏洞

12.6 发现该漏洞的测试技巧

12.7 漏洞示例

12.7.1 CVE-2000-0100

12.7.2 CAN-2002-1590

12.7.3 CVE-1999-0886

12.8 弥补措施

12.7.5 CAN-2004-0391

12.7.4 CAN-2004-0311

12.8.1 使用操作系统的安全技术

12.8.2 C/C++ Windows 2000以及更新版本的弥补措施

12.8.3 ASP.NET 1.1以及更新版本的弥补措施

12.8.4 C#.NETFramework 2.0弥补措施

12.8.5 C/C++ Mac OS X 10.2以及更新版本的弥补措施

12.8.6 无需操作系统支持的弥补措施(不在代码中保存秘密数据)

12.8.7 Java和Java KeyStore的注意事项

12.9 其他防御措施

12.10 其他资源

12.11 本章总结

13.2 受影响的编程语言

13.1 漏洞概述

第13章 信息泄漏

13.3 漏洞详细解释

13.3.1 旁路

13.3.2 TMI:太多的信息!

13.3.3 信息流安全模型

13.3.4 受漏洞影响的C#(以及其他的编程语言)

13.3.5 相关漏洞

13.4 查找漏洞模式

13.5 在代码审查中查找该漏洞

13.6 发现该漏洞的测试技巧

13.7 漏洞示例

13.7.1 Dan Bernstein的AES定时攻击

13.7.3 CAN-2005-1133

13.7.2 CAN-2005-1411

13.8.1 C#(以及其他编程语言)弥补措施

13.8 弥补措施

13.8.2 本地网络的弥补措施

13.9 其他防御措施

13.10 其他资源

13.11 本章总结

第14章 不恰当的文件访问

14.1 漏洞概述

14.2 受影响的编程语言

14.3 漏洞详细解释

14.3.1 在Windows上受漏洞影响的C/C++

14.3.4 受漏洞影响的Python

14.3.2 受漏洞影响的C/C++

14.3.3 受漏洞影响的Perl

14.3.5 相关漏洞

14.4 查找漏洞模式

14.5 在代码审查中查找该漏洞

14.6 发现该漏洞的测试技巧

14.7 漏洞示例

14.7.1 CAN-2005-0004

14.7.2 CAN-2005-0799

14.7.3 CAN-2004-0452和CAN-2004-0448

14.7.4 CVE-2004-0115 Microsoft的Mac版Virtual PC

14.8.2 *nix上C/C++的弥补措施

14.8.1 Perl弥补措施

14.8 弥补措施

14.8.3 Windows上C/C++的弥补措施

14.8.4 获取用户临时文件的目录

14.8.5 .NET代码弥补措施

14.9 其他防御措施

14.10 其他资源

14.11 本章总结

第15章 轻信网络域名解析

15.1 漏洞概述

15.2 受影响的编程语言

15.3 漏洞详细解释

15.3.2 相关漏洞

15.3.1 受漏洞影响的应用程序

15.4 查找漏洞模式

15.5 在代码审查中查找该漏洞

15.6 发现该漏洞的测试技巧

15.7 漏洞示例

15.7.1 CVE-2002-0676

15.7.2 CVE-1999-0024

15.8 弥补措施

15.9 其他资源

15.10 本章总结

16.3 漏洞详细解释

16.2 受影响的编程语言

第16章 竞争条件

16.1 漏洞概述

16.3.1 受漏洞影响的代码

16.3.2 相关漏洞

16.4 查找漏洞模式

16.5 在代码审查中查找该漏洞

16.6 发现该漏洞的测试技巧

16.7 漏洞示例

16.7.1 CVE-2001-1349

16.7.2 CAN-2003-1073

16.7.3 CVE-2000-0849

16.8 弥补措施

16.10 其他资源

16.9 其他防御措施

16.11 本章总结

第17章 未认证的密钥交换

17.1 漏洞概述

17.2 受影响的语言

17.3 漏洞详细解释

17.4 查找漏洞模式

17.5 在代码审查中查找该漏洞

17.6 发现该漏洞的测试技巧

17.7 漏洞示例

17.7.1 Novell Netware MITM攻击

17.7.2 CAN-2004-0155

17.9 其他防御措施

17.10 其他资源

17.8 弥补措施

17.11 本章总结

第18章 密码学强度随机数

18.1 漏洞概述

18.2 受影响的编程语言

18.3 漏洞详细解释

18.3.1 受漏洞影响的非密码学生成器

18.3.2 受漏洞影响的密码字生成器

18.3.3 受漏洞影响的真随机数生成器

18.5 在代码审查中查找该漏洞

18.5.2 查找使用PRNG的地方

18.5.1 什么时候应该使用随机数

18.4 查找漏洞模式

18.3.4 相关漏洞

18.5.3 判断CRNG是否正确地播种

18.6 发现该漏洞的测试技巧

18.7 漏洞示例

18.7.1 Netscape浏览器

18.7.2 OpenSSL问题

18.8 弥补措施

18.8.1 Windows

18.8.2 .NET代码

18.8.3 UNIX

18.8.4 Java

18.8.5 重放数字流

18.11 本章总结

18.10 其他资源

18.9 其他防御措施

第19章 不良可用性

19.1 漏洞概述

19.2 受影响的语言

19.3 漏洞详细解释

19.3.1 谁是您的用户?

19.3.2 雷区:向您的用户呈现安全相关的信息

19.3.3 相关漏洞

19.4 查找漏洞模式

19.5 在代码审查中寻找该漏洞

19.7 漏洞示例

19.7.1 SSL/TLS证书认证

19.6 发现该漏洞的测试技巧

19.7.2 Internet Explorer 4.0根证书安装

19.8 弥补措施

19.8.1 简化UI以便用户参与

19.8.2 为用户做出安全决策

19.8.3 使有选择的松弛安全策略变得简单

19.8.4 明确指出后果

19.8.5 提供可操作性

19.8.6 提供集中管理

19.9 其他资源

19.10 本章总结

附录A 19个致命漏洞与OWASP的“前10名”漏洞的对应关系

附录B “要”与“不要”提示总结

译者术语表


书查询(www.shuchaxun.com)本网页唯一编码:
176d540034c8c1b283cdc150dcac5732#4dc11265af4ed4fd9f0cedde0153f56d#21776002#11733280.zip