实习实训第六次作业

目录

任务一:总结CSRF和XSS区别

任务二:总结CSRF攻击步骤

任务三:总结CSRF手工构造POST型页面方法

例:pikachu靶场CSRF第二关

任务四:说明token类CSRF利用方法

例:pikachu靶场CSRF第三关

任务五:SSRF常用伪协议

任务六:SSRF pikachu靶场通关

​编辑

任务七:SSRF靶场通关时根据源代码说明漏洞成因


任务一:总结CSRF和XSS区别

1.CSRF

        CSRF(即跨站请求伪造)是指利用受害者尚未失效的身份认证信息、(cookie、会话等),诱骗其点击恶意链接或者访问包含攻击代码的页面,在受害人不知情的情况下以受害人的身份向(身份认证信息所对应的)服务器发送请求,从而完成非法操作(转账,改密码等)。

2.XSS

        XSS(跨站脚本攻击)是一种针对网站应用程序的安全漏洞攻击技术,是代码注入的一种。它允许恶意用户将代码注入网页,其他用户在浏览网页时会受到影响,恶意用户利用xss代码攻击成功后,可能得到很高的权限、私密网页内容、会话和cookie等各种内容

3.CSRF和XSS的区别:

(1)XSS攻击遵循双向攻击模式,允许攻击者执行恶意脚本、访问响应,并将后续敏感数据发送到攻击者选择的目的地。CSRF是一种单向攻击机制,攻击者只能发起HTTP请求,但不能检索已发起请求的响应。

(2)CSRF攻击要求经过身份验证的用户处于活动会话中。而XSS攻击则不需要,在XSS攻击中,只要用户登录,就可以存储和交付有效载荷。

(3)CSRF攻击的范围有限,仅限于用户可以执行的操作,例如点击恶意链接或访问黑客的网站。XSS攻击提供执行恶意脚本来执行攻击者所选择的任何活动,从而扩大了攻击的范围。

(4)在XSS攻击中,恶意代码存储在站点中。在CSRF攻击中,恶意代码存储在受害用户访问的第三方站点中。


任务二:总结CSRF攻击步骤

(1)用户登录受害网站,浏览器保存身份凭证在本地cookie中。

(2)用户被诱导打开黑客网站,黑客网站向受害网站发起恶意请求,浏览器自动带上身份凭证。

(3)受害网站服务端校验恶意请求,发现身份凭证,恶意请求被受理。

(4)攻击者执行恶意操作


任务三:总结CSRF手工构造POST型页面方法

(1)抓包分析目标网站的POST请求
        对目标网站的数据包进行分析,了解哪些操作是通过POST请求进行的,并捕获这些请求的详细信息。

(2)构造HTML表单
        根据分析构造一个HTML表单。表单的action属性应设置为目标网站的URL,method属性应设置为POST。表单内部应与目标POST请求一致,并预设好恶意攻击的数据。

(3)隐藏表单元素
        将表单中的输入字段(如用户名、密码等)设置为hidden类型,但不会影响表单的提交。

(4)诱导点击
        将构造好的HTML页面发布到恶意网站上,或通过电子邮件、社交媒体等方式发送给目标用户。诱导用户点击,在用户不知情的情况下向目标网站发送包含恶意数据的POST请求。

(5)执行恶意操作
        如果攻击成功,目标网站可能会执行攻击者想要的恶意操作。

例:pikachu靶场CSRF第二关

第二关

进入页面后,根据提示登录后修改信息提交并抓包

此时发现是POST请求,参数在请求体中,无法直接构造恶意链接,但可以构造恶意表单

将该恶意表单放到浏览器上测试

点击进入,bp抓包如下,发现里面的参数已经修改

点击放行,显示403

找到pikachu/vul/csrf/csrf_post.php,修改如下图所示

保存后打开编写好的表单,点击后进入登录页面

填写登录信息后,显示修改成功


任务四:说明token类CSRF利用方法

CSRF Token的工作原理:

CSRF Token 每随着页面被操作,Token 都会改变,比如 f5 刷新,点击按钮等等,都会导致 CSRF Token 变化。

而每一个请求的 CSRF Token 会通过后端代码验证 Token 的有效性 ,在时间戳上是否有效,如果加密字符串一致且时间未过期,那么这个Token就是有效的。

例:pikachu靶场CSRF第三关

登录后点击修改信息,填写完成后点击抓包

发现报文中包含token,选择安装burp插件CSRF Token Tracker

安装后如图点击,进行修改并启用

将抓到的包发送到重放器,修改数据

点击发送发现数据发生变化

点击“跟随重定向”


任务五:SSRF常用伪协议

1.file协议

在有回显的情况下,利用 file 协议可以读取任意文件的内容


2.dict协议

泄露安装软件版本信息,查看端口,操作内网redis服务等


3.gopher协议

gopher支持发出GET、POST请求。可以先截获get请求包和post请求包,再构造成符合gopher协议的请求。


4.http/s协议

探测内网主机存活


任务六:SSRF pikachu靶场通关

  • SSRF(curl)

 修改URL,添加上链接http://www.baidu.com 访问百度页面。

修改URL,访问本地文件test.txt。

  • SSRF(file_get_content)

 与SSRF(curl)操作相似,在“file=”后修改相应的url,访问百度页面。

访问本地文件test.txt。


任务七:SSRF靶场通关时根据源代码说明漏洞成因

  • SSRF(curl)

(1)没有验证URL参数:代码从用户输入的$_GET[‘url’]参数中直接获取URL并用于curl_init函数,未对输入进行有效的验证或过滤。

(2)没有限制请求目标:curl_setopt配置允许请求任何指定的URL,包括内部服务或本地网络上的服务。攻击者可以利用该请求来扫描内部网络、访问内部API,或者获取内部系统的信息。

  • SSRF(file_get_content)

(1)$_GET[‘file’]直接获取URL ,没有进行任何过滤或验证。这允许攻击者通过在 file 参数中提供恶意输入来执行恶意操作。

(2)使用了 explode() 函数来处理路径,但如果攻击者提供特殊的路径参数(如本地文件或内网资源),仍然可以访问不应该公开的文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值