PHP应用程序安全编程pdf下载pdf下载

PHP应用程序安全编程百度网盘pdf下载

作者:
简介:本篇主要提供PHP应用程序安全编程pdf下载
出版社:互动创新图书专营店
出版时间:
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

 书[0名0]:  PHP应用程序安全编程[图书]|196294
 图书定价: 42元
 图书作者: (美)Tricia Ballad;William Ballad
 出版社:  [1机1]械工业出版社
 出版日期:  2010/1/1 0:00:00
 ISBN号: 9787111291817
 开本: 16开
 页数: 208
 版次: 1-1
 作者简介
Tricia Ballad 在成为专职技术写作人员之前,她花费了几年时间从事LAMP(Linux、Apache、MySQL和PHP/Perl)平台上的Web应用程序开发工作。目前她专门编写不同技术的在线课[亻牛]。William Ballad 曾[纟巠]工作在信息技术[令页]域的各个层[mian],从父母的ISP公司的硬[亻牛]维护工程师到[世*级][0大0]型公司的基于Windows和异构网络的架构师。他多年来一直活跃在IT安全[令页]域,[*]近[令页]导着一支专门抵御[0国0]际化黑客组织攻[1击1]OptionCart(一个广泛使用的电子[0商0]务系统)的团队。
 内容简介
本书通过实际情景、示例代码深入浅出地介绍了[纟巠]常困挠PHP Web应用程序开发人员的常见安全问题。[1主1]要内容包括:去除应用程序安全漏洞,防御PHP攻[1击1],[扌是]高运行PHP代码的服务器安全,实施严格的身份验证以及加密应用程序,预防跨站点脚本攻[1击1],系统化测试应用程序安全性,解决[0第0]三方应用程序已有漏洞等。
本书内容丰富,理论和实践紧密结合。通过详细概念说明和完整实例代码,读者可以轻松将自己所[0学0]的理论[0知0]识付诸实践。本书适用于各个阶段的Web应用程序开发人员。
本书将帮助你掌握编写可靠的PHP代码和[扌是]高你正在使用的PHP软[亻牛]安全所需的技术、技巧以及[*]佳实践。作者揭示[纟巠]常困挠PHP程序开发人员的常见代码安全问题,同时给出实用且专业的解决方案——不管你拥有多少PHP编程[纟巠]验,这些技术都非常容易理解和使用。
本书具体包括
·从起步阶段设计安全的应用程序——去除已有应用程序安全漏洞。
·防御PHP自身无[0法0]防御的[0会0]话劫持、固化以及毒化攻[1击1]。
·[扌是]高运行PHP代码的服务器的安全性,包括针对Apache、MySQL、IIS/SQL服务器的具体指导。
·实施严格的身份验证以及加密应用。
·预防危险的跨站点脚本攻[1击1]。
·系统化测试应用程序的安全性,包括探索式测试和PHP自动化测试。
·解决[0第0]三方应用程序的已有漏洞。
 目录

