CSRF 攻击

Cross-site request forgery, 跨站请求伪造. 冒充用户的身份, 发送伪造请求.

攻击流程:

| ------- | --1--> | ------- |
|         |        | Web A   |
|         | <-2--- |         |
|         | ---5-> |         |
| 用户A   |        | ------- |
|         | --3--> |         |
|         |        |         |
|         | <--4-- | Web B   |
|---------|--------|---------|
  • 1. 用户A 登陆到 Web A
  • 2. Web A 产生用于验证身份的 cookie
  • 3. 用户A 访问 Web B
  • 4. Web B 要求用户A 访问 Web A
  • 5. 用户A 通过携带验证身份的 cookie, 并通过 Web B 构造的请求访问 Web A. Web A 通过验证, 并对资源进行操作

从上面的流程可以看出, Web B 通过冒充用户的身份, 发送伪造请求, 达到攻击的目的.

那如何防止 CSRF 攻击呢? 主流的方法时通过 Token 验证, 每次用户访问时, 都需携带上特定的 Token. 由于恶意的服务器, 没有办法获取到 Token, 故攻击无法生效.

如果觉得有帮助, 可以扫描右边的微信打赏码支持一下.

Leave a Reply

Your email address will not be published. Required fields are marked *