聊聊前端安全之CSRF攻击

先看看全程,跨站请求伪造:Cross-Site Request Forgery 缩写CSRF

举个真实例子吧,我大学时候舍友的亲身经历,他在斗鱼看一个主播1元买LOL皮肤然后就上套了哈哈,不过现在想想那主播特么是个前端大佬啊。跪拜~~   就是我舍友通过他的链接进入支付页面,实际就是登录了银行站点,第一次确实是银行的页面拿到cookie,然后接着用一个伪造页面诱骗你点击,就是1元买199皮肤的页面,他伪造了一个支付请求因为有之前的cookie成功骗过银行用户认证,实际是支付600块(当时他实际被骗了多少忘记了哈哈反正也大几百了),然后也弹出让他输支付密码,他也就老老实实输了,然后又是一个伪造页面显示成功支付1元,没几秒手机短信过来几百块大洋被转走了。。。天上不会掉馅饼,大家不要贪小便宜呀,都是有坑的,真想掉馅饼就去买双色球,说不定就~~哈哈哈

好了,说一说防护措施吧

1.加Token验证

访问接口的时候,浏览器自动上传cookie,但是没有手动上传一个Token,这个Token是你注册成功

以后,或者没有注册,只要你访问了这个网站,服务器会自动的向你本地存储一个Token,在你访问

各种接口的时候,如果没带Token,,就不能帮你通过验证,如果只是点击了引诱链接,这个链接只会

自动携带cookie,不会自动携带Token,所以就避免了那个攻击。

2.Referer验证

Referer指的是页面来源,如果服务器判断页面来的是不是我的这个站点下面的页面,如果是就执行

你这个动作,如果不是就拦截。

3.隐藏令牌

和Token有点像,做法:隐藏在http的head头中,不会放在链接上,这样就做的比较隐蔽。本质上没

有太大区别。只是使用方式有一点差别。

over~

你可能感兴趣的:(聊聊前端安全之CSRF攻击)