原理

CSRF(Cross-Site Request Forgery,跨站请求伪造)  /XSRF
是一种挟持用户在当前已登录的Web应用程序执行非本意的操作的攻击方法
攻击者盗用了你在某个网站的身份,以你的名义发送恶意请求

危害

以你的名义
1.冒充身份
2.账户接管
3.其他:登录/注册/注销
4.安全设计原则:CSRF

防御

从漏洞原理来看
关键操作增加验证码(比如说支付密码)
验证referer(来源) =>可被bp修改
使用Token

从漏洞利用前提条件来看
用户需要养成访问完一个网站之后,点击退出帐户的好习惯

利用前提:

1.登录信任网站A,并在浏览器中保存相应的Cookie。 2.在不退出网站A的情况下,访问危险网站B。

流程

cookie是存储在浏览器 | session是存储在服务器的

1.用户在没有退出 核心网站 的时候,点击了恶意网站,这样才可以发起一次攻击

半自动化

例子:修改密码
自己账户 登录 修改密码 =>bp抓包 engagement tools=>Generate CSRF Poc
复制html 存入evil.html 发给 用户 用户点击就会被更改密码
前提:在浏览器中保存相应的Cookie。

自动化提交

对浏览器有要求  (搜狗 猎豹可以)
<img src="url/?后面加参数" >
比如:<img src="http://www.pikachu.com/vul/csrf/csrfget/csrf_get_edit.php?sex=boy&phonenum=13676767767&add=nba+76&email=allen%40pikachu.com&submit=submit">

js自动化提交

跟自动化类似 后面加上以下脚本 有name属性的值是 submit前要加上空格
补充脚本 自动提交
<script>
  document.forms[0].submit();
</script>

延申 可讲改文件进行一些伪装修饰 如跳转按钮 图片 跳转网页等

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注