TA的每日心情 | 开心 10 小时前 |
---|
签到天数: 2684 天 连续签到: 53 天 [LV.Master]伴坛终老
- 注册时间
- 2012-9-3
- 最后登录
- 2024-11-29
管理员
2012年到2024年,感谢各位会员朋友的支持!
|
web前端黑客技术揭秘,黑客技术揭秘,pdf
基本信息
作者:钟晨鸣 徐少培
丛书名:安全技术大系
出版社:电子工业出版社
ISBN:9787121192036
上架时间:2013-1-20
出版日期:2013 年1月
开本:16开
页码:361
版次:1-1
在We[1-2]b技术飞速演变、电子商务蓬勃发展的今天,企业开发的很多新应用程序都是Web应用程序,而且Web服务也被越来越频繁地用于集成Web应用程序或与其进行交互,这些趋势带来的问题就是web应用系统的安全风险达到了前所未有的高度,在安全缺陷被利用时可能会出现灾难性后果。
SQL注入+上传Webshell这样的攻击成为了业界主流,几乎对动态Web服务无往不利。大中型企业和机构纷纷增加了80端口的检查和封堵。看到一些SQL注入攻击被挡住的日志,他们脸上露出了满意的微笑……
可是,厉害的Web攻击方式,就只有一个SQL注入吗?
如果把SQL注入算做Web后端攻击方式的话。那XSS和CSRF、ClickJacking等前端攻击方式的运用则更为复杂。
在这本书中,作者向大家阐述了“草木竹石,均可为剑”的道理。在他们的眼中URL、HTML、JavaScript、CSS、ActionScript……几乎每个地方都可以暗藏杀机。
内容提要
Web 前端的黑客攻防技术是一门非常新颖且有趣的黑客技术,主要包含Web 前端安全的跨站脚本(XSS)、跨站请求伪造(CSRF)、界面操作劫持这三大类,涉及的知识点涵盖信任与信任关系、Cookie安全、Flash 安全、DOM 渲染、字符集、跨域、原生态攻击、高级钓鱼、蠕虫思想等,这些都是研究前端安全的人必备的知识点。本书作者深入剖析了许多经典的攻防技巧,并给出了许多独到的安全见解。
本书适合前端工程师阅读,同时也适合对 Web 前端各类安全问题或黑客攻防过程充满好奇的读者阅读,书中的内容可以让读者重新认识到Web 的危险,并知道该如何去保护自己以免受黑客的攻击。
前言
安全之路任重道远,前端安全是众多安全中的一个分支,互联网上各种网站让人眼花,千奇百怪的业务需求、安全问题,真要做好安全架构又谈何容易呢?我们知道,这次我们仅仅为互联网安全的进化奠定了一块砖头而已。
本书点透了很多关键的点,每个点的内容不一定覆盖完全,也不一定用了足够的文字进行描述,往往适可而止,但这些点却是Web前端安全基石的重要组成,如:信任与信任关系、Cookie安全、Flash安全、DOM渲染、字符集、跨域、原生态攻击、高级钓鱼、蠕虫思想等。
我们试图尽最大的努力使本书的内容涵盖完全,但发现这是不可能的事。闻道有先后,术业有专攻,我们写出了我们擅长的点,还有很多点是我们不敢去写的,时间与精力是我们最大的障碍。另外,我们认为,本书的知识点足以打开Web前端黑客的大门,有了这些沉淀后,大家完全可以持续跟进国内外优秀的技术文章与案例进行内功修炼,并在各种实战中不断加强。
网站安全是一个大问题,安全关注点也在逐渐转移,从刚开始的服务端安全,如缓冲区溢出、CGI解析缺陷、纯Web层面的SQL注入等,到客户端安全,如XSS跨站脚本、CSRF跨站请求伪造等。大家的意识与防御层面也随着Web安全的发展进化着。对网站来说,重视某些安全风险最好的办法就是将该风险最大化,这也是本书的目的,最终是让Web更好、更安全。
一些约定
本书说的前端都指Web前端,也可以说是客户端,或者浏览器端。
本书涉及的前端安全舞台基本上都是浏览器。浏览器更新换代的速度非常快,也许在你看到本书时,一些技巧已经不适用了。没关系,因为思想更重要,我们在撰写本书时默认使用的主流浏览器的最新版本是:Firefox 15、Chrome 21、IE 9。
前端黑客的内容
前端安全主要有三类:XSS、CSRF、界面操作劫持。从XSS到CSRF,再到界面操作劫持,越往后,社工(社会工程学的简称)成分越浓厚。我们会发现这个Web世界越不可信,攻击也似乎变得越无聊,实施这类攻击的代价也越来越大。界面操作劫持需要很好的美工基础,因此,你让一个黑客去搞美工是不太现实的,因为现在有很多好的方式可以黑下目标。
所以,本书关于界面操作劫持的内容更多的是具有研究性质的,而很少用于真正的攻击,即使我们已经完成了一些很有意义的攻击事件(比如,针对Google Reader的蠕虫事件),但都是善意的,在真正的黑客攻击活动中,这样做的可能性很小。
有一点我们都应该明白,当前还不具备“黑客攻击活动”价值的风险,以后可能会具备,回头看看整个安全发展史就可以发现这个规律。至少XSS与CSRF已经具备这样的价值,而且发展得如火如荼。这也是本书的重点内容。
为什么进行前端黑客研究
Web从Web 1.0到Web 2.0,一个用户参与度与黏性都很高的Web时代,且Web 2.0又细分出许多不同的领域(微博、旅游、交友、餐饮、医疗、购物等),各种海量的隐私数据可以在这些Web 2.0网站中找到。前端黑客是随着这个趋势发展起来的,通过前端黑客技巧,往往很容易就掌控了目标用户的隐私数据。
另外,攻击时获取各种隐私数据或者破坏数据,其实很多时候都可以在前端攻击中完成,而且目前看来由于安全意识的问题,很多安全焦点都还在服务端,比如,OS(操作系统)加固得如何、数据库加固得如何、SQL查询是否参数化了、是不是存在弱口令等。那么,前端安全就被忽略了,在某些场景中,前端漏洞,比如一个XSS漏洞的价值就很大,而且前端攻击同样也可以大规模地进行,造成很大的影响。
我们在很多次的实战中运用了前端黑客技术,这是一种具备实战意义的技术,非常值得大家深入了解。
前端黑客技术的研究是一种趋势,它已经成形了,这就是我们为什么要介绍前端黑客的原因,也是本书诞生的最根本原因。
目录
第1章 Web安全的关键点 1
1.1 数据与指令 1
1.2 浏览器的同源策略 4
1.3 信任与信任关系 7
1.4 社会工程学的作用 9
1.5 攻防不单一 9
1.6 场景很重要 10
1.7 小结 11
第2章 前端基础 12
2.1 W3C的世界法则 12
2.2 URL 14
2.3 HTTP协议 15
2.4 松散的HTML世界 19
2.4.1 DOM树 20
2.4.2 iframe内嵌出一个开放的世界 21
2.4.3 HTML内嵌脚本执行 22
2.5 跨站之魂——JavaScript 23
2.5.1 DOM树操作 23
2.5.2 AJAX风险 25
2.5.3 模拟用户发起浏览器请求 30
2.5.4 Cookie安全 33
2.5.5 本地存储风险 43
2.5.6 E4X带来的混乱世界 48
2.5.7 JavaScript函数劫持 49
2.6 一个伪装出来的世界——CSS 51
2.6.1 CSS容错性 51
2.6.2 样式伪装 52
2.6.3 CSS伪类 52
2.6.4 CSS3的属性选择符 53
2.7 另一个幽灵——ActionScript 55
2.7.1 Flash安全沙箱 55
2.7.2 HTML嵌入Flash的安全相关配置 59
2.7.3 跨站Flash 61
2.7.4 参数传递 64
2.7.5 Flash里的内嵌HTML 65
2.7.6 与JavaScript通信 67
2.7.7 网络通信 71
2.7.8 其他安全问题 71
第3章 前端黑客之XSS 72
3.1 XSS概述 73
3.1.1 “跨站脚本”重要的是脚本 73
3.1.2 一个小例子 74
3.2 XSS类型 76
3.2.1 反射型XSS 76
3.2.2 存储型XSS 77
3.2.3 DOM XSS 78
3.3 哪里可以出现XSS攻击 80
3.4 有何危害 81
第4章 前端黑客之CSRF 83
4.1 CSRF概述 84
4.1.1 跨站点的请求 84
4.1.2 请求是伪造的 84
4.1.3 一个场景 84
4.2 CSRF类型 89
4.2.1 HTML CSRF攻击 89
4.2.2 JSON HiJacking攻击 90
4.2.3 Flash CSRF攻击 94
4.3 有何危害 96
第5章 前端黑客之界面操作劫持 97
5.1 界面操作劫持概述 97
5.1.1 点击劫持(Clickjacking) 98
5.1.2 拖放劫持(Drag&Dropjacking) 98
5.1.3 触屏劫持(Tapjacking) 99
5.2 界面操作劫持技术原理分析 99
5.2.1 透明层+iframe 99
5.2.2 点击劫持技术的实现 100
5.2.3 拖放劫持技术的实现 101
5.2.4 触屏劫持技术的实现 103
5.3 界面操作劫持实例 106
5.3.1 点击劫持实例 106
5.3.2 拖放劫持实例 111
5.3.3 触屏劫持实例 119
5.4 有何危害 121
第6章 漏洞挖掘 123
6.1 普通XSS漏洞自动化挖掘思路 124
6.1.1 URL上的玄机 125
6.1.2 HTML中的玄机 127
6.1.3 请求中的玄机 134
6.1.4 关于存储型XSS挖掘 135
6.2 神奇的DOM渲染 135
6.2.1 HTML与JavaScript自解码机制 136
6.2.2 具备HtmlEncode功能的标签 140
6.2.3 URL编码差异 142
6.2.4 DOM修正式渲染 145
6.2.5 一种DOM fuzzing技巧 146
6.3 DOM XSS挖掘 150
6.3.1 静态方法 150
6.3.2 动态方法 151
6.4 Flash XSS挖掘 153
6.4.1 XSF挖掘思路 153
6.4.2 Google Flash XSS挖掘 156
6.5 字符集缺陷导致的XSS 159
6.5.1 宽字节编码带来的安全问题 160
6.5.2 UTF-7问题 161
6.5.3 浏览器处理字符集编码
BUG带来的安全问题 165
6.6 绕过浏览器XSS Filter 165
6.6.1 响应头CRLF注入绕过 165
6.6.2 针对同域的白名单 166
6.6.3 场景依赖性高的绕过 167
6.7 混淆的代码 169
6.7.1 浏览器的进制常识 169
6.7.2 浏览器的编码常识 175
6.7.3 HTML中的代码注入技巧 177
6.7.4 CSS中的代码注入技巧 190
6.7.5 JavaScript中的代码注入技巧 196
6.7.6 突破URL过滤 201
6.7.7 更多经典的混淆CheckList 202
6.8 其他案例分享——Gmail Cookie XSS 204
第7章 漏洞利用 206
7.1 渗透前的准备 206
7.2 偷取隐私数据 208
7.2.1 XSS探针:xssprobe 208
7.2.2 Referer惹的祸 214
7.2.3 浏览器记住的明文密码 216
7.2.4 键盘记录器 219
7.2.5 偷取黑客隐私的一个小技巧 222
7.3 内网渗透技术 223
7.3.1 获取内网IP 223
7.3.2 获取内网IP端口 224
7.3.3 获取内网主机存活状态 225
7.3.4 开启路由器的远程访问能力 226
7.3.5 内网脆弱的Web应用控制 227
7.4 基于CSRF的攻击技术 228
7.5 浏览器劫持技术 230
7.6 一些跨域操作技术 232
7.6.1 IE res:协议跨域 232
7.6.2 CSS String Injection跨域 233
7.6.3 浏览器特权区域风险 235
7.6.4 浏览器扩展风险 237
7.6.5 跨子域:document.domain技巧 240
7.6.6 更多经典的跨域索引 245
7.7 XSS Proxy技术 246
7.7.1 浏览器<script>请求 247
7.7.2 浏览器跨域AJAX请求 248
7.7.3 服务端WebSocket推送指令 249
7.7.4 postMessage方式推送指令 251
7.8 真实案例剖析 254
7.8.1 高级钓鱼攻击之百度空间登录DIV层钓鱼 254
7.8.2 高级钓鱼攻击之Gmail正常服务钓鱼 261
7.8.3 人人网跨子域盗取MSN号 265
7.8.4 跨站获取更高权限 267
7.8.5 大规模XSS攻击思想 275
7.9 关于XSS利用框架 276
第8章 HTML5安全 277
8.1 新标签和新属性绕过黑名单策略 278
8.1.1 跨站中的黑名单策略 278
8.1.2 新元素突破黑名单策略 280
8.2 History API中的新方法 282
8.2.1 pushState()和replaceState() 282
8.2.2 短地址+History新方法=完美隐藏URL恶意代码 283
8.2.3 伪造历史记录 284
8.3 HTML5下的僵尸网络 285
8.3.1 Web Worker的使用 286
8.3.2 CORS向任意网站发送跨域请求 287
8.3.3 一个HTML5僵尸网络实例 287
8.4 地理定位暴露你的位置 290
8.4.1 隐私保护机制 290
8.4.2 通过XSS盗取地理位置 292
第9章 Web蠕虫 293
9.1 Web蠕虫思想 294
9.2 XSS蠕虫 295
9.2.1 原理+一个故事 295
9.2.2 危害性 297
9.2.3 SNS社区XSS蠕虫 300
9.2.4 简约且原生态的蠕虫 304
9.2.5 蠕虫需要追求原生态 305
9.3 CSRF蠕虫 307
9.3.1 关于原理和危害性 307
9.3.2 译言CSRF蠕虫 308
9.3.3 饭否CSRF蠕虫——邪恶的Flash游戏 314
9.3.4 CSRF蠕虫存在的可能性分析 320
9.4 ClickJacking蠕虫 324
9.4.1 ClickJacking蠕虫的由来 325
9.4.2 ClickJacking蠕虫技术原理分析 325
9.4.3 Facebook的LikeJacking蠕虫 327
9.4.4 GoogleReader的ShareJacking蠕虫 327
9.4.5 ClickJacking蠕虫爆发的可能性 335
第10章 关于防御 336
10.1 浏览器厂商的防御 336
10.1.1 HTTP响应的X-头部 337
10.1.2 迟到的CSP策略 338
10.2 Web厂商的防御 341
10.2.1 域分离 341
10.2.2 安全传输 342
10.2.3 安全的Cookie 343
10.2.4 优秀的验证码 343
10.2.5 慎防第三方内容 344
10.2.6 XSS防御方案 345
10.2.7 CSRF防御方案 348
10.2.8 界面操作劫持防御 353
10.3 用户的防御 357
10.4 邪恶的SNS社区 359
web前端黑客技术揭秘
web前端黑客技术揭秘
web前端黑客技术揭秘
web前端黑客技术揭秘
web前端黑客技术揭秘PDF文档下载地址:
|
|