译者序
[0第0]一篇Web开发是血腥运动——不打无准备仗
[0第0]1章服务器安全问题以及其他高深问题1
1.1现实检查1
1.2服务器安全问题2
1.2.1黑客通过非安全应用程序获得控制[0权0]3
1.2.2编程人员可以[扌是]高应用程序的安全性4
1.3安全困惑4
1.4自身的[0会0]话管理[扌是]供安全性6
1.5“我的应用程序并不值得攻[1击1]”6
1.6“门卫”的典型表现6
1.7小结7
[0第0]二篇安全漏洞是否[0大0]到能开[0大0]卡车
[0第0]2章处理错误9
2.1留言板应用程序9
2.1.1程序总结9
2.1.2[1主1]要代码清单9
2.2用户执行过度[*]作10
2.2.1这些代码[0会0]产生什么结果10
2.2.2期待非期望输入13
2.3构建错误处理[1机1]制14
2.3.1测试非期望输入14
2.3.2决定如何处理错误数据17
2.3.3简化系统的使用18
2.4小结20
[0第0]3章系统调用21
3.1了解exec()、system()以及backtick的风险21
3.1.1通过SUID位和sudo使用系统命令22
3.1.2使用系统资源22
3.2使用escapeshellcmd()和escapeshellarg()保护系统调用23
3.2.1escapeshellcmd()23
3.2.2escapeshellarg()24
3.3创建能够处理所有系统调用的API24
3.3.1为什么不转义参数呢24
3.3.2验证用户输入25
3.4修补留言板应用程序25
3.4.1moveFile()函数25
3.4.2修补应用程序26
3.5小结27
[0第0]三篇[0名0]称里的内涵,远多于你所期望的
[0第0]4章缓冲区溢出和变量整理29
4.1什么是缓冲区,什么是缓冲区溢出以及为什么要关注它29
4.1.1缓冲区、堆栈、堆和内存分配30
4.1.2缓冲区溢出的后果32
4.1.3内存分配和PHP32
4.1.4关注[*][亲斤]的安全[0警0]告34
4.2通过变量整理预防缓冲区溢出37
4.2.1前[扌是]:数据在证实为安全之前,都可能是有问题的,尤其是来自应用程序之外的数据37
4.2.2数据是从哪儿来的37
4.2.3如何整理数据以防止缓冲区溢出37
4.3为应用程序打补丁38
4.3.1验证是否为[*][亲斤]的稳定版本...38
4.3.2检查变量整理39
4.4小结40
[0第0]5章验证输入41
5.1[亲斤]特性:允许用户对留言板留言签[0名0]41
5.2问题:用户[扌是]供了过多的数据42
5.2.1发送垃圾邮[亻牛]42
5.2.2注入攻[1击1]42
5.3[jia]设:你了解你的数据42
5.3.1数据库限制43
5.3.2逻辑限制43
5.4解决方[0法0]:验证输入的正则表达式44
5.4.1数据污损44
5.4.2正则表达式简介45
5.4.3正则表达式的贪婪模式和惰性模式47
5.4.4常见验证输入模式49
5.5小结51
[0第0]6章文[亻牛]系统访问:访问文[亻牛]系统的乐趣和益处52
6.1打开文[亻牛]52
6.1.1本地文[亻牛]系统访问52
6.1.2远程文[亻牛]系统访问53
6.1.3防止远程文[亻牛]系统漏洞54
6.2创建并存储文[亻牛]55
6.2.1允许文[亻牛]上传55
6.2.2安全地存储文[亻牛]56
6.3安全地修改文[亻牛]属性57
6.3.1修改UNIX/Linux/Mac OS X的文[亻牛][0权0]限57
6.3.2修改Windows文[亻牛][0权0]限58
6.3.3在PHP中修改文[亻牛][0权0]限63
6.4修补应用程序以便支持用户上传图像文[亻牛]64
6.4.1修改API64
6.4.2创建上传表单66
6.5小结66
[0第0]四篇“噢,你可以信任我”
[0第0]7章身份验证67
7.1什么是用户身份验证67
7.1.1用户[0名0]和密码68
7.1.2图像识别70
7.2[0权0]限71
7.3验证用户的方[0法0]71
7.3.1基于字典的身份验证71
7.3.2用户数据库79
7.4保存用户[0名0]和密码80
7.4.1加密80
7.4.2密码强度80
7.4.3[0评0]估漏洞81
7.5修补应用程序以便增加用户身份验证82
7.5.1添加User数据库表和确认数据库的安全性82
7.5.2创建身份验证API83
7.6小结84
[0第0]8章加密85
8.1什么是加密85
8.2加密类型86
8.2.1算[0法0]能力87
8.2.2速度和安全性87
8.2.3数据的使用88
8.3密码的安全性88
8.4在应用程序中增加密码加密功能...88
8.4.1修改User表89
8.4.2创建加密和salt函数89
8.4.3修改密码验证系统89
8.5小结90
[0第0]9章[0会0]话安全性91
9.1什么是[0会0]话变量91
9.2[0会0]话攻[1击1]的[1主1]要类型91
9.2.1[0会0]话固化91
9.2.2[0会0]话劫持93
9.2.3[0会0]话毒化(注入)94
9.3修补应用程序代码以[扌是]高[0会0]话安全性94
9.4小结96
[0第0]10章跨站式脚本编程97
10.1什么是XSS97
10.2反[身寸]式XSS97
10.3存储式XSS97
10.4修补应用程序代码防范XSS攻[1击1]98
10.5小结99
[0第0]五篇夜晚得锁门
[0第0]11章保护Apache和MySQL101
11.1编程语言、Web服务器以及[*]作系统本身都是不安全的101
11.2[扌是]高UNIX、Linux或Mac OS X环境的安全性102
11.3保护Apache103
11.3.1升级或安装Apache[*][亲斤]的稳定版本104
11.3.2设置Apache专有的用户和组106
11.3.3隐藏版本号以及其他敏感信息107
11.3.4将Apache限制在自身的目录结构中107
11.3.5禁用任何不必要的选项109
11.3.6安装和启用ModSecurity109
11.4保护MySQL113
11.4.1升级或安装[*][亲斤]版本113
11.4.2禁用远程访问116
11.4.3修改管理员用户[0名0]和密码...116
11.4.4删除默认的数据库用户并为每个应用程序创建[亲斤]账户...117
11.4.5删除示例数据库118
11.5小结118
[0第0]12章IIS和SQL Server的安全性...119
12.1Windows服务器环境的安全性...119
12.2IIS的安全性125
12.2.1减少服务器的开放点125
12.2.2Web Root的安全性126
12.3SQL Server的安全性131
12.3.1安装或升级到[*][亲斤]版本131
12.3.2Microsoft SQL Server的安全性138
12.4小结143
[0第0]13章服务器端PHP的安全性144
13.1使用[*][亲斤]版本的PHP144
13.1.1Zend框架和Zend[0优0]化器144
13.1.2找到[*][亲斤]版本的PHP148
13.1.3使用Suhosin补丁和扩展149
13.2使用PHP和Apache内置的安全特性149
13.2.1safe_mode149
13.2.2SuEXEC150
13.3使用ModSecurity150
13.4php.ini的安全性151
13.5小结153
[0第0]14章自动化测试介绍154
14.1为什么在关于安全的书籍中介绍测试154
14.2测试框架155
14.3测试类型156
14.3.1单元测试156
14.3.2系统测试157
14.4选择合适的测试数据157
14.5小结158
[0第0]15章探索性测试介绍159
15.1什么是探索性测试159
15.2Fuzz测试160
15.2.1安装和配置PowerFuzzer160
15.2.2使用PowerFuzzer162
15.3测试工具集165
15.3.1下载CAL9000166
15.3.2使用CAL9000167
15.4专有测试套[亻牛]176
15.4.1专有测试套[亻牛]的[0优0]点和特性176
15.4.2使用专有测试套[亻牛]扫描你的应用程序176
15.5小结181
[0第0][6]篇“不被攻[1击1]”并不是一个可行的安全策略
[0第0]16章计划A:从开始阶段设计安全的应用程序183
16.1在开始编写代码之前183
16.1.1概念总结183
16.1.2工作流和角色图185
16.1.3数据设计186
16.1.4框架函数189
16.2标识故障点190
16.2.1登录和登出190
16.2.2文[亻牛]上载191
16.2.3用户输入192
16.2.4文[亻牛]系统访问192
16.3小结192
[0第0]17章计划B:去除已有应用程序的安全漏洞193
17.1设置环境193
17.1.1使用三阶段部署193
17.1.2使用版本控制194
17.2[扌是]高应用程序安全的检查列表...195
17.2.1检查服务器安全性195
17.2.2找到代码漏洞195
17.2.3修复[*]明显的问题196
17.2.4同事间的代码[0评0]审197
17.3小结197
[0第0]18章安全是生活方式的选择:成为一个[0优0]秀的编程人员198
18.1避免过多特性198
18.2编写自文档化代码199
18.3使用适合工作的工具200
18.4执行同事间的代码[0评0]审201
18.5小结201
附录额外资源202
术语表206