书籍详情
《白帽子讲Web安全(纪念版)》[49M]百度网盘|亲测有效|pdf下载
  • 白帽子讲Web安全(纪念版)

  • 出版社:电子工业出版社
  • 出版时间:2014-06-01
  • 热度:9234
  • 上架时间:2024-06-30 08:52:20
  • 价格:0.0
书籍下载
书籍预览
免责声明

本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正

内容介绍

编辑推荐
  ◎ 阿里巴巴集团首席技术官原阿里云总裁王坚|无码科技创始人冯大辉|UCloud创始人季昕华|知道创宇创始人赵伟|乌云平台创始人方小顿|淘宝核心技术专家林昊 联合力荐
  ◎ 首度以白帽子视角梳理Web安全技术及完整攻防策略,针对网站如何应对漏洞|保障安全,指导开发更安全网站,详述大量工业化安全实战及其思考过程|优劣分析。
  ◎ 首度提出互联网安全与传统安全有别,给出更具针对性的解决方案,读者可有幸亲自聆听阿里安全技术体系从无到有的直接建设者亲述一线安防经验。
  ◎ 辖世界观|客户端脚本|服务端应用|互联网运营几大核心安全主题,独创性地深入剖析安全本质,提升结合实际情况快速解决问题的思考能力。
内容简介
  在互联网时代,数据安全与个人隐私受到了前所未有的挑战,各种新奇的攻击技术层出不穷。如何才能更好地保护我们的数据?本书将带你走进Web安全的世界,让你了解Web安全的方方面面。黑客不再变得神秘,攻击技术原来我也可以会,小网站主自己也能找到正确的安全道路。大公司是怎么做安全的,为什么要选择这样的方案呢?你能在本书中找到答案。详细的剖析,让你不仅能“知其然”,更能“知其所以然”。
作者简介
  吴翰清,国内著名安全组织Ph4nt0m的创始人,精通各种攻击与防御技术。2005年加入阿里巴巴(中国)有限公司,2007年成为阿里巴巴年轻的专家。先后完成阿里巴巴、淘宝、zhi付宝的安全评估与安全体系建设工作。主导了阿里巴巴的安全开发流程建设工作,在应用安全领域内有丰富的经验。现任阿里巴巴安全架构师,负责全集团WEB安全工作以及云计算安全。
