PHP应用程序安全编程
分類: 图书,计算机/网络,程序设计,PHP,
作者: 巴雷德等著,姜燕梅等译
出 版 社: 机械工业出版社
出版时间: 2010-1-1字数:版次: 1页数: 208印刷时间: 2010-1-1开本: 16开印次: 1纸张: 胶版纸I S B N : 9787111291817包装: 平装内容简介
本书通过实际情景、示例代码深入浅出地介绍了经常困挠PHP Web应用程序开发人员的常见安全问题。主要内容包括:去除应用程序安全漏洞,防御PHP攻击,提高运行PHP代码的服务器安全,实施严格的身份验证以及加密应用程序,预防跨站点脚本攻击,系统化测试应用程序安全性,解决第三方应用程序已有漏洞等。
本书内容丰富,理论和实践紧密结合。通过详细概念说明和完整实例代码,读者可以轻松将自己所学的理论知识付诸实践。本书适用于各个阶段的Web应用程序开发人员。
本书将帮助你掌握编写可靠的PHP代码和提高你正在使用的PHP软件安全所需的技术、技巧以及最佳实践。作者揭示经常困挠PHP程序开发人员的常见代码安全问题,同时给出实用且专业的解决方案——不管你拥有多少PHP编程经验,这些技术都非常容易理解和使用。
本书具体包括
从起步阶段设计安全的应用程序——去除已有应用程序安全漏洞。
防御PHP自身无法防御的会话劫持、固化以及毒化攻击。
提高运行PHP代码的服务器的安全性,包括针对Apache、MySQL、IIS/SQL服务器的具体指导。
实施严格的身份验证以及加密应用。
预防危险的跨站点脚本攻击。
系统化测试应用程序的安全性,包括探索式测试和PHP自动化测试。
解决第三方应用程序的已有漏洞。
作者简介
Tricia Ballad 在成为专职技术写作人员之前,她花费了几年时间从事LAMP(Linux、Apache、MySQL和PHP/Perl)平台上的Web应用程序开发工作。目前她专门编写不同技术的在线课件。
目录
译者序
第一篇Web开发是血腥运动——不打无准备仗
第1章服务器安全问题以及其他高深问题
1.1现实检查
1.2服务器安全问题
1.2.1黑客通过非安全应用程序获得控制权
1.2.2编程人员可以提高应用程序的安全性
1.3安全困惑
1.4自身的会话管理提供安全性
1.5“我的应用程序并不值得攻击”
1.6“门卫”的典型表现
1.7小结
第二篇安全漏洞是否大到能开大卡车
第2章处理错误
2.1留言板应用程序
2.1.1程序总结
2.1.2主要代码清单
2.2用户执行过度操作
2.2.1这些代码会产生什么结果
2.2.2期待非期望输入
2.3构建错误处理机制
2.3.1测试非期望输入
2.3.2决定如何处理错误数据
2.3.3简化系统的使用
2.4小结
第3章系统调用
3.1了解exec()、system()以及backtick的风险
3.1.1通过SUID位和sudo使用系统命令
3.1.2使用系统资源
3.2使用escapeshellcmd()和escapeshellarg()保护系统调用
3.2.1escapeshellcmd()
3.2.2escapeshellarg()
3.3创建能够处理所有系统调用的API
3.3.1为什么不转义参数呢
3.3.2验证用户输入
3.4修补留言板应用程序
3.4.1moveFile()函数
3.4.2修补应用程序
3.5小结
第三篇名称里的内涵,远多于你所期望的
第4章缓冲区溢出和变量整理
第5章验证输入
第6章文件系统访问:访问文件系统的乐趣和益处
第四篇“噢,你可以信任我”
第7章身份验证
第8章加密
第9章会话安全性
第10章跨站式脚本编程
第五篇夜晚得锁门
第11章保护Apache和MySQL
第12章IIS和SQL Server的安全性…
第13章服务器端PHP的安全性
第14章自动化测试介绍
第15章探索性测试介绍
第六篇“不被攻击”并不是一个可行的安全策略
第16章计划A:从开始阶段设计安全的应用程序
第17章计划B:去除已有应用程序的安全漏洞
第18章安全是生活方式的选择:成为一个优秀的编程人员
附录额外资源
术语表