Cookie-SameSite属性详解(CSRF攻击、同站和跨站;跨子域)

一、CSRF攻击

我们知道cookie作为标识用户身份的存在,可以帮助我们不需要输入账号密码进行登录就可以完成认证执行某些操作;假设我们在访问第三方网站时,网站页面存在一条ajax请求是Post请求地址为:执行银行账户的转账操作,由于你的浏览器内包含cookie,那么这条请求就会携带cookie然后请求就会被执行;

二、同站和跨站

这边对于同站的理解非常重要:
Cookie中的同站:只要两个url地址的有效顶级域名+二级域名是相同的就算是同站,例如www.a.smile.com 和 www.b.smile.com 是同站,而www.taobao.com 和 www.baidu.com非同站;a.github.io 和 b.github.io 是跨站(原因:.com是一级域名,github.io是二级域名)。

三、Samesite存在的作用

既然我们知道了同站和跨站的区别,SameSite存在的意义就是去防止CSRF攻击,我们去思考一下,如果是你会怎么设计,再联想一下刚才的同站,我们肯定想只要在我的站内都是允许你携带cookie,这样才能保证更好的用户体验,主要我注册了二级域名,表明这个是我的站,在我的站内自然允许cookie携带,之前我也想过会不会有有人恶意注册二级域名,当然,这个二级域名不是想注册就能注册的;

四、Samesite三个属性

之前看的一篇博客写的是只有当前网页和url和请求目标一致,才会带上cookie,经过测试发现跨子域也是没有问题的,即当前网址为backend.smile.com请求网址为front.smile.com是没有问题的,是允许的,因为是同站;

五、测试

5.1、一开始浏览器中没有cookie;

//判断浏览器中有误cookie
@GetMapping("/index")
    public Obje
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Cross-Site Request Forgery (CSRF) Attack Lab是一个网络安全实验,旨在测试和演示请求伪造攻击CSRF)的原理和实践。实验中通过创建恶意网页和利用漏洞,攻击者可以伪造用户身份进行各种未经授权的操作,如修改个人资料、发送消息等。 在实验中,针对Elgg网络社交平台进行了CSRF攻击的演示。在Task 1中,可以观察到攻击者发送了HTTP请求并窃取了Alice的个人资料。在Task 4中,实验也提供了一种对抗CSRF攻击的方法。 对于问题中的具体内容,如果Bob想要对访问他恶意网页的任何人进行攻击,他无法直接通过恶意网页修改受害者的Elgg个人资料。这是因为要发送修改请求,需要知道受害者的id号,而在这种情况下,Bob并不知道访问者的id号。如果要攻击其他用户,Bob需要先获取其id并修改攻击的请求报文。 在CSRF攻击实验中,通过网络抓包可以看到攻击者的网发送了添加好友的请求报文给Elgg服务器,使得攻击者成功添加了Boby为好友。这是通过伪造Alice的身份来实现的。 总结起来,Cross-Site Request Forgery (CSRF) Attack Lab是一个网络安全实验,通过演示和测试请求伪造攻击的原理和实践,并提供了对抗CSRF攻击的方法。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Cross-Site Request Forgery (CSRF) Attack Lab网安实验](https://blog.csdn.net/l4kjih3gfe2dcba1/article/details/118705162)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值