PHP应用程序安全编程(Tricia Ballad)PDF扫描版

  • 书籍大小:32MB
  • 书籍语言:简体中文
  • 书籍类型:国产软件
  • 书籍授权:免费软件
  • 更新时间:2012-11-28
  • 书籍类别:PHP电子书
  • 购买链接:
  • 网友评分:软件评分
  • 应用平台:PDF
32MB
无插件 360通过 腾讯通过 金山通过
内容介绍热点排行相关内容下载地址↓
本书通过实际情景、示例代码深入浅出地介绍了经常困挠php web应用程序开发人员的常见安全问题。主要内容包括:去除应用程序安全漏洞,防御php攻击,提高运行php代码的服务器安全,实施严格的身份验证以及加密应用程序,预防跨站点脚本攻击,系统化测试应用程序安全性,解决第三方应用程序已有漏洞等。
   本书内容丰富,理论和实践紧密结合。通过详细概念说明和完整实例代码,读者可以轻松将自己所学的理论知识付诸实践。本书适用于各个阶段的web应用程序开发人员。
   本书将帮助你掌握编写可靠的php代码和提高你正在使用的php软件安全所需的技术、技巧以及最佳实践。作者揭示经常困挠php程序开发人员的常见代码安全问题,同时给出实用且专业的解决方案——不管你拥有多少php编程经验,这些技术都非常容易理解和使用。
   本书具体包括
   ·从起步阶段设计安全的应用程序——去除已有应用程序安全漏洞。
   ·防御php自身无法防御的会话劫持、固化以及毒化攻击。
   ·提高运行php代码的服务器的安全性,包括针对apache、mysql、iis/sql服务器的具体指导。
   ·实施严格的身份验证以及加密应用。
   ·预防危险的跨站点脚本攻击。
   ·系统化测试应用程序的安全性,包括探索式测试和php自动化测试。
   ·解决第三方应用程序的已有漏洞。

目录

译者序
第一篇web开发是血腥运动——不打无准备仗
第1章服务器安全问题以及其他高深问题1
1.1现实检查1
1.2服务器安全问题2
1.2.1黑客通过非安全应用程序获得控制权3
1.2.2编程人员可以提高应用程序的安全性4
1.3安全困惑4
1.4自身的会话管理提供安全性6
1.5“我的应用程序并不值得攻击”6
1.6“门卫”的典型表现6
1.7小结7
第二篇安全漏洞是否大到能开大卡车
第2章处理错误9
2.1留言板应用程序9
2.1.1程序总结9
2.1.2主要代码清单9
2.2用户执行过度操作10
2.2.1这些代码会产生什么结果10
2.2.2期待非期望输入13
.2.3构建错误处理机制14
2.3.1测试非期望输入14
2.3.2决定如何处理错误数据17
2.3.3简化系统的使用18
2.4小结20
第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
第三篇名称里的内涵,远多于你所期望的
第4章缓冲区溢出和变量整理29
4.1什么是缓冲区,什么是缓冲区溢出以及为什么要关注它29
4.1.1缓冲区、堆栈、堆和内存分配30
4.1.2缓冲区溢出的后果32
4.1.3内存分配和php32
4.1.4关注最新的安全警告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
第5章验证输入41
5.1新特性:允许用户对留言板留言签名41
5.2问题:用户提供了过多的数据42
5.2.1发送垃圾邮件42
5.2.2注入攻击42
5.3假设:你了解你的数据42
5.3.1数据库限制43
5.3.2逻辑限制43
5.4解决方法:验证输入的正则表达式44
5.4.1数据污损44
5.4.2正则表达式简介45
5.4.3正则表达式的贪婪模式和惰性模式47
5.4.4常见验证输入模式49
5.5小结51
第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的文件权限57
6.3.2修改windows文件权限58
6.3.3在php中修改文件权限63
6.4修补应用程序以便支持用户上传图像文件64
6.4.1修改api64
6.4.2创建上传表单66
6.5小结66
第四篇“噢,你可以信任我”
第7章身份验证67
7.1什么是用户身份验证67
7.1.1用户名和密码68
7.1.2图像识别70
7.2权限71
7.3验证用户的方法71
7.3.1基于字典的身份验证71
7.3.2用户数据库79
7.4保存用户名和密码80
7.4.1加密80
7.4.2密码强度80
7.4.3评估漏洞81
7.5修补应用程序以便增加用户身份验证82
7.5.1添加user数据库表和确认数据库的安全性82
7.5.2创建身份验证api83
7.6小结84
第8章加密85
8.1什么是加密85
8.2加密类型86
8.2.1算法能力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
第9章会话安全性91
9.1什么是会话变量91
9.2会话攻击的主要类型91
9.2.1会话固化91
9.2.2会话劫持93
9.2.3会话毒化(注入)94
9.3修补应用程序代码以提高会话安全性94
9.4小结96
第10章跨站式脚本编程97
10.1什么是xss97
10.2反射式xss97
10.3存储式xss97
10.4修补应用程序代码防范xss攻击98
10.5小结99
第五篇夜晚得锁门
第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修改管理员用户名和密码…116
11.4.4删除默认的数据库用户并为每个应用程序创建新账户…117
11.4.5删除示例数据库118
11.5小结118
第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
第13章服务器端php的安全性144
13.1使用最新版本的php144
13.1.1zend框架和zend优化器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
第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
第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专有测试套件的优点和特性176
15.4.2使用专有测试套件扫描你的应用程序176
15.5小结181
第六篇“不被攻击”并不是一个可行的安全策略
第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
第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同事间的代码评审197
17.3小结197
第18章安全是生活方式的选择:成为一个优秀的编程人员198
18.1避免过多特性198
18.2编写自文档化代码199
18.3使用适合工作的工具200
18.4执行同事间的代码评审201
18.5小结201
附录额外资源202
术语表206
截图:
人气书籍
下载地址
相关书籍
网友评论
下载声明

☉脚本之家不参与生产制作,所有资源均来自稀酷客、csdn、电驴等站点搜集整理,并仅供私下交流学习之用,版权依然由原属机构或个人所有,若无意中侵犯了您的权益,请来信指出我们会立即会做出处理。
☉解压密码或分享码:www.jb51.net 就是本站主域名,希望大家看清楚,[ 分享码的获取方法 ]可以参考这篇文章
☉推荐使用 [ 迅雷 ] 下载,使用 [ WinRAR v5 ] 以上版本解压本站电子书。
☉如果这个电子书总是不能下载的请在评论中留言,我们会尽快修复,谢谢!
☉下载本站资源,如果服务器暂不能下载请过一段时间重试!
☉如果遇到什么问题,请评论留言,我们定会解决问题,谢谢大家支持!
☉本站提供的一些商业电子书是供学习研究之用,如用于商业用途,请购买正版。
☉本站提供的PHP应用程序安全编程(Tricia Ballad)PDF扫描版资源来源互联网,版权归该下载资源的合法拥有者所有。