标题：黑客大曝光:Web应用安全机密与解决方案
作者简介
关于作者
JoelScambray拥有信息系统安全专家认证（CISSP），有15年的信息安全经验，包括：在微软和安永国际会计公司担任高级管理角色，与人创办Foundstone公司，担任“财富500强”企业的技术顾问，与人合著“黑客大曝光”（HackingExposed）系列畅销书。
MikeShema是NTObjectives的首席战略官（CSO），曾在多个安全会议上进行过Web应用安全的演讲。他研究了大量的广泛的Web技术，并开发出应用安全课程的培训教材。他是《反黑客工具包》（Anti-HackerToolkit）一书的合著者。
CalebSima是Web应用安全产品公司SPIDynamics的创办者之一和首席技术官，拥有超过12年的安全经验。他在Web安全方面的探索和专业知识对Web应用安全产业界确定产业发展的方向提供了极大的帮助。Caleb是AssociatedPress著名的Internet攻击方面的时事评论员和专家。他也是各种杂志和在线专栏的作者。Caleb是ISSA（信息系统安全协会）成员，OASIS（结构化信息标准促进组织）中应用漏洞描述语言（ApplicationVulnerabilityDescriptionLanguage）标准的发起者之一，也是Web应用安全联盟（WebApplicationSecurityConsortium，WASC）的发起成员。
关于丛书作者
NishchalBhalla“SecurityCompass”的创办者，是一个在产品、代码、Web应用、主机和网络评审方面的专家。Nish与人合著了《缓冲区溢出攻击――检测、剖析与预防》（BufferOverflowAttacks:DetectExploit&Prevent）一书，也是《WindowsXP安全专家》（WindowsXPProfessionalSecurity），《黑客札记:：网络安全手册》（HackNotes:NetworkSecurity）和《编写安全工具和利用代码》（WritingSecurityToolsandExploits）的丛书作者。Nish参与了开源项目，诸如YASSP和OWASP，是TorontoChapter的主席。他也为SecurityFocus撰写文章，也是紧急安全问题的时事评论员。
SamuelBucholtz是CasabaSecurity的创建成员，CasabaSecurity是一家总部位于华盛顿西雅图的公司安全咨询公司。Samuel擅长于测试应用程序、审查设计和实施系统/网络架构。在创办CasabaSecurity之前，Samuel是Foundstone的一名安全顾问，为全球1000客户执行安全评审和渗透测试，管理超过一百个Web应用的测试，并且培训网络和Web应用安全方面的学生。在进入Foundstone之前，Samuel是一名安全工程师，为一大型Internet咨询公司负责构建和运行拥有几百万用户的Web站点。Samuel曾经在BlackHat、CSI（ComputerSecurityInstitute，计算机安全协会）上发表过演讲，并对客户进行私人的指导。他拥有纽约大学计算机科学和经济专业学士学位，曾做过美国国防部网络安全的实习生。
DavidWong现在是安永国际会计公司攻击和渗透实践措施的经理。David拥有超过7年的安全经验，为金融服务、能源、电信和软件产业公司进行过数百次渗透测试和攻击测试。在这之前，David曾在一家金融服务公司担任应用安全主管，并在朗讯科技开始了他的安全研究职业生涯。David持有信息系统安全专家认证（CISSP），并从库珀学会毕业获得工程学士学位。
ArianEvans进入信息安全领域近8年时间。他关注的是应用安全和IDS（入侵检测系统）。Arian现在研究和开发了用于评估应用程序和数据库安全状态的新方法，除此之外，这种方法还能帮助客户设计、配置和防范他们的应用程序。Arian就职于FishNetSecurity，处理全世界范围内客户的应用安全问题，他也曾经为Internet安全中心（CenterforInternetSecurity）、FBI，以及多家涉及Web应用安全和与攻击应急响应有关的商业组织工作过。
译者简介
王炜，1981年1月出生，2003年毕业于四川大学计算机通信专业，获学士学位。现为四川大学通信与信息系统专业博士研究生，主要研究方向为：网络与信息安全。
文苗，东南大学软件工程学士学位，爱好网络安全和软件开发，有多年Web程序开发和测试经验，曾负责和参与某大型Web商业软件的安全测试工作。
罗代升，博士，教授，博士生导师。1970年四川大学毕业，留校任教，主要研究方向包括信号与信息处理，通信与信息系统，计算机视觉，模式识别，智能系统及设计。
目录
第1章Web应用攻击的基础知识
1.1什么是Web应用攻击
1.1.1GUIWeb攻击
1.1.2URI攻击
1.1.3请求方法、请求头和数据体
1.1.4资源
1.1.5认证，会话和授权
1.1.6Web客户端和HTML
1.1.7其他协议
1.2为什么攻击Web应用
1.3何人、何时、何地攻击Web应用
1.3.1安全薄弱点
1.4如何攻击Web应用程序
1.4.1Web浏览器
1.4.2浏览器扩展
1.4.3HTTP代理
1.4.4命令行工具
1.4.5一些老工具
1.5小结
1.6参考和进一步阅读
第2章剖析
2.1架构剖析
2.1.1踩点和扫描：定义范围
2.1.2Banner抓取
2.1.3高级HTTP指纹
2.1.4中间件架构
2.2应用剖析
2.2.1手工检测
2.2.2使用搜索工具进行剖析
2.2.3自动Web爬行工具
2.2.4常见Web应用剖析
2.3常用对抗措施
2.3.1一条警示
2.3.2保护目录
2.3.3保护包含文件
2.3.4一些其他技巧
2.4小结
2.5参考和进一步阅读
第3章攻击Web平台
3.1使用Metasploit进行点击式的漏洞利用
3.2手工漏洞利用
3.3检测绕过技术
3.4Web平台安全最佳实践
3.4.1通用最佳实践
3.4.2IIS加固
3.4.3加固Apache
3.4.4PHP最佳实践
3.5小结
3.6参考和进一步阅读
第4章攻击Web认证
4.1认证威胁
4.1.1用户名/密码威胁
4.1.2更强的Web认证
4.1.3Web认证服务
4.2绕过认证
4.2.1令牌重放
4.2.2身份管理
4.2.3利用客户端
4.2.4最后一些思考：身份窃取
4.3小结
4.4参考和进一步阅读
第5章攻击Web授权
5.1授权实现的指纹识别
5.1.1爬行ACL
5.1.2识别访问/会话令牌
5.1.3分析会话令牌
5.1.4差异分析
5.1.5角色矩阵
5.2攻击ACL
5.3攻击令牌
5.3.1手动预测
5.3.2自动预测
5.3.3捕获/重放
5.3.4会话定置
5.4授权攻击案例分析
5.4.1水平权限提升
5.4.2垂直权限提升
5.4.3差异分析
5.4.4使用Curl映射许可
5.5授权最佳实践
5.5.1WebACL最佳实践
5.5.2Web授权/会话令牌安全
5.5.3安全日志
5.6小结
5.7参考和进一步阅读
第6章输入验证攻击
6.1预料意外的情况
6.2在哪里寻找攻击载体
6.3绕过客户端验证
6.4常见的输入验证攻击
6.4.1缓冲区溢出
6.4.2转义攻击
6.4.3脚本攻击
6.4.4边界检查
6.4.5操纵应用程序行为
6.4.6SQL注入和数据存储攻击
6.4.7执行命令
6.4.8编码滥用
6.4.9PHP全局变量
6.4.10常见的后果
6.5小结
6.6参考和进一步阅读
第7章攻击Web数据存储
7.1SQL入门
7.1.1语法
7.1.2SELECT，INSERT和UPDATE
7.2发现SQL注入
7.2.1语法和错误
7.2.2语义和行为
7.2.3替换字符编码
7.3利用SQL注入漏洞
7.3.1改变流程
7.3.2查询替换数据
7.3.3平台
7.4其他数据存储攻击
7.4.1输入验证
7.4.2把查询数据从查询逻辑分离出来
7.4.3数据库加密
7.4.4数据库配置
7.5小结
第8章攻击XMLWeb服务
8.1什么是Web服务
8.1.1传输：HTTP（S）上的SOAP
8.1.2WSDL
8.1.3目录服务：UDDI和DISCO
8.1.4与Web应用程序安全的相似性
8.2攻击Web服务
8.3Web服务安全基础
8.3.1Web服务安全措施
8.4小结
8.5参考和进一步阅读
第9章攻击Web应用管理
9.1远程服务器管理
9.1.1Telnet
9.1.2SSH
9.1.3私有的管理端口
9.1.4其他管理服务
9.2Web内容管理
9.2.1FTP
9.2.2SSH/scp
9.2.3FrontPage
9.2.4WebDAV
9.3管理员错误配置
9.3.1不必要的Web服务器扩展
9.3.2信息泄漏
9.4开发者造成的错误
9.5小结
9.6参考和进一步阅读
第10章攻击Web客户端
10.1漏洞利用
10.2欺骗
10.3通用对抗措施
10.3.1IE安全区域
10.3.2Firefox安全设置
10.3.3低权限浏览
10.3.4服务端的对抗措施
10.4小结
10.5参考和进一步阅读
第11章拒绝服务（DenialofService）攻击
11.1常见的DoS攻击技术
11.1.1传统的DoS攻击：利用漏洞
11.1.2现代DoS攻击：能力损耗
11.1.3应用层的DoS攻击
11.2常见的DoS对抗措施
11.2.1主动DoS防御
11.2.2DoS测试（DoSTesting）
11.2.3应对DoS攻击
11.3总结
11.4参考和进一步阅读
第12章充分认知分析（Full-KnowledgeAnalysis）
12.1威胁建模
12.1.1理清安全对象
12.1.2识别资产
12.1.3架构概述
12.1.4分解应用程序
12.1.5识别威胁并用文档描述它们
12.1.6对威胁排序
12.1.7开发威胁减缓策略
12.2代码评审
12.2.1手动源代码评审
12.2.2自动源代码评审
12.2.3二进制分析
12.3应用程序代码的安全测试
12.3.1模糊测试
12.3.2测试工具、程序和用具
12.4在Web开发流程中的安全
12.4.1人员
12.4.2流程
12.4.3技术
12.5小结
12.6参考和进一步阅读
第13章Web应用安全扫描器
13.1技术：Web应用安全扫描器
13.1.1测试平台
13.1.2测试
13.1.3单个扫描器评审
13.1.4整体测试结果
13.2非技术问题
13.2.1流程
13.2.2人员
13.3小结
13.4参考和进一步阅读
附录AWeb应用程序的安全检查列表
附录BWeb攻击工具和攻击技术清单
附录CURLScan和ModSecurity
附录D关于本书的配套网站
索引
……