《Web前端黑客技术解密》读书笔记(第九、十章)

本文地址://www.greatytc.com/p/ebb1db302ef5

第九章 Web蠕虫

主要分三类:XSS蠕虫CSRF蠕虫Clickjacking蠕虫,还有第四类 文本蠕虫

Web 蠕虫思想

  • 用户参与后被动或主动的传播威胁

XSS 蠕虫

  • 性质:传播性和病毒性
  • 具备以下条件
    • 内容有用户驱动
    • 存在XSS漏洞
    • 被感染用户是登陆状态
    • XSS蠕虫利用的关键功能本身具有内容的传播性

CSRF 蠕虫

与XSS蠕虫基本类似,只不过用的是CSRF,攻击代码放在攻击者页面中,目标网站都包含攻击者的URL

  • 使用服务器端进行跨域优点是:蠕虫代码、逻辑可以很好的隐藏,缺点是在服务器端发起的GET和POST请求无法带上攻击站点的本地Cookie或内存Cookie。CSRF蠕虫只能通过Referer里的唯一值来进行下一步攻击

ClickJacking 蠕虫 ,界面劫持

发动ClickJacking蠕虫攻击,必须满足以下两个条件

  • 在SNS社区中,找到一个可以直接发动HTTP的GET方式提交数据的页面
  • 这个页面可以被iframe标签包含

第十章 关于防御

三个方面防御

  • 浏览器厂商的防御,围绕Web厂商能参与的策略进行
  • Web厂商的防御
  • 用户的防御

浏览器厂商的防御

HTTP响应的X-头部

  • X-Frame-Options

用于防御ClickJacking,有两个值:

  • DENY(禁止被加载任何frame);

  • SAMEORIGIN(仅允许被加载进同域内的frame)

  • X-XSS-Protection

有三个值:

  • 0(表示禁用这个策略);

  • 1(默认,对危险脚本做一些标记和修改,以阻止在浏览器上的熏染执行);

  • 1;mode=block(强制不熏染,在Chrome下直接跳转到空白页,IE下返回一个#符号)

  • X-Content-Security-Policy(即CSP策略,将成为主流)

比如现在的问题,IE下CSS的expression可以执行js,html中的script标签,标签中on事件、标签style属性、标签src/href/action等属性都可以执行js,没有分离,导致很多安全问题,CSP就是解决这些问题

Chrome支持CSP策略的头部是X-WebKit-CSP,而非标准的X-Content-Security-Policy,不过具体策略都一样

CSP语法格式如下:

X-Content-Security-Policy:[指令1] [指令值1] [指令值2];[指令2] [指令值1] [指令值2];....

具体指令参考书本 P339,

主要有指令有:default-srcscript-srcobject-srcimg-srcmedia-srcframe-srcfont-srcconnect-srcstyle-srcreport-uri

指令值有:

(1)、*表示允许所有的来源
(2)、*.foo.com表示来源foo.com的所有子域内容
(3)、https://foo.com表示来源https协议下的foo.com

以下特殊指令值,单引号必须有

(1)、'none'表示空集,即外部资源不被加载
(2)、'self'表示仅同域内的资源可加载
(3)、'unsafe-inline'表示允许内嵌JS/CSS,如<script>内的、javascript:内的、on事件内的、<style>内的等,默认不被允许
(4)、'unsafe-eval'表示允许evalsetTimeoutsetIntervalFunction等可以直接执行字符串的函数
(5)、data指令,允许data:协议

示例一:不允许任何外部资源加载,仅允许内嵌脚本执行

// 响应头如下
X-Content-Security-Policy: default-src 'unsafe-inline' 'self'

示例二:仅允许白名单外部资源加载,不允许内部脚本执行

// 响应头如下
X-Content-Security-Policy: default-src *.foo.com

Web厂商的防御

域分离

将业务放在不同的域下,子域不要设置document.domain相同根域

安全传输,通过HTTPS

安全的Cookie,身份认证相关的cookie严格设置https,并且为HttpOnly标记

优秀的验证码

慎防第三方内容

XSS防御方案

以下地方需要注意,具体参考书本P345

  • 进入HTML标签之间时
  • 进入HTML普通属性值时
  • 进入JAVASCRIPT中时
  • 进入CSS时
  • 进入URL时

CSRF防御方案

  • 检查HTTP Referer字段是否为同域
  • 限制Session Cookie生命周期
  • 使用验证码
  • 使用一次性token

界面操作劫持防御

  • X-Frame-Options防御,通过http响应头来控制,更安全
  • Frame-Busting脚本防御

即通过js的方式防止页面被iframe嵌入

方法一(比较容易攻破):

if(top.location!=self.location){
  top.location = self.location;
}

方法二(更安全):

<style>
  html{display:none;}
</style>
<script>
  if(self==top){
    document.documentElement.style.display = 'block';
  } else {
    top.location = self.location;
  }
</script>
  • 使用token进行防御

用户的防御

附原书购买地址: http://item.jd.com/11181832.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,718评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,683评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,207评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,755评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,862评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,050评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,136评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,882评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,330评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,651评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,789评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,477评论 4 333
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,135评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,864评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,099评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,598评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,697评论 2 351

推荐阅读更多精彩内容