burp靶场通关教程1

从零到一,跟着我一起探索burp靶场吧

首先我们玩一玩服务器端漏洞

第一关是文件路径遍历

我们点击访问实验室

根据提示点击查看详情 bp抓包

filename 这不是出来了

把上文提示的payload拼接一下,成功读取/etc/password

第二关是 什么是访问控制

我们先访问robots.txt 这里提示里面存在管理面板的路径(没有做鉴权,通过不受保护的管理功能这个提示,应该直接访问管理面板路径就可以删除carlos用户了)

把这个路径拼接一下

直接删除就ok了

接着做这个第二关还没完 有好几个小关卡

还是未授权,通过它的提示这个未授权的管理面板会在应用程序某个位置公开

访问实验室

直接查看网页源代码

这段代码意思是isAdmintrue时,向网页添加一个额外的 "Admin panel" 链接。这个链接可以指向管理员专用的控制面板或管理页面,提供对特定功能或权限的访问。

拼接即可 不知道为啥用户没加载出来

接着玩下一个小关卡

通过请求参数控制用户角色

我们尝试拼接/admin

那么我们现在的思路应该就是判断它用什么校验的管理员身份

我们尝试使用上文提供的用户凭据登录  bp抓包看看请求包是什么样的

因为这是个普通用户的凭据,这里显示false,那么我们访问管理页面把后面的admin=false粘上去 并改为true(如果有admin=就不用粘贴了,我这访问admin管理面本cookie里面没有admin=false)

删除carlos用户即可

接着下一个关卡

这道题和id请求参数有关系

让我们看carlos的key

我们先用凭据登录上去看看

这是它的请求包 果然校验了id值

我们可以通过有关carlos身份信息的地方找找他的id  比如文章地址

去用自己账号登录 id值替换成carlos的

接着下一关

根据提示我们先登录

登录成功后发现此页面有密码

我们在密码框里面检察元素快速定位

修改请求包id参数值为上文提示的administrator 根据响应得出密码

通过账号密码登录 把carlos用户删了

接下来就是第三关卡了

身份验证漏洞

第一个是存在用户名枚举,通过用户名枚举爆破密码,字典都给我们准备好了

直接bp抓包 设置用户名为变量开始爆破

这个回显翻译过来是密码不正确

正确用户名有了 那么我们爆破密码就变得简单了

输入正确用户名 设置密码为变量

用它给的密码本开始爆破

响应长度不一样

跳转 应该是正确密码我们去登录

登录成功下一关

先根据提示输入自己的凭据

  点击电子邮件客户端

这个就是安全码

使用安全码登录成功 记录下来这个页面的url

接着我们用受害者凭据登录

不需要安全码信息也加载出来了

这道题的考点应该就是/my-account  校验安全码这个环节 没有做判断导致只需要输入正确的url即可成功加载处数据

下一道题 第四关

ssrf 服务端请求伪造 看看怎么玩

这道题要求我们删掉carlos用户

随便点击进去一个商品,这块有个检查库存按钮

这是请求包 url解码一下

stockApi=http://stock.weliketoshop.net:8080/product/stock/check?productId=1&storeId=1

这个 API 可用于检查具有特定产品 ID (productId=1)和商店 ID (storeId=1)的商品库存情况。通过发送 HTTP 请求到该 API,您可以获取关于特定产品在指定商店的库存信息的响应数据。

构造一个api  stockApi=http://localhost/admin

成功显示出来管理员页面

http://localhost/admin/delete?username=carlosstockApi=http://localhost/admin/delete?username=carlos 这是删除carlos的get请求

也可以通过stockApi传递ssrf攻击

这是针对于本地服务器的ssrf

下一道题

针对于另一个后端系统的ssrf

有的后端系统用户是无法直接访问的,但是服务器可以成功向其发送请求。

我们根据提示这边说是192.168.0.X 某一个8080端口

还是上一个ssrf题的操作方法哈  替换stockApi

不过这道题多了两个条件一个是8080端口 一个是主机位是变量

进入商品 点击检查库存

stockApi=http://192.168.0.1:8080/admin   设置1为变量

字典就是255个数字哈(1-255)这里科普一个小知识,如果使用一个以子网掩码 255.255.255.0 划分的子网,那么该子网的广播地址将是 192.168.0.255。

http://192.168.0.58:8080响应成功了

这个http://192.168.0.58:8080我们不能直接访问,因为这是内部ip地址,属于另一个后端系统

所以我们需要第一个基本的ssrf来作为中转站

接下来直接替换

stockApi=http://192.168.0.58:8080/admin

payload后面不要 多空格哈  不然报错了

删除方法与上面一致这里就不演示了哈

接下来是第五关了哈

文件上传漏洞

讲的很verygood

这里还科普了我们可以上传哪些恶意的webshell

我们开始玩

说是让我们上传一个远程执行代码

我们先用它的凭据登上去看看是怎么个事

这是上传头像

我们来看下它提示给的payload

<?php echo file_get_contents('/home/carlos/secret'); ?>

这段代码尝试读取位于 /home/carlos/secret 路径下的文件内容,并使用 echo 命令将其输出。具体来说,file_get_contents() 函数用于读取文件的内容,然后 echo 语句将文件内容作为字符串输出到浏览器或命令行终端。

我们在电脑上写一个php文件 把这个payload粘进去

我们看burp历史记录

请求方式和 响应内容都记录下来了

这个get请求 其实就是一个我们上传的1.php地址

接着玩下一关

看题目要求应该是绕过文件上传限制 更改内容类型即可

登录账号 上传一个php看看啥请求包

这回显是让我们上传image/jpeg and image/png 类型的呀

在上传一个png看看啥情况

上传成功了

我们直接把上传php文件的请求包改成Content-Type:image/jpeg 即可

成了

第六关

操作系统命令注入

windows和linux命令写的很详细啊

开始玩吧

找product/stock接口 检查库存这就是

在参数后加;whoami或者|whoami

为什么能执行系统命令呢

因为这里的功能是通过调用带有产品和存储 ID 作为参数的 shell 命令来实现的

最后一关了sql注入

这一关好像很基础 category随便输参数值 都提示这里存在sql注入漏洞

我们来看下它的payload

category'+OR+1=1--

通过添加 ' OR 1=1-- 到查询条件中,攻击者可以绕过原本的筛选条件,并获取到所有的数据记录。

这是它本身的请求

只能获取3张图片, 但是通过这个payload 即可加载所有图片数据

下一关

这不就是万能密码吗

其实我们看刚才给的payload 就可以

SELECT * FROM users WHERE username = 'administrator'--' AND password = ''

  • SELECT * FROM users: 这部分表示从名为"users"的数据库表中选择所有的列。
  • WHERE username = 'administrator'--': 这部分表示在结果中只选择用户名(username)等于"administrator"的行。--是SQL注释的标记,它后面的内容会被视为注释而不被执行。
  • ' AND password = '': 这部分是一个意图欺骗的片段,试图提供一个空密码来绕过认证。然而,由于注释符号的存在,这部分代码实际上是被注释掉的,不会对查询产生影响。   

那我们这边其实已经答案是什么了 administrator'-- 输入这个就可以让AND password = ''注释掉

大家对这个sql语句有理解吗   知道为什么是administrator'--吗?

第一这个--是注释,其次为什么要给administrator后面加单引号,因为这是字符串要闭合,不闭合就报错了。

成功登录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值