目录
版权信息
序言
前言
第一篇 世界观安全
第1章 我的安全世界观
1.1 Web安全简史
1.1.1 中国黑客简史
1.1.2 黑客技术的发展历程
1.1.3 Web安全的兴起
1.2 黑帽子,白帽子
1.3 返璞归真,揭秘安全的本质
1.4 破除迷信,没有银弹
1.5 安全三要素
1.6 如何实施安全评估
1.6.1 资产等级划分
1.6.2 威胁分析
1.6.3 风险分析
1.6.4 设计安全方案
1.7 白帽子兵法
1.7.1 Secure By Default原则
1.7.2 纵深防御原则
1.7.3 数据与代码分离原则
1.7.4 不可预测性原则
1.8 小结
(附)谁来为漏洞买单?
第二篇 客户端脚本安全
第2章 浏览器安全
2.1 同源策略
2.2 浏览器沙箱
2.3 恶意网址拦截
2.4 高速发展的浏览器安全
2.5 小结
第3章 跨站脚本攻击(XSS)
3.1 XSS简介
3.2 XSS攻击进阶
3.2.1 初探XSS Payload
3.2.2 强大的XSS Payload
3.2.3 XSS 攻击平台
3.2.4 终极武器:XSS Worm
3.2.5 调试JavaScript
3.2.6 XSS构造技巧
3.2.7 变废为宝:Mission Impossible
3.2.8 容易被忽视的角落:Flash XSS
3.2.9 真的高枕无忧吗:JavaScript开发框架
3.3 XSS的防御
3.3.1 四两拨千斤:HttpOnly
3.3.2 输入检查
3.3.3 输出检查
3.3.4 正确地防御XSS
3.3.5 处理富文本
3.3.6 防御DOM Based XSS
3.3.7 换个角度看XSS的风险
3.4 小结
第4章 跨站点请求伪造(CSRF)
4.1 CSRF简介
4.2 CSRF进阶
4.2.1 浏览器的Cookie策略
4.2.2 P3P头的副作用
4.2.3 GET?POST?
4.2.4 Flash CSRF
4.2.5 CSRF Worm
4.3 CSRF的防御
4.3.1 验证码
4.3.2 Referer Check
4.3.3 Anti CSRF Token
4.4 小结
第5章 点击劫持(ClickJacking)
5.1 什么是点击劫持
5.2 Flash点击劫持
5.3 图片覆盖攻击
5.4 拖拽劫持与数据窃取
5.5 ClickJacking 3.0:触屏劫持
5.6 防御ClickJacking
5.6.1 frame busting
5.6.2 X-Frame-Options
5.7 小结
第6章 HTML 5安全
6.1 HTML 5新标签
6.1.1 新标签的XSS
6.1.2 iframe的sandbox
6.1.3 Link Types:noreferrer
6.1.4 Canvas的妙用
6.2 其他安全问题
6.2.1 Cross-Origin Resource Sharing
6.2.2 postMessage——跨窗口传递消息
6.2.3 Web Storage
6.3 小结
第三篇 服务器端应用安全
第7章 注入攻击
7.1 SQL注入
7.1.1 盲注(Blind Injection)
7.1.2 Timing Attack
7.2 数据库攻击技巧
7.2.1 常见的攻击技巧
7.2.2 命令执行
7.2.3 攻击存储过程
7.2.4 编码问题
7.2.5 SQL Column Truncation
7.3 正确地防御SQL注入
7.3.1 使用预编译语句
7.3.2 使用存储过程
7.3.3 检查数据类型
7.3.4 使用安全函数
7.4 其他注入攻击
7.4.1 XML注入
7.4.2 代码注入
7.4.3 CRLF注入
7.5 小结
第8章 文件上传漏洞
8.1 文件上传漏洞概述
8.1.1 从FCKEditor文件上传漏洞谈起
8.1.2 绕过文件上传检查功能
8.2 功能还是漏洞
8.2.1 Apache文件解析问题
8.2.2 IIS文件解析问题
8.2.3 PHP CGI路径解析问题
8.2.4 利用上传文件钓鱼
8.3 设计安全的文件上传功能
8.4 小结
第9章 认证与会话管理
9.1 Who am I?
9.2 密码的那些事儿
9.3 多因素认证
9.4 Session与认证
9.5 Session Fixation攻击
9.6 Session保持攻击
9.7 单点登录(SSO)
9.8 小结
第10章 访问控制
10.1 What Can I Do?
10.2 垂直权限管理
10.3 水平权限管理
10.4 OAuth简介
10.5 小结
第11章 加密算法与随机数
11.1 概述
11.2 Stream Cipher Attack
11.2.1 Reused Key Attack
11.2.2 Bit-flipping Attack
11.2.3 弱随机IV问题
11.3 WEP破解
11.4 ECB模式的缺陷
11.5 Padding Oracle Attack
11.6 密钥管理
11.7 伪随机数问题
11.7.1 弱伪随机数的麻烦
11.7.2 时间真的随机吗
11.7.3 破解伪随机数算法的种子
11.7.4 使用安全的随机数
11.8 小结
(附)Understanding MD5 Length Extension Attack
第12章 Web框架安全
12.1 MVC框架安全
12.2 模板引擎与XSS防御
12.3 Web框架与CSRF防御
12.4 HTTP Headers管理
12.5 数据持久层与SQL注入
12.6 还能想到什么
12.7 Web框架自身安全
12.7.1 Struts 2命令执行漏洞
12.7.2 Struts 2的问题补丁
12.7.3 Spring MVC命令执行漏洞
12.7.4 Django命令执行漏洞
12.8 小结
第13章 应用层拒绝服务攻击
13.1 DDOS简介
13.2 应用层DDOS
13.2.1 CC攻击
13.2.2 限制请求频率
13.2.3 道高一尺,魔高一丈
13.3 验证码的那些事儿
13.4 防御应用层DDOS
13.5 资源耗尽攻击
13.5.1 Slowloris攻击
13.5.2 HTTP POST DOS
13.5.3 Server Limit DOS
13.6 一个正则引发的血案:ReDOS
13.7 小结
第14章 PHP安全
14.1 文件包含漏洞
14.1.1 本地文件包含
14.1.2 远程文件包含
14.1.3 本地文件包含的利用技巧
14.2 变量覆盖漏洞
14.2.1 全局变量覆盖
14.2.2 extract()变量覆盖
14.2.3 遍历初始化变量
14.2.4 import_request_variables变量覆盖
14.2.5 parse_str()变量覆盖
14.3 代码执行漏洞
14.3.1“危险函数”执行代码
14.3.2“文件写入”执行代码
14.3.3 其他执行代码方式
14.4 定制安全的PHP环境
14.5 小结
第15章 Web Server配置安全
15.1 Apache安全
15.2 Nginx安全
15.3 jBoss远程命令执行
15.4 Tomcat远程命令执行
15.5 HTTP Parameter Pollution
15.6 小结
第16章 互联网业务安全
16.1 产品需要什么样的安全
16.1.1 互联网产品对安全的需求
16.1.2 什么是好的安全方案
16.2 业务逻辑安全
16.2.1 永远改不掉的密码
16.2.2 谁是大赢家
16.2.3 瞒天过海
16.2.4 关于密码取回流程
16.3 账户是如何被盗的
16.3.1 账户被盗的途径
16.3.2 分析账户被盗的原因
16.4 互联网的垃圾
16.4.1 垃圾的危害
16.4.2 垃圾处理
16.5 关于网络钓鱼
16.5.1 钓鱼网站简介
16.5.2 邮件钓鱼
16.5.3 钓鱼网站的防控
16.5.4 网购流程钓鱼
16.6 用户隐私保护
16.6.1 互联网的用户隐私挑战
16.6.2 如何保护用户隐私
16.6.3 Do-Not-Track
16.7 小结
(附)麻烦的终结者
第17章 安全开发流程(SDL)
17.1 SDL简介
17.2 敏捷SDL
17.3 SDL实战经验
17.4 需求分析与设计阶段
17.5 开发阶段
17.5.1 提供安全的函数
17.5.2 代码安全审计工具
17.6 测试阶段
17.7 小结
第18章 安全运营
18.1 把安全运营起来
18.2 漏洞修补流程
18.3 安全监控
18.4 入侵检测
18.5 紧急响应流程
18.6 小结
(附)谈谈互联网企业安全的发展方向
媒体评论
  ★安全是互联网公司的声明,也是每一位网民的基本需求,以为天天听到到生的白帽子和你分享如何呵护生命,满足基本需求,这是一本能味到硝烟味道的书。
  ——阿里巴巴集团首席架构师阿里云计算总裁王坚
  ★对于绝大多数的中小网站来说,Web安全是技术上薄弱而又很难提高的一个环节,而这个环节上发生的问题曾让很多人寝食难安。感谢此书中分享的诸多宝贵经验,让我受益匪浅。同时,强烈建议每个技术团队的负责人都能阅读此书,定能让你受益。
  ——丁香园CTO冯大辉
  ★作为互联网的开发人员,在实现功能外也需要重点关注如何避免留TXSS、CSRF等漏洞,否则很容易出现用户账号泄密、跨权限操作等严重问题,本书讲解了通常网站是如何来应对这些漏洞以及保障安全的,从这些难能可贵的实战经验中可以学习到如何更好地编写一个安全的网站。
  ——淘宝资深技术专家林吴
  ★安全问题成了互联网的梦魇,这本书的出现终于能让我们睡个好觉。
  ——知道创宇创始人CEO赵伟(icbm)
  ★一直以来安全行业都不缺少所谓的技术和毫无思想的说明书式的文字,缺少的是对于安全本质的:析,关于如何更好地结合实际情况解决问题的思考,以及对这些思考的分享。吴翰清正在尝试做个事情,而且做到了。
  ——乌云漏洞平台创始人方小顿(剑心)
