SlideShare a Scribd company logo
1 of 41
Web安全 
银翘 
2014-07-07
主要内容 
• 关于安全 
• 前端安全 
• 安全规范
关于安全
安全三要素 
• CIA 
• 机密性Confidentially 
• 完整性Integrity 
• 可用性Availability
安全评估 
• 资产等级划分 
• 威胁分析 
• 风险分析 
• 确认解决方案(设计安全方案) 
• 能够有效解决问题 
• 用户体验好 
• 高性能 
• 低耦合 
• 易于扩展与升级
威胁分析模型
安全分析模型
安全原则 
• 最小权限原则——时刻牢记 
• 纵深防御原则——更全面、更正确地看待问题 
• 数据与代码分离原则——从漏洞成因上看问题 
• 不可预测性原则——从客服攻击方法的角度看问题
Web安全 
• XSS 
• CSRF 
• JSON hijack 
• SQL注入 
• 任意url跳转 
• 权限类漏洞 
• Flash安全 
• 敏感信息泄露 
• 逻辑类漏洞 
• 任意文件上传 
• 文件包含 
• 命令执行 
• 不安全的传输 
• 暴力破解
Web安全 
• 客户端安全 
• 服务端安全
关于安全 
• 安全问题的本质是信任问题
关于安全
前端安全
前端安全 
• 浏览器安全 
• XSS 
• CSRF 
• HTML 5 安全
前端安全 
• 浏览器安全 
• 同源策略Same Origin Policy 
• 浏览器沙箱:多进程 
• 恶意网址拦截:基于黑名单
同源策略
同源策略 
• 源继承 
• 来自about:blank,javascript:和data:URLs中的内容,继承了将 
其载入的文档所指定的源 
• IE特例 
• 授信范围 
• 端口 
• 变更源 
• 可设置document.domain 的值为当前域的一个后缀 
• 使用document.domain来安全是让子域访问其父域,需要同时 
将子域和父域的document.domain设置为相同的值。 
• 端口号:document.domain=“company.com:8080”
同源策略的限制 
• DOM 
• Cookie 
• XMLHttpRequest 
• 限制JavaScript的权限,不能读写返回内容
不受同源策略的限制 
• 可以跨域内嵌的资源 
• <script src=“…"></script> 
• <link rel=“stylesheet" type="text/css" href="..."> 
• <img> 
• <video>、<audio> 
• <object>, <embed> 和<applet> 
• @font-face 
• <frame> 和<iframe>——可X-Frame-Options消息头阻止 
• 第三方插件:Flash 、Java Applet、Silverlight、Google Gears
前端安全 
• XSS——ex:1_input.php 
• 反射型XSS:把用户输入反射给浏览器 
• 存储型XSS:把用户输入存储在服务端 
• ——持久型 
• 基于DOM的XSS:修改页面DOM节点 
• ex:2_dom_xss.html
XSS 
• XSS Payload 
• 盗取Cookie 
• 构造GET、POST 
• http://blog.baidu.com/manage/entry.do?m=delete?i 
d=15672313 
• XSS 钓鱼——画出虚假登陆框盗取密码 
• XSS Worm
XSS 
• XSS 构造 
• 利用字符编码 
• var redirectUrl = “”;alert(/xss/);”; 
• 利用注释绕过长度限制 
• location.hash 
• <base>标签 
• window.name
XSS防御 
• Cookie HttpOnly 
• 输入过滤检查:XSS Filter 
• 输出编码检查: 
• HTMLEncode: escape、htmlentities()、 
htmlspecialchars() 
• JavaScriptEncode: 变量输出必须在引号中 
• 只需一种编码 
• 避免客户端的脚本对DOM重写、重定向等其他敏感操作
XSS防御 
• 避免如下代码: 
• window.setTimeout系列 
• window.location系列 
• document.write()系列 
• document.create..系列 
• document.location系列 
• document.open(…) 
• 标签闭合
DOM Based XSS 
• input 
• window.location/href/hash 
• window.name 
• document.referer 
• document.cookie 
• localstorage 
• XMLHttpRequest
前端安全 
• CSRF
CSRF 
• Cross-site Request Forgery 
• XSRF/CSRF
CSRF 
• 依靠用户标识危害网站 
• 利用网站对用户标识的信任 
• 欺骗用户的浏览器发送HTTP请求给目标站点 
• 另外可以通过IMG标签会触发一个GET请求,可以 
利用它来实现CSRF攻击
CSRF 
• 需登录 
• Form 
• AJAX
CSRF防御 
• 将持久化的授权方法(例如cookie或者HTTP授权 
)切换为瞬时的授权方法 
• 时间戳 
• 验证码 
• token
前端安全 
• HTML 5 安全
HTML 5 安全 
• video/audio 
• <video src=“http://xxx/file/xxxx.ogg” onloadedmetadata=“alert(document.cookie)” 
tabindex=“0”></video> 
• iframe sandbox 
• <iframe sandbox=“allow-same-origin allow-forms allow-scripts allow-top-navigation” 
src=“xxx”></iframe> 
• noreferer 不发送referer 
• <a href=“xxx” ref=“noreferer”>test</a> 
• canvas破解验证码 
• postMessage跨窗口传递消息 
• 验证domain,url等
安全规范
JavaScript安全规范 
• 禁止使用外部引用的js,外链应当完全使用a.tbcdn.cn上的资源文 
件 
• 慎用eval,setTimeout,setInterval和从不可信站点获取的字符串操 
作的函数 
• cookies操作一定要征询后端工程师的意见,避免撑破cookies的大 
小限制 
• 前端代码禁止获取referer,所有referer的操作由后端工程师处理 
• 禁止发送页面相关信息到第三方站点 
• 所有数据必须经过服务端的验证,js代码需要经过jslint的测试
安全规范 
• 页面级别的HTML规范 
• 标签完整 
• 代码级别的规范 
• 接口规范、coding规范 
• 代码review
参考 
• 《白帽子讲web安全》 
• 《Web前端黑客技术揭秘》
Thank you
Q&A

