我的WEB安全之路
Posted Jerry_C_137
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我的WEB安全之路相关的知识,希望对你有一定的参考价值。
Web黑客技术揭秘-读书笔记
第五章 前端黑客之界面操作劫持
Session和Cookie的相关引用了博主程序员cxuan的一篇博客
【看完这篇 Session、Cookie、Token,和面试官扯皮就没问题了】
原文链接:https://blog.csdn.net/qq_36894974/article/details/105322171
Session 是什么
客户端请求服务端,服务端会为这次请求开辟一块内存空间,这个对象便是 Session 对象,存储结构为 ConcurrentHashMap。Session 弥补了 HTTP 无状态特性,服务器可以利用 Session 存储客户端在同一个会话期间的一些操作记录。
Cookie是什么
HTTP 协议中的 Cookie 包括 Web Cookie 和浏览器 Cookie,它是服务器发送到 Web 浏览器的一小块数据。服务器发送到浏览器的 Cookie,浏览器会进行存储,并与下一个请求一起发送到服务器。通常,它用于判断两个请求是否来自于同一个浏览器,例如用户保持登录状态。
一、Cookie安全
1.子域名Cookie机制
Cookie的重要字段中,其中的domain字段,如果不指定domain的值,默认就是本域。
例子:
a.foo.com为foo.com的子域名,那么a.foo.com域设置Cookie时,可以指定domain
父域名,将其设置为foo.com。
那么这样带来的好处就是,可以在不同的子域共享Cookie,另外,这个机制不允许设置 Cookie的domain为下一级子域或其他外域。
2.路径Cookie机制
设置Cookie时,如果不指定path的值,默认就是目标页面的路径。
(通过设置path不能防止重要的Cookie被盗取)。
3.HttpOnly Cookie机制
HttpOnly是指在Http层面上传输的Cookie,当设置了HttpOnly标志后,客户端脚本就无法读写该Cookie,这样能有效防御XSS攻击获取Cookie。
但是,在Apache HTTP Server2.2x多个版本没有严格限制HTTP请求头信息,HTTP请求头信息超过LimitRequestFieldSize长度时,服务器返回400错误,并在返回信息中将
出错的请求头内容输出(包含请求头里的HttpOnly Cookie),攻击者可以利用这个缺陷获取HttpOnly Cookie。
4.Secure Cookie机制
Secure Cookie机制指的是设置了Secure标志的Cookie仅在HTTPS层面上安全传输,如果请求是HTTP的,就不会带上这个Cookie,这样能降低重要的Cookie被中间人截获
的风险。
不过,Secure Cookie对于客户端脚本来说是可以读写的。可读写意味着Secure Cookie能被盗取,可写意味着能被篡改。
5.本地Cookie与内存Cookie
内存Cookie:没有设置过期时间,随着浏览器的关闭而从内存中消失;
本地Cookie:设置了过期时间是未来的某个时间点,那么那样的Cookie就会以文本形式保存在操作系统本地,待过期时间到了才会消失。
采用本地Cookie的方式让用户在未来1个月、半年、永久等时间段内不需要进行登录操作。
并不是说内存Cookie就更安全,实际上,攻击者可以给内存Cookie加一个过期时间,使其变为本地Cookie。
6.Cookie的P3P性质
HTTP响应头的P3P(Platform for Privacy Preferences Project)字段是W3C公布的一项隐私保护推荐标准。该字段用于标识是否允许目标网站的Cookie被另一个域通过加
载目标网站而设置或发送,仅IE执行了该策略。
将情形分为两类,分别是设置与发送:
1.设置Cookie
在IE下默认都是不允许第三方域设置的,除非foo域在响应的时候带上P3P字段,这样设置后,被加载的目标域的Cookie就可以被正常设置了。
2.发送Cookie
如果是内存Cookie,无所谓是否有P3P属性,就可以正常发送;
如果是本地Cookie,则这个Cookie必须拥有P3P属性;
二、界面操作劫持概述
界面操作劫持攻击是一种基于视觉欺骗的Web会话劫持攻击,它通过在网页的可见输入控件上覆盖一个不可见的框 iframe,使得用户误以为在操作可见控件,而实际上用户的操
做行为被其不可见的框所劫持,执行不可见框的恶意劫持代码,从而完成在用户不知情的情况下窃取敏感信息、篡改数据等攻击。分为三类
1.点击劫持Clickjacking
2.拖放劫持Drag&Dropjacking
3.触屏劫持Tapjacking
三、界面操作劫持技术原理分析
1.透明层+iframe
2.点击劫持的技术实现
3.拖放劫持技术的实现
4.触屏劫持技术的实现
四、总结
总结:CSRF的基本概念和分类
内容来源自钟晨鸣,徐少培《前端黑客技术揭秘》
以上是关于我的WEB安全之路的主要内容,如果未能解决你的问题,请参考以下文章