跨站请求伪造(Cross-site request forgery)
大概的伪造流程是:在很多网站我们都会基于cookie存储一些由服务端产生的session或者token、假设我有在一个A网站登录、这时候A网站里面已经就存储了cookie信息、然后我在B网站的时候、我去拿A网站的一个GET接口、这个时候我直接通过B网站去访问请求A网站的接口、这个时候就会把A网站的cookie携带上!
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title></head><body><div id="app"></div></body></html><script>let app = document.getElementById("app");app.innerHTML = `<img src="https://www.baidu.com/sugrec" onerror=""/>`;</script>
CSRF防御
- GET请求不做数据修改