More Related Content

Viewers also liked

【反讲 银翘】前端SEO优化
【反讲 银翘】前端SEO优化【反讲 银翘】前端SEO优化
【反讲 银翘】前端SEO优化xiaomogu11
 
Arti seni secara umum
Arti seni secara umumArti seni secara umum
Arti seni secara umumShirozu
 
Sunken Adaptations Game
Sunken Adaptations GameSunken Adaptations Game
Sunken Adaptations Gameaci394
 
Raceway Ecosystems
Raceway EcosystemsRaceway Ecosystems
Raceway Ecosystemsaci394
 
Bab 1 Sejarah dan Manusia
Bab 1 Sejarah dan ManusiaBab 1 Sejarah dan Manusia
Bab 1 Sejarah dan ManusiaShirozu
 
Κάρτες πρώτης γραφής με γράμματα και εικόνες
Κάρτες πρώτης γραφής με γράμματα και εικόνεςΚάρτες πρώτης γραφής με γράμματα και εικόνες
Κάρτες πρώτης γραφής με γράμματα και εικόνεςΕυτέρπη Μυτιληναίου
 
Role of education in entrepreneurship development in india
Role of education in entrepreneurship development in indiaRole of education in entrepreneurship development in india
Role of education in entrepreneurship development in indiaKnowledge Center Computer
 
E commerce in india challenges &amp; opportunities
E commerce in india challenges &amp; opportunitiesE commerce in india challenges &amp; opportunities
E commerce in india challenges &amp; opportunitiesKnowledge Center Computer
 

Viewers also liked (12)

NASPPE PPT
NASPPE PPTNASPPE PPT
NASPPE PPT
 
Keys
KeysKeys
Keys
 
【反讲 银翘】前端SEO优化
【反讲 银翘】前端SEO优化【反讲 银翘】前端SEO优化
【反讲 银翘】前端SEO优化
 
Arti seni secara umum
Arti seni secara umumArti seni secara umum
Arti seni secara umum
 
Sunken Adaptations Game
Sunken Adaptations GameSunken Adaptations Game
Sunken Adaptations Game
 
Raceway Ecosystems
Raceway EcosystemsRaceway Ecosystems
Raceway Ecosystems
 
