1.1 含义
CSRF(Cross-site Request Forgery,跨站请求伪造),缩写CSRF,也有少数文章称为XSRF,一种利用用户在当前已登录的Web应用程序上执行非本意操作的攻击方法(利用受害者尚未失效的身份认证信息(cookie,会话等),创建恶意伪造的web页面请求,在受害者不知情的情况下向服务器发送请求完成非法操作(转账、改密等))。
简言之,攻击者间接利用受害者合法身份,以其身份发送恶意请求。
1.2 漏洞实质
攻击者通过技术手段欺骗用户的浏览器访问一个曾经认证过的网站,由于带着认证信息被访问的网站认证信息后认为是真正用户操作便执行操作。(简单的身份认证只能保证请求发自某个用户的浏览器,却不能保证请求本身是用户自愿发起。)
1.3产生原因
CSRF攻击为何可以实施?
其根本原因是从站点B.com向站点A.com发起请求,会把A.com的cookie一同发送过去。这是由于多标签浏览器(chrome,firefox等)共享一个进程造成的。
但是要注意一点,即虽然可以一同把A.com的cookie随请求发送,但并不能在B.com通过javascript获取和操作A.com下的cookie。
https://blog.csdn.net/SailingLee/article/details/84614073
1.4攻击过程
1. 用户C打开浏览器,访问受信任网站A,输入用户名和密码请求登录网站A;
2.在用户信息通过验证后,网站A产生Cookie信息并返回给浏览器,此时用户登录网站A成功,可以正常发送请求到网站A;
3. 用户未退出网站A之前,在同一浏览器中,打开一个TAB页访问网站B;
4. 网站B接收到用户请求后,返回一些攻击性代码,并发出一个请求要求访问第三方站点A;
5.