渗透测试CISP-PTE:CSRF

渗透测试CISP-PTE-系列学习笔记

第一章 渗透测试CISP-PTE:Web安全简介
第二章 渗透测试CISP-PTE:信息收集
第三章 渗透测试CISP-PTE:漏洞扫描
第四章 渗透测试CISP-PTE:HTTP请求流程
第五章 渗透测试CISP-PTE:SQL注入
第六章 渗透测试CISP-PTE:暴力破解
第七章 渗透测试CISP-PTE:XSS
第八章 渗透测试CISP-PTE:CSRF



前言

CSRF(Cross-Site Request Forgery)攻击,也称为“跨站请求伪造”,是一种常见的Web应用程序安全漏洞。该攻击利用了Web应用程序的信任机制,通过伪造用户的身份,迫使用户在他们不知情的情况下执行某些操作。

攻击者通常通过在恶意网站上放置一个特殊的链接或图片,或者通过发送包含恶意代码的电子邮件等方式来发送特殊的请求。当用户点击这些链接或打开这些图片时,他们的浏览器会向目标网站发送请求,由于浏览器通常会自动发送保存的用户凭证,目标网站将会以为这是用户的合法请求,并执行相应的操作。

CSRF攻击的危害很大,攻击者可以利用用户的信任执行一些恶意操作,例如更改用户的密码、发送恶意邮件、转移资金等。为了防范CSRF攻击,开发人员可以使用一些防护措施,如生成随机的令牌、验证请求来源、限制敏感操作等。

CSRF-攻击原理

跨站请求伪造:利用受害者尚未失效的身份认证信息,诱骗其点击恶意链接或 访问包含攻击代码的页面,攻击者盗用受害者的身份,以受害者的身份进行一些非法操作,csrf能够使用受害者的账户发送邮件,获取你的敏感信息等

1.概要-原理步骤

在这里插入图片描述

  1. 用户C打开浏览器,访问受信任网站A,输入用户名和密码请求登录网站A;
  2. 在用户信息通过验证后,网站A产生Cookie信息并返回给浏览器,此时用户登录网站A成功;
  3. 用户未退出网站A的情况下,在同一浏览器中(同源策略) 访问网站B;
  4. 网站B接收到用户请求后,返回攻击代码,并发出一个请求要求访问第三方站点A;
  5. 浏览器在接收到这些攻击性代码后,根据网站B的请求,在用户不知情的情况下携带Cookie信息,向网站A发出请求。
    网站A并不知道该请求其实是由B发起的,所以会根据用户C的Cookie信息以C的权限处理该请求,导致网站B的恶意代码被执行。

2.CSRF和XSS的差别

●XSS:
攻击者发现XSS漏洞——构造代码——发送给受害人——受害人打开——攻击者获取受害人的cookie——完成攻击
攻击者需要登录后台完成攻击
●CSRF:
攻击者发现CSRF漏洞——构造代码——发送给受害人——受害人打开——受害人执行代码——完成攻击
攻击是管理员(目标用户或受害者)自己实现的,攻击者只负责了构造代码

csrf和xss最大的区别在于,csrf并没有盗取cookie而是直接利用

二、CSRF漏洞类型

1.GET型CSRF

这种类型的CSRF一般是由于程序员安全意识不强造成的。GET类型的CSRF利用非常简单,只需要一个HTTP请求,所以,一般会这样利用:<img src=http://漏洞地址>
在访问含有这个img的页面后,成功向http://漏洞地址,发出了一次HTTP请求。所以,如果将该网址替换为存在GET型CSRF的地址,就能完成攻击了。

2.POST型CSRF

这种类型的CSRF危害没有GET型的大,利用起来通常使用的是一个自动提交的表单,如:

<form action=http://漏洞地址 method=POST>
<input type="text" name="xx" value="11" />
</form>
<script> document.forms[0].submit(); </script>

访问该页面后,表单会自动提交,相当于模拟用户完成了一次POST操作。

3.常见的CSRF方式

<img>标签属性

<img src=“http://漏洞地址”>

<script>标签属性

<script src=“http://漏洞地址”>

<iframe>标签属性

<iframe src=“http://漏洞地址”>

●JavaScript方法-Image对象

<script>
var foo = new Image();
foo.src = “http://漏洞地址”
</script>  

三、漏洞利用案例

1.GET型

●利用img构造一个html,受害者被诱导访问这个html时,以受害者的身份发送了一个修改信息的请求。
在这里插入图片描述

●当服务器针对GET请求头的Referer有所限制时(例如,限制Referer中必须包含服务器的IP地址),如下所示,将构造的html命名为服务器IP地址.html,这是执行html的get请求时其Referer才符合条件。
在这里插入图片描述

2.Post型

针对post型由于需要有点击这个动作,所以在html的head加入JS代码,实现页面访问成功的同时就执行点击操作,如图1
post请求包含多个参数,其CSRF poc代码(即图中2)可以使用Burpsuite使用Engegement tools来生成
在这里插入图片描述


#总结
以上就是今天要讲的内容,本文仅仅简单介绍了CSRF攻击原理、漏洞类型以及典型的漏洞利用案例等。后续将从文件上传、文件包含、命令执行等环节进行详细介绍。

  • 29
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

未知2066

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值