Bab 1 Sejarah dan Manusia
Bab 1 Sejarah dan ManusiaBab 1 Sejarah dan Manusia
Bab 1 Sejarah dan Manusia
 
Κάρτες πρώτης γραφής με γράμματα και εικόνες
Κάρτες πρώτης γραφής με γράμματα και εικόνεςΚάρτες πρώτης γραφής με γράμματα και εικόνες
Κάρτες πρώτης γραφής με γράμματα και εικόνες
 
Role of education in entrepreneurship development in india
Role of education in entrepreneurship development in indiaRole of education in entrepreneurship development in india
Role of education in entrepreneurship development in india
 
Generalization and specialization
Generalization and specializationGeneralization and specialization
Generalization and specialization
 
Data model and entity relationship
Data model and entity relationshipData model and entity relationship
Data model and entity relationship
 
E commerce in india challenges &amp; opportunities
E commerce in india challenges &amp; opportunitiesE commerce in india challenges &amp; opportunities
E commerce in india challenges &amp; opportunities
 

Similar to 【反讲 银翘】Web安全

Hiiir 資安講座 III 用戶端攻擊與防禦
Hiiir 資安講座 III 用戶端攻擊與防禦Hiiir 資安講座 III 用戶端攻擊與防禦
Hiiir 資安講座 III 用戶端攻擊與防禦Hiiir Lab
 
.NET Security Application/Web Development - Part II
.NET Security Application/Web Development - Part II.NET Security Application/Web Development - Part II
.NET Security Application/Web Development - Part IIChen-Tien Tsai
 
前端MVVM框架安全
前端MVVM框架安全前端MVVM框架安全
前端MVVM框架安全Borg Han
 
基礎網頁程式攻擊檢驗
基礎網頁程式攻擊檢驗基礎網頁程式攻擊檢驗
基礎網頁程式攻擊檢驗Taien Wang
 
使安全成為軟體開發必要部分
使安全成為軟體開發必要部分使安全成為軟體開發必要部分
使安全成為軟體開發必要部分Taien Wang
 
运维安全 抵抗黑客攻击_云络安全沙龙4月上海站主题分享
运维安全 抵抗黑客攻击_云络安全沙龙4月上海站主题分享运维安全 抵抗黑客攻击_云络安全沙龙4月上海站主题分享
运维安全 抵抗黑客攻击_云络安全沙龙4月上海站主题分享ChinaNetCloud
 
網站系統安全及資料保護設計認知
網站系統安全及資料保護設計認知網站系統安全及資料保護設計認知
網站系統安全及資料保護設計認知Justin Lin
 
Cyberoam人員識別管理新世代防毒牆(正式版)
Cyberoam人員識別管理新世代防毒牆(正式版)Cyberoam人員識別管理新世代防毒牆(正式版)
Cyberoam人員識別管理新世代防毒牆(正式版)道成資訊股份有限公司
 
浏览器的跨域安全问题
浏览器的跨域安全问题浏览器的跨域安全问题
浏览器的跨域安全问题raystyle
 
姚彤 从360手机卫士的研发经历看大型移动应用开发
姚彤 从360手机卫士的研发经历看大型移动应用开发姚彤 从360手机卫士的研发经历看大型移动应用开发
姚彤 从360手机卫士的研发经历看大型移动应用开发Trinea Trinea
 
网站离线数据安全分析漫谈 2012cert
网站离线数据安全分析漫谈 2012cert网站离线数据安全分析漫谈 2012cert
网站离线数据安全分析漫谈 2012certph4nt0m
 
1116 Windows server 2008 - 使用 IIS 7.0 建置安全站台
1116 Windows server 2008 - 使用 IIS 7.0 建置安全站台1116 Windows server 2008 - 使用 IIS 7.0 建置安全站台
1116 Windows server 2008 - 使用 IIS 7.0 建置安全站台Timothy Chen
 
雲端分散架構的駭客事件與安全問題
雲端分散架構的駭客事件與安全問題雲端分散架構的駭客事件與安全問題
雲端分散架構的駭客事件與安全問題Alan Lee
 
資訊安全入門
資訊安全入門資訊安全入門
資訊安全入門Tyler Chen
 
