跨站请求伪造Cross-Site Request Forgery(CSRF)

跨站请求伪造漏洞由恶意用户利用其在第三方网站留下的可以自动提交的HTTP请求,并借用目标网站合法用户的会话(假冒合法用户身份),自动提交请求。

例如用户登录网站A之后 认证方式由 对人的认证(账号/口令)转换成了 对浏览器的认证(session),后面的HTTP Request,只要还是通过当前的浏览器触发的,不管是出自用户的手工提交,还是第三方网站B的恶意请求(假设为嵌入第三方网站B的虚假图片,图片链接为 对A网站的敏感操作http://A/action.do?action=confidential ),在会话持续有效的情况下,如果用户访问了网站B,则请求会由浏览器自动提交给应用A。

简言之,跨站请求伪造的执行方是受害者(用户)的浏览器,执行的内容为黑客所构造并放置于其它网站,执行的身份是受害者(用户)的合法身份。

防范跨站请求伪造的要点是:应防止第三方网站的自动提交。

首选使用随机码技术(表单中添加隐藏的由服务器生成的随机码字段,或者使用图片格式的随机码由用户手工输入),随表单一起提交,提交后首先验证随机码;

或者采用再次认证的方式(比如网银转账时需要输入支付密码)。

转载于:https://www.cnblogs.com/-U2-/p/3479282.html

你可能感兴趣的:(跨站请求伪造Cross-Site Request Forgery(CSRF))