ctfshow-黑盒测试 刷题记录
这个黑盒测试就是我们不知道是啥考点,得自己去挖掘,然后找到这个是考哪个知识点的
web380(目录扫描)
题目
就是这里的话会出现page_1.php
page_2.php
page_3.php
然后我们就得尝试去发现page.php
这就是一种思维发散,毕竟在网站上没看到的话,服务器上不一定没有。
难点就在这里
出现个$id,我们可以尝试给id传个值看看
发现是个文件包含的题目,并且限定了后缀,所以我们就得尝试去查看一下page.php
源码
page.php
1 |
|
然后我们就去猜是否存在flag.php
最后拿到flag.
web381(css路径)
题目
和上一题是一样的
打开源码发现有个不一样的地方,然后访问/alsckdfy就能拿到flag了。
这里是因为前端和后端共用一个css路径,然后前端就会泄露出来,那么别人就会尝试去登录看看,就会发现了后台地址。
web382(万能密码/爆破/sqlmap)
题目
因为我们在web381拿到了后台管理员登录地址,所以我们直接访问
那么我们就可以尝试一下默认密码登录试试
admin/admin admin/123 admin/admin888
那么经过尝试的话,发现是admin/admin888是后台管理员密码
这里给一个弱口令密码 nE7jA%5m
解法二
后台万能密码登录
admin
admin' or 1=1#
web383(爆破/万能密码)
payload
1 | admin/admin' or 1=1# --->写在username或者password都行 |
web384(爆破)
题目
题目还给了提示,那么我们就直接爆破就行了
可以先自己写一个密码的生成字典,然后在拿去bp爆破
密码是 xy123
得爆破 —->635000次,还是给提示的情况下,一般情况下,爆破一般是不用的,不到万不得已时最好不用,因为时间太久了
web385(配置文件利用)
题目
扫描后台扫出一个/install后台安装目录
然后访问,通过提示重置后台管理员密码,那么我们就可以登录后台了
admin/admin888 (上面的题得出的结论)
web386(配置文件利用)
题目
通过扫描后台发现install
clear.php时看源码时发现的
由于这里和上面的不一样,所以就考虑一下去访问这个低质,并把alsckdfy给去掉,访问后面的
出现一个压缩过的文件内容,那么我们就把这个给解压缩下来查看
压缩脚本
1 | import requests |
进行解码后发现存在clear.php文件,这就是发现clear.php的过程
然后就去访问install
存在lock锁定程序,不能进行密码重置了,那么我们就得想办法去删除这个程序,然后这里就有一个clear.php没用到,那么我们就可以尝试去用他。
就说清理完成,但不知清理了啥,那我们就得考虑一下清理的参数是啥,盲猜一波file,尝试清理index.php看看。
被清理掉了,那么我们就尝试把lock.bat也给清理掉
成功清理掉了,那么我们就可以重置密码,然后登录后台了
默认密码 admin/admin888
web387(日志文件包含 编辑器)
题目
这里的话时不给删除锁定文件了,那么我们就可以换个思路,查看源码,看有没有啥新的东西进行泄露。
发现一个路径很想编辑器的路径,那么我们就进行访问编辑器路径看看。
发现确实存在这个编辑器
然后发现是个4.1.11版本的,这个版本存在一个上传html的漏洞,但是这里不能上传php代码,因为源码里默认时阻止的,所以我们就得去看一下别的思路
但是这里是可以直接上传图片和压缩包的,那么我们可以直接在压缩包里写入php代码然后进行上传,效果是一样的。
然后 扫目录扫扫到一个robots.txt
发现一个/debug路径
成功执行,那么我们就尝试一下日志文件包含试一试
这里尝试过写入一句话木马,发现执行不了,所以这里可能是不可以传参数,只能在UA处进行代码执行
第一步
在ua处写入 <?php system('ls / >/var/www/html/1.txt');?>
然后在/debug后面加上?file=/var/log/nginx/access.log
然后访问,最后在访问1.txt就可以了
发现可以成功写入,那么我们就直接查看后台登录源码就行。
那么在ua处就得重新写入,其他和上面一样
<?php system(‘ls /var/www/html/alsckdfy/check.php >/var/www/html/2.txt’);?>
然后就可以拿到flag了。
解法二
因为在ua处可以执行php代码,那么我们就可以删除掉lock.dat文件,然后重新安装,使用默认密码登录
1 | user-agent:unlink('/var/www/html/install/lock.dat') |
web388(CVE-2017-1002024/免杀马)
题目
这里是发现web377的方法用不了了,还有这个自带的杀毒软件会把php一句话木马给过滤掉了,那么我们就得想想别的方法了,然后上面题提到的editor还没用到,那么这题我们就可以来尝试一下
这个editor版本的漏洞是 CVE-2017-1002024
这里怎么发现的editor上面的wp有讲
写入一个免杀码
1 |
|
写入到txt文件中,然后进行上传
然后通过/debug?file=参数传给日志文件
1 | /debug/?file=/var/www/html/alsckdfy/attached/file/20230205/20230205124929_21190.txt |
访问日志文件,执行一句话
1 | /debug/?file=/var/log/nginx/access.log |
然后访问1.php进行rce
成功写入
web389(session伪造/jwt/日志文件包含)
题目
访问/debug,然后提示权限不足,那么就暗示我们不是管理员,这时候查看下cookie,
发现是eyjh开头的,那么就会条件反射到jwt
这里的密钥是猜的,然后修改user为admin就好了,这里的密钥是123456,是猜出来的。
这个输出就是代表着写入成功。
那么我们会选择上传一个压缩文件,里面带着一个木马(免杀码)
1 |
|
然后去访问/debug/?file=/var/www/html/alsckdfy/attached/file/20230221/20230221134621_53294.zip
然后访问1.php就可以进行rce了
这个这专题剩下的内容就不想写了,写java题去了