基于大数据的Web攻击溯源
基于大数据的Web攻击溯源基于大数据的Web攻击溯源
基于大数据的Web攻击溯源正炎 高
 
6.web 安全架构浅谈
6.web 安全架构浅谈6.web 安全架构浅谈
6.web 安全架构浅谈Hsiao Tim
 
新浪微博平台与安全架构
新浪微博平台与安全架构新浪微博平台与安全架构
新浪微博平台与安全架构n716
 
渗透测试思路技术与方法
渗透测试思路技术与方法渗透测试思路技术与方法
渗透测试思路技术与方法
 
持續交付高品質程式碼 公開版
持續交付高品質程式碼 公開版持續交付高品質程式碼 公開版
持續交付高品質程式碼 公開版Kirk Chen
 
网站前端代码静态检查工具综述
网站前端代码静态检查工具综述网站前端代码静态检查工具综述
网站前端代码静态检查工具综述pop2008
 

Similar to 【反讲 银翘】Web安全 (20)

Hiiir 資安講座 III 用戶端攻擊與防禦
Hiiir 資安講座 III 用戶端攻擊與防禦Hiiir 資安講座 III 用戶端攻擊與防禦
Hiiir 資安講座 III 用戶端攻擊與防禦
 
.NET Security Application/Web Development - Part II
.NET Security Application/Web Development - Part II.NET Security Application/Web Development - Part II
.NET Security Application/Web Development - Part II
 
前端MVVM框架安全
前端MVVM框架安全前端MVVM框架安全
前端MVVM框架安全
 
基礎網頁程式攻擊檢驗
基礎網頁程式攻擊檢驗基礎網頁程式攻擊檢驗
基礎網頁程式攻擊檢驗
 
使安全成為軟體開發必要部分
使安全成為軟體開發必要部分使安全成為軟體開發必要部分
使安全成為軟體開發必要部分
 
运维安全 抵抗黑客攻击_云络安全沙龙4月上海站主题分享
运维安全 抵抗黑客攻击_云络安全沙龙4月上海站主题分享运维安全 抵抗黑客攻击_云络安全沙龙4月上海站主题分享
运维安全 抵抗黑客攻击_云络安全沙龙4月上海站主题分享
 
網站系統安全及資料保護設計認知
網站系統安全及資料保護設計認知網站系統安全及資料保護設計認知
網站系統安全及資料保護設計認知
 
Cyberoam人員識別管理新世代防毒牆(正式版)
Cyberoam人員識別管理新世代防毒牆(正式版)Cyberoam人員識別管理新世代防毒牆(正式版)
Cyberoam人員識別管理新世代防毒牆(正式版)
 
浏览器的跨域安全问题
浏览器的跨域安全问题浏览器的跨域安全问题
浏览器的跨域安全问题
 
姚彤 从360手机卫士的研发经历看大型移动应用开发
姚彤 从360手机卫士的研发经历看大型移动应用开发姚彤 从360手机卫士的研发经历看大型移动应用开发
姚彤 从360手机卫士的研发经历看大型移动应用开发
 
网站离线数据安全分析漫谈 2012cert
网站离线数据安全分析漫谈 2012cert网站离线数据安全分析漫谈 2012cert
网站离线数据安全分析漫谈 2012cert
 
1116 Windows server 2008 - 使用 IIS 7.0 建置安全站台
1116 Windows server 2008 - 使用 IIS 7.0 建置安全站台1116 Windows server 2008 - 使用 IIS 7.0 建置安全站台
1116 Windows server 2008 - 使用 IIS 7.0 建置安全站台
 
雲端分散架構的駭客事件與安全問題
雲端分散架構的駭客事件與安全問題雲端分散架構的駭客事件與安全問題
雲端分散架構的駭客事件與安全問題
 
資訊安全入門
資訊安全入門資訊安全入門
資訊安全入門
 
基于大数据的Web攻击溯源
基于大数据的Web攻击溯源基于大数据的Web攻击溯源
基于大数据的Web攻击溯源
 
6.web 安全架构浅谈
6.web 安全架构浅谈6.web 安全架构浅谈
6.web 安全架构浅谈
 
新浪微博平台与安全架构
新浪微博平台与安全架构新浪微博平台与安全架构
新浪微博平台与安全架构
 
