type
Post
status
Published
date
slug
summary
tags
CTF
推荐
category
CTF-WP
category (1)
icon
password
comment

前言

最近New Star CTF和0xGame都在打,就web而言还是New Star CTF的更加简单和基础,0xGame的质量更高,题目更难。

游戏高手

打开题目,发现是一个js游戏
image-20231011232111002
image-20231011232111002
看到这种题目就先想到会不会是前端的js代码修改一下就行,这里就很奇怪,不知道火狐怎么改前端的js代码,只会在谷歌改,但是谷歌没设置代理,后续抓不了包,所以决定在burp的内置浏览器上操作,内置浏览器也是谷歌。
image-20231011232618686
image-20231011232618686
分析一下主要代码
我们知道了之后,就把分数改为10,然后在超过10分的时候自杀来抓包
image-20231011233909076
image-20231011233909076
可以看到后端验证的score上传点,我们改为比100000大的数字再重发就行
image-20231011234006280
image-20231011234006280
得到了flag:flag{751524ef-f0b1-4356-a62a-6fabe8608a72}

upload again!

打开环境,发现可能存在文件上传漏洞,我们先传一个图片试试
image-20231012102343714
image-20231012102343714
发现上传成功,然后试一下图片码上传
image-20231012102839253
image-20231012102839253
发现可能有内容检测,我们再试一下到底过滤了什么,最后发现过滤了‘<?’
image-20231012103040181
image-20231012103040181
那就试试绕过,用以下代码试一下(php<7)
image-20231012103251598
image-20231012103251598
发现上传成功,接下来如果直接访问这个文件地址是不行的,因为不是php文件,不能代码执行。可以用的方法,要么存在文件包含漏洞来包含这个文件,要么就上传.htaccess来把.gif文件解析成php文件,然后进行代码执行,如果都不可以,那么就只能试试其它方法了,我们先试试上传.htaccess文件
文件内容如下
image-20231012103533210
image-20231012103533210
表示我们将目录下的.gif文件都解析成php
接下来上传
image-20231012103616908
image-20231012103616908
发现可以,那我们再访问之前图片码b.gif的路径,看看有没有解析成php文件
image-20231012103734629
image-20231012103734629
发现解析成功了,最后就是一句话木马的执行了
image-20231012103922671
image-20231012103922671
得到flag:flag{ef639d8b-86d5-46e2-846e-9bed9cfd04ab}

[include 0。0]

image-20231012201943059
image-20231012201943059
文件包含漏洞,用php伪协议,但过滤器要使用别的(之后打算出一期专门的php伪协议绕过)
image-20231012202309400
image-20231012202309400
flag{fc5f9e15-f502-4218-8390-15bde5613dfd}

[ez_sql]

image-20231012202408760
image-20231012202408760
判断sql注入点是get传参的id,先去试一下sqlmap可不可以
image-20231012202739232
image-20231012202739232
image-20231012202816937
image-20231012202816937
发现注入成功,接下来爆数据库
image-20231012202956531
image-20231012202956531
发现6个数据库名,判断flag在ctf这个数据库当中,接下来爆数据库的表名
image-20231012203235151
image-20231012203235151
发现flag存在的表名,那么接下来爆字段
image-20231012203403010
image-20231012203403010
发现字段是flag,接下来就是直接看flag了
image-20231012203509772
image-20231012203509772
flag{2606401b-f0a1-41c2-b889-cfac8910bdd7}
成功得到flag

[Unserialize]

image-20231012203655366
image-20231012203655366
是php反序列化题和绕过,最后看flag的时候可以尝试用sort代替cat
整体思路就是对this->cmd赋值,然后反序列化时触发__destruct魔术方法,然后成功命令执行
image-20231012204013589
image-20231012204013589
flag{297f5fb0-c3f5-4521-a3db-cf535ba3b8c1}

[R!!C!!E!!]

打开题目环境
image-20231014180331531
image-20231014180331531
提示有泄露,那就先目录扫描一下用dirmap
扫出来有.git/config文件,首先考虑的是git源码泄露,所以先用githack来爬一下源码
image-20231014180818019
NewStarCTF-Week4-miscMYSQL-JDBC反序列化解析
Loading...