ctfshow黑盒测试
web380
先看源码没发现啥
然后再点点看看功能
发现文章页的格式为
page_n.php
猜测为 sql 注入
直接在 n 处注入无效
尝试?id=
处注入
发现报错
file_get_contents(1'.php)
直接读取 flag?id=flag
flag 出现
web381
再次尝试上题思路,发现无回显
再次翻看源码
发现到 css 文件中出现了一个特殊地址
尝试打开,之后回退文件地址
直到退至/alsckdfy/出现 flag
一些文件的调用可能会来自某些特殊的地址
如本题中后台和前站共用同一个 css 文件
其他如通过 cdn、图床等溯源回网上仓库(github 等)
即可查到源码,或找到后台等特殊地址
web382-383
继续访问上题出现的后台地址
发现出现了个后台登陆界面
既然难度是梯度上升
可以考虑弱密码或者万能密码
进入
flag get√
web384
hint:密码前 2 位是小写字母,后三位是数字
再次进入后台登录页面
用户名肯定是 admin
然后就是爆破密码
方法一:写个脚本生成密码字典
方法二:使用 burp 爆破时
将 password 设为两个变量
$1 设置成小写字母长度:2
$2 设置成 3 位数字
password=xy123
web385
登陆界面进不去
扫目录
发现有 install 没删
重置管理员密码
一些网页模板的安装通常通过/install 目录进行安装
部分开发人员忘记删除 install 等目录就会暴露出一些特殊的功能点
如重置密码功能点
模板名、版本号、配置信息等敏感信息
重置后密码为 admin888
web386
再次访问 install 发现有个 lock.bat 给锁定住了
最开始几道题是前端用了后端文件
这题回去访问前端的同名文件 即本来应该调用的前端页面
发现第一行注释
访问 clear :“清理成功”
回想到,install 里的 lock,直接删
clear.php?file=./install/lock.dat
这次访问 install 能重置了
返回后台登录初始账户
387
发现 robots
提示 debug,访问
提示 file 不存在
尝试 get 进去个 file
使用 log 执行命令将 lock 删除
<?php unlink('/var/www/html/install/lock.dat');?>
还有种执行方式是将命令通过读取文件显示回显
<?php system('==shell== > /var/www/html/1.txt');?>