渗透测试思路技术与方法
渗透测试思路技术与方法渗透测试思路技术与方法
渗透测试思路技术与方法
 
持續交付高品質程式碼 公開版
持續交付高品質程式碼 公開版持續交付高品質程式碼 公開版
持續交付高品質程式碼 公開版
 
网站前端代码静态检查工具综述
网站前端代码静态检查工具综述网站前端代码静态检查工具综述
网站前端代码静态检查工具综述
 

【反讲 银翘】Web安全

Editor's Notes

  1. CIA是认识一个安全问题的组成属性。 C:保护数据内容不能泄露 I:保护数据内容是完整的、不被篡改的 A: 保护资源随需而得(DoS denial of service)
  2. 安全评估的4个阶段,层次递进,前后因果。上一阶段决定下一阶段的目标。 划分信任域、信任边界。
  3. Secure By Default最小权限原则:要求系统只授予主体必要的权限,而不要过度授权,这样能有效减少系统、网络、应用、数据库出错的机会。 纵深防御:各个不同层面、不同方面实施安全方案;在正确的地方做正确的事 数据与代码分离: example1 不可预测:有效抵御基于篡改、伪造的攻击;加密算法、随机数算法、哈希算法;用token防御CSRF
  4. CIA是认识一个安全问题的组成属性。 C:保护数据内容不能泄露 I:保护数据内容是完整的、不被篡改的 A: 保护资源随需而得(DoS denial of service)
  5. CIA是认识一个安全问题的组成属性。 C:保护数据内容不能泄露 I:保护数据内容是完整的、不被篡改的 A: 保护资源随需而得(DoS denial of service)
  6. 信任域假设
  7. “源”指的是主机名、协议和端口号的组合;我们可以把一个“源”看作是某个web页面或浏览器所浏览的信息的创建者。 同源策略,简单地说就是要求动态内容(例如,JavaScript或者VBScript)只能阅读与之同源的那些HTTP应答和cookies,而不能阅读来自不同源的内容。 document.domain=“xxx.com”; 参考:https://developer.mozilla.org/zh-CN/docs/Web/Security/Same-origin_policy http://netsecurity.51cto.com/art/200902/111415.htm Chrome多进程包括:浏览器进程、渲染进程、插件进程、扩展进程 IE8:每一个Tab是一个进程
  8. IE特例: 授信范围:在IE中设置受信站点。 端口:IE未将端口号加入到同源策略的组成部分之中,因此 http://company.com:81/index.html 和http://company.com/index.html 属于同源并且不受任何限制。 参考:跨域资源共享(CORS)安全性浅析http://netsecurity.51cto.com/art/201311/419179.htm JSONP跨域的原理解析 http://www.nowamagic.net/librarys/veda/detail/224
  9. <script src=“…”></script>嵌入跨域脚本,语法错误信息只能在同源脚本中捕捉到 Content-Type,内容类型,一般是指网页中存在的Content-Type,用于定义网络文件的类型和网页的编码,决定浏览器将以什么形式、什么编码读取这个文件。 参考:https://developer.mozilla.org/zh-CN/docs/Web/Security/Same-origin_policy
  10. <script src=“…”></script>嵌入跨域脚本,语法错误信息只能在同源脚本中捕捉到 Content-Type,内容类型,一般是指网页中存在的Content-Type,用于定义网络文件的类型和网页的编码,决定浏览器将以什么形式、什么编码读取这个文件。http://tool.oschina.net/commons 参考:https://developer.mozilla.org/zh-CN/docs/Web/Security/Same-origin_policy
  11. XSS攻击成功后,攻击者能够对用户当前浏览的页面植入恶意脚本,通过恶意脚本,控制用户的浏览器。这些恶意脚本称为XSS Payload。
  12. payload有效负载 XSS危害:劫持浏览器 记录用户的信息 冒用用户身份 篡改用户数据
  13. payload有效负载
  14. 跨站请求伪造 XSS利用站点内的信任用户,而CSRF则通过伪装来自受信任用户的请求来利用受信任的网站。
  15. postmessage参考: http://www.ibm.com/developerworks/cn/web/1301_jiangjj_html5message/