支持api网站开发,wordpress排版Markdown,做服务器的网站都有哪些功能,深圳市住房和建设局网站登录一、简介
cross-site request forgery 简称为csrf,在csrf的攻击场景中攻击者会伪造一个请求#xff08;这个请求一般是一个链接#xff09;,然后欺骗目标用户进行点击#xff0c;用户一旦点击了这个请求#xff0c;整个攻击就完成了。所以csrf攻击也为o…
一、简介
cross-site request forgery 简称为csrf,在csrf的攻击场景中攻击者会伪造一个请求这个请求一般是一个链接,然后欺骗目标用户进行点击用户一旦点击了这个请求整个攻击就完成了。所以csrf攻击也为onclick攻击。csrf攻击方式并不为大家所熟知实际上很多网站都存在csrf的安全漏洞。早在2000年csrf这种攻击方式已经由国外的安全人员提出但在国内直到2006年才开始被关注。2008年国内外多个大型社区和交互网站先后爆出csrf漏洞如百度hinytimes.oom(纽约时报,metafiter( er(一个大型的blog网站和youtube等。但直到现在互联网上的许多站点仍对此毫无防备以至于安全业界称csrf为沉睡的巨人,其威胁程度由此美誉便可见一斑。
二、原理
当我们打开网站或者登陆某个网站后就会产生一个会话这里指用户登陆后,这个会话是session,cookie控制但是这是无关紧要的唯一的重点是刘览器与服务器之间是在会话之中在这个会话没有结束时候你可以利用你的权限对网站进行操作如进行发表文章发邮件删除文章等操作。当这个会话结束后你在进行某些操作时候web应用程序通常会来提醒你您的会话已过期或者是请重新登陆等提示。
三、分类 CSRF站外类型
csrf站外类型的漏洞本质上就是传统意义上的外部提交数据问题。通常程序员会考虑给一些留言或者评论的表单加上水印以防止spam问题这里spam可以简单的理解为垃圾留言垃圾评论或者是带有站外链接的恶意回复,但是有时为了提高用户的体验性可能没有对一些操作做任何限制。所以攻击者可以事先预测并设置请求的参数在站外的web页面里编与脚本伪造文件请求或者和自动提交的表单一起使用来实现get,post请求当用户在会话状态下点击链接访问站外web页面各户端就被强迫发起请求。
CSRF站内类型
csrf站内类型的漏洞在一定程度上是由于程序员滥用 − r e q u e s t 类变量造成的。在一些敏感的操作中如修改密码添加用户等 , 本来要求用户从表单提交发起 p o s t 请求传递参数给程序但是由于使用了 -request类变量造成的。在一些敏感的操作中如修改密码添加用户等,本来要求用户从表单提交发起post请求传递参数给程序但是由于使用了 −request类变量造成的。在一些敏感的操作中如修改密码添加用户等,本来要求用户从表单提交发起post请求传递参数给程序但是由于使用了 request等变量程序除支持接收post请求传递的参数外也支持接收get请求传递的参数这样就会为攻击者使用csrf攻击创造条件。一般攻击者只要把预测的请求参数放在站内一个贴子或者留言的图片链接里受害者浏览了这样的页面就会被强迫发起这些请求。
四、DVWA靶场搭建
dvwa安装路径:https://github.com/digininja/DVWA安装phpstudy 2018年版本注意如下载的是dvwa最新版在安装完成后建议使用php7以上版本修改步骤 将dvwa文件放入phpstudy中的www目录中将config.inc.php.dist文件去掉.dist后缀修改数据库连接信息 启动phpstudy服务访问URLhttp://localhost:80/dvwa 在setup中创建数据库访问账号密码admin/password成功页面 五、场景模拟站内 准备工作
将dvwa靶场安全级别修改为low 准备可登录用户
账号gordonb 密码abc
账号admin 密码abc模拟过程
使用gordonb用户登录dvwn平台进入到CSRF模块输入修改密码框在点击确认时使用burp抓包
修改的密码为123
// 获得链接
/dvwa/vulnerabilities/csrf/?password_new123password_conf123ChangeChangecsrf利用
// 在上一步已经获取到了修改密码的URL链接此时只需要将在任意登录用户执行该链接就可以修改用户的密码
// 使用admin用户登录并执行链接CSRF防御方式 同源策略
同源策略Same origin policy是一种约定它是浏览器最核心也最基本的安全功能如果缺少了同源策略则浏览器的正常功能可能都会受到影响。可以说Web是构建在同源策略基础之上的浏览器只是针对同源策略的一种实现。
Token验证
token其实说的更通俗点可以叫暗号在一些数据传输之前要先进行暗号的核对不同的暗号被授权不同的数据操作。例如在USB1.1协议中定义了4类数据包token包、data包、handshake包和special包。主机和USB设备之间连续数据的交换可以分为三个阶段第一个阶段由主机发送token包不同的token包内容不一样暗号不一样可以告诉设备做不同的工作第二个阶段发送data包第三个阶段由设备返回一个handshake包。