【BUUCTF】[GXYCTF2019]BabySQli

进入页面如下

尝试万能密码注入

显示这个(qyq)

用burp suite抓包试试

发现注释处是某种编码像是base编码格式

MMZFM422K5HDASKDN5TVU3SKOZRFGQRRMMZFM6KJJBSG6WSYJJWESSCWPJNFQSTVLFLTC3CJIQYGOSTZKJ2VSVZRNRFHOPJ5

可以使用下面这个网页在线工具很方便

Base64解码 Base64编码 UTF8 GB2312 UTF16 GBK 二进制 十六进制 解密 - The X 在线工具

先进行一次base32编码解码一次得到的内容有两个=,再用base64编码再次解码

得到一个sql语句

select * from user where username = '$name'

发现注入点应该在name处

判断是字符型注入还是整数型注入

name=1'&pw=1

报错,故判断是字符型注入

判断字段数

order by用不了了,应该是被过滤了

name=1' union select 1,2#&pw=1

页面错误

name=1' union select 1,2,3#&pw=1

页面正常

故字段数为3

判断注入点在哪里

这道题不能直接用数字试,只能用admin试时才会显示wrong pass!

最终试出注入点在中间

查看题中给出的源码

发现带有flag的代码

提示md5加密,可以试试下面这个在线页面md5加密很好用

md5在线解密破解,md5解密加密

使用最常用的123456密码

最终得到flag

name=1'union select 1,'admin','e10adc3949ba59abbe56e057f20f883e' #&pw=123456

相关推荐
循环过三天13 分钟前
3-1 PID算法改进(积分部分)
笔记·stm32·单片机·学习·算法·pid
萧曵 丶27 分钟前
Spring @TransactionalEventListener
java·数据库·spring·事务·transactional·异步
坤坤不爱吃鱼29 分钟前
【MySQL\Oracle\PostgreSQL】迁移到openGauss数据出现的问题解决方案
mysql·postgresql·oracle
胡斌附体30 分钟前
mobaxterm终端sqlplus乱码问题解决
数据库·乱码·sqlplus·字符集设置
HMS Core36 分钟前
HarmonyOS免密认证方案 助力应用登录安全升级
安全·华为·harmonyos
moon66sun40 分钟前
开源项目XYZ.ESB:数据库到数据库(DB->DB)集成
数据库·esb
之歆40 分钟前
Python-封装和解构-set及操作-字典及操作-解析式生成器-内建函数迭代器-学习笔记
笔记·python·学习
bing_15843 分钟前
MQTT 和 HTTP 有什么本质区别?
网络·网络协议·http
欧阳有财1 小时前
[java八股文][Mysql面试篇]日志
java·mysql·面试
TDengine (老段)1 小时前
使用 StatsD 向 TDengine 写入
java·大数据·数据库·时序数据库·iot·tdengine·涛思数据