网站CSRF跨站漏洞修复方案

简介: CSRF通俗来讲就是跨站伪造请求攻击,英文Cross-Site Request Forgery,在近几年的网站安全威胁排列中排前三,跨站攻击利用的是网站的用户在登陆的状态下,在用户不知不觉的情况下执行恶意代码以及执行网站的权限操作,CSRF窃取不了用户的数据,只能执行用户能操作的一些数据。比如在用户不知道的情况下, 把账户里的金额,以及银行卡号,体现功能,都转移到其他人账户里去。如果被攻击者是一个管理员的权限,那么就会对网站安全构成严重的危害。

CSRF通俗来讲就是跨站伪造请求攻击,英文Cross-Site Request Forgery,在近几年的网站安全威胁排列中排前三,跨站攻击利用的是网站的用户在登陆的状态下,在用户不知不觉的情况下执行恶意代码以及执行网站的权限操作,CSRF窃取不了用户的数据,只能执行用户能操作的一些数据。比如在用户不知道的情况下, 把账户里的金额,以及银行卡号,体现功能,都转移到其他人账户里去。如果被攻击者是一个管理员的权限,那么就会对网站安全构成严重的危害。


u=959819984,1625297956&fm=173&app=25&f=JPEG.jpg


CSRF跨站漏洞


由于网站设计人员,对CSRF跨站漏洞不是太了解,误认为用户从浏览器发送过来的请求,当做正常的用户请求,当受害者点击入侵者构造的恶意链接的时候就会执行恶意的代码,以及恶意的操作,例如删除用户的银行卡。


GEThttp://xxx.com/bank/delbank.php?id=6当正常用户点击上面的连接的时候,并且该用户的登陆状态一直存在,用户就会不知不觉的删除了自己账户里的银行卡,给用户造成没必要的损失,说实话,简单的用户身份验证以及过滤判断,只能保证用户的请求是来自浏览器,却不能判断请求本身是用户自己操作删除的银行


CSRF网站跨站漏洞修复办法

CSRF漏洞基本都是在网站代码的框架中去修复该漏洞,我们在对网站安全进行测试的同时,检查到csrf漏洞的时候,我们要对CSRF框架安全修复的防护,进行详细的了解,一般安全测试的时候我们要看程序代码里的增加,删除,修改,等功能代码里是否调用formtoken,token等的变量函数有没有对refer请求链接,进行判断。如果有对来路的链接判断就可以防止CSRF攻击。还有一方面就是在测试token值的时候,有没有自定义随便重放的GET请求,如果没有自定义的值,则替换请求来路的网址为空,重放请求是否可以返回200状态的数据,从而判断网站存不存在csrf漏洞。


1.增删改的请求,全部用post的数据传输来执行。


2.formtoken的安全检查,其实也是token值的检测,如果token值重复,那么只能作为一次请求有效。


3.对于一些私密,以及较为重要的操作,尽量使用二次安全验证,比如短信,以及动态口令,或者是验证码的安全效验。


4.get请求中的来路网址判断,对HTTP来的请求,判断请求的网址是多少,建立网址白名单机制,如果是允许的来路网址即可执行操作,如果不是则拦截请求。


5.token的随机值生成,每一次的用户请求,都会在请求中带有随机值的token值,服务器那面会对用户传输的数据进行token验证以及安全判断,如果token值不正确则拦截用户的请求。


相关文章
|
3月前
|
SQL 存储 安全
Web安全-CSRF跨站请求伪造
Web安全-CSRF跨站请求伪造
88 5
|
7月前
|
安全 数据安全/隐私保护
第二轮学习笔记:CSRF跨站请求伪造漏洞
第二轮学习笔记:CSRF跨站请求伪造漏洞
47 0
|
数据安全/隐私保护
CSRF(跨站请求伪造)
CSRF(跨站请求伪造)
124 0
|
安全 数据安全/隐私保护
第二轮学习笔记:CSRF跨站请求伪造漏洞
第二轮学习笔记:CSRF跨站请求伪造漏洞
83 0
第二轮学习笔记:CSRF跨站请求伪造漏洞
|
存储 JavaScript 安全
跨站脚本攻击(XSS)和跨站请求伪造(CSRF)是什么?区别是什么?底层原理是什么?
跨站脚本攻击(XSS)和跨站请求伪造(CSRF)是什么?区别是什么?底层原理是什么?
882 0
|
存储 JavaScript 安全
前端实践:如何防止csrf制跨站请求攻击(vue代码说明)
CSRF(Cross-Site Request Forgery)攻击,是一种利用用户已经登录的状态来伪造用户的请求,从而进行恶意操作的攻击方式。例如,攻击者可以利用CSRF攻击来修改用户的密码、发送垃圾邮件、进行支付等操作。 为了防止CSRF攻击,需要采取一些措施来保护网站的安全性。下面介绍几种常用的防御措施:
2265 0
|
机器学习/深度学习 安全 程序员
网络安全-跨站请求伪造(CSRF)的原理、攻击及防御
网络安全-跨站请求伪造(CSRF)的原理、攻击及防御
217 0
网络安全-跨站请求伪造(CSRF)的原理、攻击及防御
|
SQL 安全 Python
【Django | 安全防护】CSRF跨站伪请求和SQL注入攻击
【Django | 安全防护】CSRF跨站伪请求和SQL注入攻击
【Django | 安全防护】CSRF跨站伪请求和SQL注入攻击
什么是CSRF(跨站请求伪造)?
什么是CSRF(跨站请求伪造)?
332 0
什么是CSRF(跨站请求伪造)?
|
前端开发 Python
Django CSRF跨站请求伪造的禁用和使用
Django CSRF跨站请求伪造的禁用和使用
141 0