Cookie安全与CSRF和XSS攻击知识点收集
个人简单理解:
1、XSS最简单的理解就是可以在表单提交的内容上嵌入JS执行代码,然后页面渲染的时候没有过滤时会自动执行这个脚本。
2、CSRF可以理解为当你登录了京东,浏览器上保存了你登录的Cookie,此时你有打开另一个网页,这个网页上有一个IFrame只想你了你的京东后台订单列表的,那么这个IFrame就能正常读取你订单的数据,注意,这个数据实在另一个网页上读取的。
3、Cookie来说,现在的浏览器基本都已经杜绝了JS能正常读取其它站点的Cookie,如果要获取只能在当前网页上嵌入其它代码来获取本站的Cookie。
4、综上所述,其实CSRF离不开Cookie,并不是说要获取Cookie,而是利用浏览器保存已有的Cookie数据来做跳转,而XSS恶意代码执行是辅助CSRF去执行,当然,XSS还有可能有其它用途,比如挖矿等等。现在基本上都不用打开另外一个页面去获取Cookie,结合XSS在本站下自动执行脚本动作,也不用获取Cookie,直接提交时默认就已经带上了本站的全部Cookie信息。所以这个XSS是实际操作CSRF是一个攻击概念。
解决方式简单理解:
1、Cookie上有几个属性能杜绝JS获取本地Cookie,比如:HttpOnly。Secure是只能在SSL下使用。现在的浏览器都已经杜绝了跨站点通过JS获取Cookie的,所以不存在能在B站获取A站的全部Cookie。
2、CSRF的防御可以网页上增加tooken的机制,比如Java框架提供了OWASP-CSRFGuard,再比如使用JWT这些token认证。同样在渲染的HTML内容上增加meta头限制使用IFrame等。
3、XSS的功能可以用简单过滤提交内容来限制。
5、综上所述,其实主要是增加其复杂性,但如果从网络运营商上就已经控制了你的网络入口,那么你请求的任何内容都经过网络运营商时,这些内容都可以被难道,从而伪造出可提交的数据。当然一些通过SSL可以比较有效的防范,但依然还是有办法实现的。所以,这些功能只能做到99%的防范,不能完全杜绝。
Cookie:
https://segmentfault.com/a/1190000004556040
https://www.owasp.org/index.php/HttpOnly
http://www.cnblogs.com/dynasty/archive/2012/01/29/2330913.html
http://xmong.iteye.com/blog/1566102
http://www.freebuf.com/articles/web/42802.html
CSRF:
https://baike.baidu.com/item/CSRF/2735433
https://www.cnblogs.com/hyddd/archive/2009/04/09/1432744.html
https://www.cnblogs.com/shytong/p/5308667.html
http://netsecurity.51cto.com/art/201104/256035.htm
http://blog.csdn.net/stpeace/article/details/53512283
http://www.freebuf.com/articles/web/55965.html(CSRF攻击示例,结合XSS实现)
http://www.freebuf.com/vuls/131691.html
https://www.cnblogs.com/lovesong/p/5233195.html
https://segmentfault.com/q/1010000000713614
https://www.ibm.com/developerworks/cn/web/1102_niugang_csrf/
https://www.zhihu.com/question/39011147
http://blog.csdn.net/xeseo/article/details/9467099(Java OWASP-CSRFGuard框架)
https://www.owasp.org/index.php/Category:OWASP_CSRFGuard_Project(Java OWASP-CSRFGuard框架)
http://xmong.iteye.com/blog/1564261
XSS:
http://xmong.iteye.com/blog/1565910
https://baike.baidu.com/item/XSS/917356
http://blog.csdn.net/ghsau/article/details/17027893
http://www.freebuf.com/articles/web/40520.html
https://www.cnblogs.com/TankXiao/archive/2012/03/21/2337194.html
https://www.zhihu.com/question/24918141
https://www.cnblogs.com/dsky/archive/2012/04/06/2434768.html
http://www.freebuf.com/articles/web/42727.html
http://www.freebuf.com/sectool/42722.html
http://bbs.51cto.com/tag-XSS.html
http://www.hekaiyu.cn/xss/272.html
https://www.cnblogs.com/xiaozi/p/5588099.html
Cookie安全与CSRF和XSS攻击知识点收集的更多相关文章
- 整理关于web项目如何防止CSRF和XSS攻击的方法
1 了解CSRF的定义 CSRF(Cross-site request forgery)跨站请求伪造,也被称为"One Click Attack"或者Session Riding, ...
- CSRF与XSS攻击的原理与防范
CSRF 1.概念与原理 CSRF,跨站请求伪造,攻击方伪装用户身份发送请求从而窃取信息或者破坏系统.例如: 用户访问A网站登陆并生成了cookie,再访问B网站,如果A网站存在CSRF漏洞,此时B网 ...
- 基于CSRF的XSS攻击
有些XSS不好利用啊,比如有些后台的XSS漏洞,你进不了别人的后台,怎么能 利用他的XSS漏洞呢?进得了别人的后台,还利用这个XSS漏洞干什么?其实这个时候可以种个后门(如果那是个持久型的XSS,这是 ...
- XSS攻击 && CSRF攻击 基础理解
一个网站,不管多么的帅气,多么的风骚,如果你不安全,那始终都是一个弟弟啊~ 今天又看了下XSS和CSRF攻击的文章,我也想发点什么普及下大家的安全意识,毕竟作为一名拥有伟大梦想的程序员,基本的安全意识 ...
- 前端XSS攻击和防御
xss跨站脚本攻击(Cross Site Scripting),是一种经常出现在web应用中的计算机安全漏洞,指攻击者在网页中嵌入客户端脚本(例如JavaScript), 当用户浏览此网页时,脚本就会 ...
- Asp.net防御XSS攻击组件库
一.AntiXss 翻看mvc4高级编程,偶看到作者强烈推荐使用AntiXss防御XSS攻击,收集资料看下. 目前类库已融入到.netframework中,类库主页不再更新. 使用方法:使用Nuget ...
- XSS攻击&SQL注入攻击&CSRF攻击?
- XSS(Cross Site Script,跨站脚本攻击)是向网页中注入恶意脚本在用户浏览网页时在用户浏览器中执行恶意脚本的攻击方式.跨站脚本攻击分有两种形式:反射型攻击(诱使用户点击一个嵌入恶意 ...
- xss攻击和csrf攻击的定义及区别
1.CSRF的基本概念.缩写.全称 CSRF(Cross-site request forgery):跨站请求伪造. PS:中文名一定要记住.英文全称,如果记不住也拉倒. 2.CSRF的攻击原理 用户 ...
- XSS攻击 CSRF攻击
XSS攻击: 跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆, 故将跨站脚本攻击缩写为XSS.恶意攻击者 ...
随机推荐
- Linux下的硬件驱动——USB设备(转载)
usb_bulk_msg函数 当对usb设备进行一次读或者写时,usb_bulk_msg 函数是非常有用的; 然而, 当你需要连续地对设备进行读/写时,建议你建立一个自己的urbs,同时将urbs 提 ...
- Git for Windows 工具的使用(一)
如果你还不知道什么是Git,只知道GitHub,但是还不会用,我想这个教程会帮助你. 前言 鉴于网上目前的教材都太落后,GitHub for Windows已经更新了多个版本,好多界面都发生了变化,所 ...
- svn 命令管理
有时候测试环境会让更新到指定版本,用以验证问题或者其他原因 具体方法有两种: 方法1: svn merge回滚 1) 先 svn up,保证更新到最新的版本,如2106: 2) 然后用 svn log ...
- nginx的常用负载均衡算法,分别是
随机分配,hash一致性分配,最小连接数分配,主备分配 随机,轮训,一致性哈希,主备,https://blog.csdn.net/liu88010988/article/details/5154741 ...
- 04_ThreadLocal整合事务操作
文章导读: 本文主要讲解了如何在没有框架情况下如何解决Dao的事务问题, 重点理解Connection存放到WeakReference中为什么垃圾回收的时候Connection不回收 视频与源码下载: ...
- MongoDB 3.6 安装详解
在ubuntu和多数linux发行版的包安装源中MongoDB默认的版本是2.4,但2.4所使用的存储引擎不支持collecitons级别的锁,只支持database级别的,所以在开发中2.4版本的m ...
- C++程序在Windows平台上各种定位内存泄漏的方法,并对比了它们的优缺点
一.前言 在Linux平台上有valgrind可以非常方便的帮助我们定位内存泄漏,因为Linux在开发领域的使用场景大多是跑服务器,再加上它的开源属性,相对而言,处理问题容易形成“统一”的标准.而在W ...
- HLG2179 组合(dfs水水更健康)
组合 Time Limit: 1000 MS Memory Limit: 32768 K Total Submit: 57(38 users) Total Accepted: 43(36 users) ...
- PHP curl 封装 GET及POST方法很不错的
<?php function curl_get($url, array $params = array(), $timeout = 5) { $ch = curl_init(); curl_se ...
- Rust 内存管理
Rust 内存管理 Rust 与其他编程语言相比,最大的亮点就是引入了一套在编译期间,通过静态分析的方式,确定所有对象的作用域与生命周期,从而可以精确的在某个对象不再被使用时,将其销毁,并且不引入任何 ...