前言
  在2010年年中的时候,博文视点的张春雨先生找到我,希望我可以写一本关于云计算安全的书。当时云计算的概念正如日中天,但市面上关于云计算安全应该怎么做却缺乏足够的资料。我由于工作的关系接触这方面比较多,但考虑到云计算的未来尚未清晰,以及其他的种种原因,婉拒了张春雨先生的要求,转而决定写一本关于Web安全的书。
  我的安全之路
  我对安全的兴趣起源于中学时期。当时在盗版市场买到了一本没有书号的黑客手册,其中coolfire的黑客教程令我印象深刻。此后在有限的能接触到互联网的机会里,我总会想方设法地寻找一些黑客教程,并以实践其中记载的方法为乐。
  在2000年的时候,我进入了西安交通大学学习。在大学期间,最大的收获,是学校的计算机实验室平时会对学生开放。当时上网的资费仍然较贵,父母给我的生活费里,除了留下必要的生活所需费用之外,几乎全部投入在这里。也是在学校的计算机实验室里,让我迅速在这个领域中成长起来。
  大学期间,在父母的资助下,我拥有了自己的第一台个人电脑,这加快了我成长的步伐。与此同时,我和一些互联网上志同道合的朋友,一起建立了一个技术型的安全组织,名字来源于我当时最喜爱的一部动漫:“幻影旅团”(ph4nt0m。org)。历经十余载,“幻影”由于种种原因未能得以延续,但它却曾以论坛的形式培养出了当今安全行业中非常多的顶尖人才。这也是我在这短短二十余载人生中的最大成就与自豪。
  得益于互联网的开放性,以及我亲手缔造的良好技术交流氛围,我几乎见证了全部互联网安全技术的发展过程。在前5年,我投入了大量精力研究渗透测试技术、缓冲区溢出技术、网络攻击技术等;而在后5年,出于工作需要,我把主要精力放在了对Web安全的研究上。
  加入阿里巴巴
  发生这种专业方向的转变,是因为在2005年,我在一位挚友的推荐下,加入了阿里巴巴。
  加入的过程颇具传奇色彩,在面试的过程中主管要求我展示自己的能力,于是我远程关闭了阿里巴巴内网上游运营商的一台路由设备,导致阿里巴巴内部网络中断。事后主管立即要求与运营商重新签订可用性协议。
  大学时期的兴趣爱好,居然可以变成一份正经的职业(当时很多大学都尚未开设网络安全的课程与专业),这使得我的父母很震惊,同时也更坚定了我自己以此作为事业的想法。
  在阿里巴巴我很快就崭露头角,曾经在内网中通过网络嗅探捕获到了开发总监的邮箱密码;也曾经在压力测试中一瞬间瘫痪了公司的网络;还有好几次,成功获取到了域控服务器的权限,从而可以以管理员的身份进入任何一位员工的电脑。
  但这些工作成果,都远远比不上那厚厚的一摞网站安全评估报告让我更有成就感,因为我知道,网站上的每一个漏洞,都在影响着成千上万的用户。能够为百万、千万的互联网用户服务,让我倍感自豪。当时,Web正在逐渐成为互联网的核心,Web安全技术也正在兴起,于是我义无返顾地投入到对Web安全的研究中。
  我于2007年以23岁之龄成为了阿里巴巴集团最年轻的技术专家。虽未有官方统计,但可能也是全集团里最年轻的高级技术专家,我于2010年获此殊荣。在阿里巴巴,我有幸见证了安全部门从无到有的建设过程。同时由于淘宝、支付宝草创,尚未建立自己的安全团队,因此我有幸参与了淘宝、支付宝的安全建设,为他们奠定了安全开发框架、安全开发流程的基础。
  对互联网安全的思考
  当时,我隐隐地感觉到了互联网公司安全,与传统的网络安全、信息安全技术的区别。就如同开发者会遇到的挑战一样,有很多问题,不放到一个海量用户的环境下,是难以暴露出来的。由于量变引起质变,所以管理10台服务器,和管理1万台服务器的方法肯定会有所区别;同样的,评估10名工程师的代码安全,和评估1000名工程师的代码安全,方法肯定也要有所不同。
  互联网公司安全还有一些鲜明的特色,比如注重用户体验、注重性能、注重产品发布时间,因此传统的安全方案在这样的环境下可能完全行不通。这对安全工作提出了更高的要求和更大的挑战。
  这些问题,使我感觉到,互联网公司安全可能会成为一门新的学科,或者说应该把安全技术变得更加工业化。可是我在书店中,却发现安全类目的书,要么是极为学术化的(一般人看不懂)教科书,要么就是极为娱乐化的(比如一些“黑客工具说明书”类型的书)说明书。极少数能够深入剖析安全技术原理的书,以我的经验看来,在工业化的环境中也会存在各种各样的问题。
  这些问题,也就促使我萌发了一种写一本自己的书,分享多年来工作心得的想法。它将是一本阐述安全技术在企业级应用中实践的书,是一本大型互联网公司的工程师能够真正用得上的安全参考书。因此张春雨先生一提到邀请我写书的想法时,我没有做过多的思考,就答应了。
  Web是互联网的核心,是未来云计算和移动互联网的最佳载体,因此Web安全也是互联网公司安全业务中最重要的组成部分。我近年来的研究重心也在于此,因此将选题范围定在了Web安全。但其实本书的很多思路并不局限于Web安全,而是可以放宽到整个互联网安全的方方面面之中。
  掌握了以正确的思路去看待安全问题,在解决它们时,都将无往而不利。我在2007年的时候,意识到了掌握这种正确思维方式的重要性,因此我告知好友:安全工程师的核心竞争力不在于他能拥有多少个0day,掌握多少种安全技术,而是在于他对安全理解的深度,以及由此引申的看待安全问题的角度和高度。我是如此想的,也是如此做的。
  因此在本书中,我认为最可贵的不是那一个个工业化的解决方案,而是在解决这些问题时,背后的思考过程。我们不是要做一个能够解决问题的方案,而是要做一个能够“漂亮地”解决问题的方案。这是每一名优秀的安全工程师所应有的追求。
  安全启蒙运动
  然而在当今的互联网行业中,对安全的重视程度普遍不高。有统计显示,互联网公司对安全的投入不足收入的百分之一。
  在2011年岁末之际,中国互联网突然卷入了一场有史以来最大的安全危机。12月21日,国内最大的开发者社区CSDN被黑客在互联网上公布了600万注册用户的数据。更糟糕的是,CSDN在数据库中明文保存了用户的密码。接下来如同一场盛大的交响乐,黑客随后陆续公布了网易、人人、天涯、猫扑、多玩等多家大型网站的数据库,一时间风声鹤唳,草木皆兵。
  这些数据其实在黑客的地下世界中已经辗转流传了多年,牵扯到了一条巨大的黑色产业链。这次的偶然事件使之浮出水面,公之于众,也让用户清醒地认识到中国互联网的安全现状有多么糟糕。
  以往类似的事件我都会在博客上说点什么,但这次我保持了沉默。因为一来知道此种状况已经多年,网站只是在为以前的不作为而买单;二来要解决“拖库”的问题,其实是要解决整个互联网公司的安全问题,远非保证一个数据库的安全这么简单。这不是通过一段文字、一篇文章就能够讲清楚的。但我想最好的答案,可以在本书中找到。
  经历这场危机之后,希望整个中国互联网,在安全问题的认识上,能够有一个新的高度。
  那这场危机也就物有所值,或许还能借此契机成就中国互联网的一场安全启蒙运动。
  这是我的第一本书,也是我坚持自己一个人写完的书,因此可以在书中尽情地阐述自己的安全世界观,且对书中的任何错漏之处以及不成熟的观点都没有可以推卸责任的借口。
  由于工作繁忙,写此书只能利用业余时间,交稿时间多次推迟,深感写书的不易。但最终能成书,则有赖于各位亲朋的支持,以及编辑的鼓励,在此深表感谢。本书中很多地方未能写得更为深入细致,实乃精力有限所致,尚请多多包涵。
  关于白帽子
  在安全圈子里,素有“白帽”、“黑帽”一说。
  黑帽子是指那些造成破坏的黑客,而白帽子则是研究安全,但不造成破坏的黑客。白帽子均以建设更安全的互联网为己任。
  我于2008年开始在国内互联网行业中倡导白帽子的理念,并联合了一些主要互联网公司的安全工程师,建立了白帽子社区,旨在交流工作中遇到的各种问题,以及经验心得。
  本书名为《白帽子讲Web安全》,即是站在白帽子的视角,讲述Web安全的方方面面。虽然也剖析攻击原理,但更重要的是如何防范这些问题。同时也希望“白帽子”这一理念,能够更加的广为人知,为中国互联网所接受。
  本书结构
  全书分为4大篇共18章,读者可以通过浏览目录以进一步了解各篇章的内容。在有的章节末尾,还附上了笔者曾经写过的一些博客文章,可以作为延伸阅读以及本书正文的补充。
  第一篇我的安全世界观是全书的纲领。在此篇中先回顾了安全的历史,然后阐述了笔者对安全的看法与态度,并提出了一些思考问题的方式以及做事的方法。理解了本篇,就能明白全书中所涉及的解决方案在抉择时的取舍。
  第二篇客户端脚本安全就当前比较流行的客户端脚本攻击进行了深入阐述。当网站的安全做到一定程度后,黑客可能难以再找到类似注入攻击、脚本执行等高风险的漏洞,从而可能将注意力转移到客户端脚本攻击上。
  吴翰清
  2012年1月于杭州