把所有 POST 请求都换成 PUT,不返回允许非同源请求的响应头,是否就不需要考虑 CORS 攻击了?

2024-07-17 08:41:23 +08:00
 drymonfidelia
5778 次点击
所在节点    信息安全
42 条回复
ZeekChatCom
2024-07-17 10:20:07 +08:00
csrf ?那怎么又有简单请求和非简单请求呢?楼主你在说什么?
justdoit123
2024-07-17 10:26:05 +08:00
我认为是可以的。如果请求允许 PUT ,那么就无法在浏览器端构建出 CSRF 攻击。

但是,这种防御方式有点自损八百的感觉。

另外,我心中也有一个疑惑,为什么有的人要把 CSRF token 存放到 session 里?我感觉这种绑定的意义不大,还增加服务的负担。
loveuer
2024-07-17 10:59:30 +08:00
那实际上 http 是支持 自定义 method 的,不是更那个啥一点?
FrankFang128
2024-07-17 11:06:20 +08:00
你说的是跨站点请求伪造,不是跨域哈。
darksword21
2024-07-17 11:38:39 +08:00
我现在脑子很乱,你们能不能不要再发 cscs 的帖子了
darksword21
2024-07-17 11:40:59 +08:00
zeromake
2024-07-17 13:11:39 +08:00
CSRF 不是用来偷 cookies 请求 GET 的吗,不是应该拒绝所有 GET 请求?但是现在 http GET 请求有很多特性( cdn 缓存,浏览器缓存),不是那么好替代的……
wonderfulcxm
2024-07-17 13:16:27 +08:00
这个帖子看得好喜感😅
kwater
2024-07-17 13:19:03 +08:00
CORS 是君子协定,只服务理想环境。
真实世界的攻击不受限 CORS ,可能要真正研究的方向是 CSRF 、重放攻击这些
Terry05
2024-07-17 13:24:06 +08:00
这么多打错。。。
deplives
2024-07-17 13:27:37 +08:00
看标题看的我一愣一愣的,愣是没想通跨域能发起啥攻击。
看楼中评论竟然还一本正经的讨论起来了,后来发现 你说的其实是 CSRF
连 CSRF(跨站伪造请求) 和 CORS (跨域) 都分不清,就别发起讨论了。
kkk9
2024-07-17 13:47:03 +08:00
@fiveStarLaoliang #18 @shadowyue #19 像极了甲方乙方开对接会议😆😇😇😇
hahiru
2024-07-17 15:29:00 +08:00
朕决定了,荣登大宝之后一定要把该死的首字母缩写都砍了。
AV1
2024-07-17 16:16:41 +08:00
其实 HTTP 方法不一定是 GET 、POST 、PUT 、HEAD 、OPTIONS 这些,你完全可以凭喜好自定义一个偏门的单词作为请求方法。🤣

https://imgur.com/66sccjK
lovelylain
2024-07-17 18:27:28 +08:00
post 换成 put 有什么区别?
justdoit123
2024-07-17 18:33:53 +08:00
@lovelylain 浏览器为了向后兼容,依然允许表单构建的请求进行跨域。而表单请求只有 GET/POST 两种 method 。这种请求,是有办法自动带上目标网站的 Cookie 的,从而实现 CSRF 攻击。
lovelylain
2024-07-17 18:40:00 +08:00
@justdoit123 明白了,谢谢
euronx
2024-07-17 19:22:27 +08:00
CSRF 和 put 有啥关系?
oyps
2024-07-17 23:51:17 +08:00
避免 CSRF 攻击的方法:
1. 避免在 GET 请求中进行状态改变操作
2. 避免直接根据 URL 参数执行敏感操作
3. 增加 CSRF token 校验,确保请求合法
4. 设置允许访问的来源白名单
NUUUUULL
2024-07-18 10:40:01 +08:00
单浏览器维度不允许跨域就会有跨站请求

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1057881

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX