[GXYCTF2019]BabySQli1

单引号闭合,列数为三列,但是没有期待的1 2 3回显,而是显示wrong pass。

尝试报错注入时发现过滤了圆括号,网上搜索似乎也没找到能绕过使用圆括号的方法,那么按以往爆库爆表爆字段的方法似乎无法使用了

在响应报文找到一段注释,解码后发现是这样的,数据库根据我们输入的用户名查找三列信息

select * from user where username = '$name'

我们发现当用户名填在第二列时,回显从wrong user变成了wrong pass,说明sql查询时先查询了username存在性

根据经验这里猜测第三列存放的是账号对应的密码,而从sql库中获取密码后就会与我们输入的pw作对比,如果相等则成功登入。(这里莫名其妙地sqli注入的目的从爆库变成了登录)

也就是说只要我们select的第三列和我们输入的pw相等就能成功登入。

我先尝试了明文存储,失败了,因为一般也不会明文存储隐私信息在数据库内

这里尝试MD5加密,成功登入,出现了flag

第一次接触这种题,属实是摸不着头脑,因为正常思路目的是爆库在库里找到flag字段,这道题不是这么想的,而是把目标放在了绕过原有的密码成功登入。

相关推荐
ZZHow10241 天前
JavaWeb开发_Day05
java·笔记·web
OEC小胖胖5 天前
【CSS 布局】告别繁琐计算:CSS 现代布局技巧(gap, aspect-ratio, minmax)
前端·css·web
Code季风8 天前
深入理解 Gin 框架的路由机制:从基础使用到核心原理
ide·后端·macos·go·web·xcode·gin
OEC小胖胖8 天前
第七章:数据持久化 —— `chrome.storage` 的记忆魔法
前端·chrome·浏览器·web·扩展
OEC小胖胖8 天前
第六章:玩转浏览器 —— `chrome.tabs` API 精讲与实战
前端·chrome·浏览器·web·扩展
cyber_两只龙宝8 天前
综合项目记录:自动化备份全网服务器数据平台
linux·运维·服务器·自动化·web
鹏多多.10 天前
flutter-使用AnimatedDefaultTextStyle实现文本动画
android·前端·css·flutter·ios·html5·web
OEC小胖胖10 天前
幕后英雄 —— Background Scripts (Service Worker)
开发语言·前端·javascript·浏览器·web·扩展
姜 萌@cnblogs11 天前
【实战】让AI理解用户的文化背景:开源项目Saga Reader自动翻译的技术实现
ai·web·tauri
JosieBook11 天前
【web应用】若依框架:基础篇18-二次开发-菜品管理
web·若依