【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

相关推荐
缘友一世16 分钟前
epoll 的边缘触发(Edge Triggered)与水平触发(Level Triggered)
linux·网络
菜鸟阿康学习编程18 分钟前
JDBC 实战项目(增删改查小系统,接近完美!)017
java·开发语言·数据库
zhangfeng113319 分钟前
python mysql库的三个库mysqlclient mysql-connector-python pymysql如何选择,他们之间的区别
数据库·python·mysql
懒洋洋爱睡觉24 分钟前
考研计算机组成原理——零基础学习的笔记
笔记·学习·考研
007php0071 小时前
深入了解计算机网络中的路由协议与性能优化
java·开发语言·数据库·后端·python·计算机网络·golang
m0_748244961 小时前
大数据-240 离线数仓 - 广告业务 测试 ADS层数据加载 DataX数据导出到 MySQL
大数据·数据库·mysql
落霞与孤鹭齐飞。。1 小时前
SSM旅游信息管理系统
java·开发语言·mysql·毕业设计·课程设计·旅游
RacheV+TNY2642781 小时前
电商数据API接口的安全挑战与应对策略
大数据·开发语言·网络·数据库·人工智能
cnbestec1 小时前
Inxpect毫米波安全雷达:精准检测与动态保护,工业自动化可靠选择
安全·机器人·自动化
Elastic 中国社区官方博客2 小时前
如何通过 Apache Airflow 将数据导入 Elasticsearch
大数据·数据库·elasticsearch·搜索引擎·全文检索·apache