C用户已经登录信任网站A,并收到了来自服务器的cookie,C用户在没有退出网站A的情况下,点击了危险网站B,B网站要求C用户访问信任网站A,由于浏览器会自动带上用户之前的cookie,所以信任网站a不知道请求来自用户C还是危险网站B,就处理了请求,这样危险网站B模拟了C用户的操作,这叫CSRF攻击,可能导致用户到银行账户钱被转走,就是银行没有防范不信任的。
预防:用户的每个请求都带有来自信任网站A服务器生成的安全的随机码token,这样服务器验证token是否有效,如果无效则拒绝请求,比较安全。但是使用token一般都是deEncrypt/encrypt的字符串,所以会额外附加加密/解密的性能开销,而且有些加密不安全。