csrf中伪造的请求可以在不得到cookie的情况下在请求头中带上cookie,为什么token不能在未知的情况下在伪造请求中发送,发送请求时不是都是浏览器提供吗?
csrf中伪造的请求可以在不得到cookie的情况下在请求头中带上cookie,为什么token不能在未知的情况下在伪造请求中发送,发送请求时不是都是浏览器提供吗?
13 回答13k 阅读
7 回答2.2k 阅读
3 回答1.3k 阅读✓ 已解决
6 回答1.3k 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
6 回答1.1k 阅读
这么来说吧,Cookies是浏览器自动添加的。这是CSRF攻击的原理。
但是token是无法由浏览器添加的,无法被跨站得到的,这是CSRF的前提,CSRF中的CS就是Cross Site,跨站。
token存在的意义就是,获取token时,将token放在跨站无法得到的数据之中,而验证token时,token必须出现在指定位置。
所以token在验证时就肯定不存在cookies之中,也就不会被浏览器自动带上