《在Windows Vista上编写安全的代码》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:迈克·赫沃德,大卫·勒伯雷恩著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2009
  • ISBN:9787121074196
  • 页数:220 页
图书介绍:本书内容主要是面向Windows Vista的设计和编码的最佳实践,介绍安全编码的原则,以及在设计和测试软件时应该遵循的原则。全书包括9章,内容包括代码质量、用户账号控制、令牌和完整性级别、网络防护措施、创建安全而且能复原的服务、利用IE的防护措施、加密增强、认证与授权,以及其他的防护措施和安全技术。本书适合Windows下的软件开发人员、设计人员和系统架构师参考,也适合高校计算机相关专业学生阅读。

第1章 代码质量 1

1.1 Windows Vista质量阀 3

1.2 用SAL注解所有的C/C++字符串缓冲区 4

1.2.1 SAL示例 5

1.2.2 如何在已有的代码里使用SAL 9

1.3 从代码库中剔除被取缔的API 10

1.4 从代码库中剔除被取缔的加密算法 11

1.5 通过静态分析发现并修复bug 12

1.5.1 与/analyze相关的警告 12

1.5.2 Application Verifier警告 13

1.5.3 FxCop警告 14

1.6 用/GS选项编译UnmanagedC/C++程序,并用/SafeSEH,/DynamicBase和/NXCompat选项进行连接 14

1.7 行动起来 14

1.8 参考资料 15

第2章 用户账号控制、令牌及完整性级别 16

2.1 深入UAC 18

2.1.1 从初级用户令牌开始 18

2.1.2 提升为管理员 23

2.1.3 一个小小的变种:“具有认可模式的管理员” 23

2.1.4 最新的Windows Vista令牌格式 25

2.1.5 确定一个进程是否被提升 25

2.1.6 怎样要求一个应用程序以管理员身份运行 27

2.1.7 使应用程序提示凭证(密码)或同意 31

2.1.8 用COM Elevation Moniker启动COM组件 32

2.1.9 启动提升的可控代码应用程序 34

2.2 用户接口需要考虑的事项 34

2.3 虚拟化 35

2.3.1 怎样在你的应用程序中禁用虚拟化 39

2.4 完整性级别 40

2.4.1 完整性设置的规则 51

2.4.2 NW、NR和NX Masks 51

2.4.3 使用完整性级别的防护模型 52

2.5 Windows Vista里调试应用程序的兼容性问题 53

2.5.1 File Warnings 54

2.5.2 Registry Warnings 54

2.5.3 INI Warnings 54

2.5.4 Token Warnings 54

2.5.5 Privilege Warnings 54

2.5.6 Name Space Warnings 54

2.5.7 Other Objects Warnings 55

2.5.8 Process Warnings 55

2.6 代码签名的重要性 55

2.7 Windows Vista里的新特权 56

2.8 行动起来 57

2.9 参考资料 57

第3章 缓冲区溢出防护 60

3.1 ASLR 62

3.1.1 ASLR的限制 65

3.1.2 性能和兼容性 65

3.2 栈随机化 66

3.2.1 性能和兼容性 67

3.3 堆防护措施 67

3.4 NX 73

3.4.1 性能和兼容性问题 76

3.5 /GS 79

3.6 SafeSEH 83

3.7 小结 89

3.8 行动起来 90

3.9 参考资料 90

第4章 网络防护措施 91

4.1 IPv6概述 93

4.1.1 Teredo 95

4.2 网络列表管理器 98

4.3 Windows Vista RSS平台 99

4.4 Winsock安全套接字扩展 101

4.5 更安全的Windows防火墙 103

4.5.1 全局防火墙设置 103

4.5.2 创建规则 106

4.5.3 与规则组共事 113

4.6 行动起来 115

4.7 参考资料 115

第5章 创建安全又能复原的服务 117

5.1 服务概述 118

5.2 服务账号 119

5.3 减少特权 123

5.4 控制网络访问 130

5.5 与桌面进行通信 133

5.5.1 Simple Message Boxes 135

5.5.2 共享内存 135

5.5.3 命名管道 136

5.5.4 套接字 141

5.5.5 RPC/COM 142

5.6 实践出真知 142

5.7 行动起来 143

5.8 参考资料 144

第6章 IE7的防护措施 145

6.1 普及的防护措施 147

6.1.1 ActiveX opt-in 147

6.1.2 保护模式 148

6.1.3 数据执行保护 152

6.2 cURL和IUri接口 155

6.3 锁住你的ActiveX控件 158

6.4 你应当知道的关于IE7的其他事情 158

6.4.1 禁止访问剪贴板 158

6.4.2 脚本URL 158

6.4.3 Good-bye PCT and SSL2(and Good Riddance),Hello AES! 159

6.4.4 Window Origin 159

6.5 行动起来 159

6.6 参考资料 160

第7章 加密方面的增强 162

7.1 内核模式和用户模式支持 163

7.2 敏捷加密 164

7.2.1 CNG中的敏捷加密 165

7.3 CNG中的新算法 167

7.4 使用CNG 168

7.4.1 加密数据 169

7.4.2 Hashing数据 169

7.4.3 MACing数据 170

7.4.4 生成随机数 170

7.5 CNG和FIPS 171

7.6 改良的审计 172

7.7 CNG缺少的东西 173

7.8 SSL/TLS改进 173

7.8.1 SSL/TLS撤销检查和OCSP 175

7.9 Windows Vista里的根证书 177

7.10 Windows Vista拒绝的加密功能 178

7.11 行动起来 179

7.12 参考资料 179

第8章 认证与授权 181

8.1 WindowsCardSpace及Information Cards 181

8.1.1 Information Cards数据流 182

8.1.2 WindowsCardSpace和网络钩鱼 183

8.1.3 CardSpace和网络钓鱼示例 185

8.1.4 看Information Cards的实际使用效果 187

8.1.5 Information Cards包含什么内容 187

8.1.6 通过编程的方式访问Information Cards 188

8.1.7 CardSpace小结 190

8.2 图像识别和授权改变 191

8.3 Owner SID改变 191

8.4 行动起来 193

8.5 参考资料 193

第9章 其他的防护措施和安全技术 195

9.1 在应用程序中增加父母监控 196

9.1.1 代码 197

9.1.2 时间限制 198

9.1.3 The 450 Error 199

9.1.4 检测是否启用了“Block file downloads” 199

9.1.5 为你的应用程序或URL关闭过滤 199

9.1.6 记录事件 200

9.2 Windows Defender APIs 201

9.2.1 签名你的代码 202

9.2.2 请求加入Windows Defender“Known or Not Yet Classified”列表 203

9.3 新的Credential User Interface API 203

9.4 使用Security Event Log 206

9.5 指针编码 207

9.6 内核模式调试相关 211

9.7 通过编程访问TPM 211

9.7.1 对TPM的低级访问 214

9.8 Windows SideBar和Gadget方面的安全性考虑 219

9.9 参考资料 220