[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字段,这道题不是这么想的,而是把目标放在了绕过原有的密码成功登入。

相关推荐
mariokkm2 小时前
Django一分钟:DRF模型序列化器处理关联关系的示例与注意事项
数据库·python·django·web
OEC小胖胖1 天前
Spring Boot + MyBatis 项目中常用注解详解(万字长篇解读)
java·spring boot·后端·spring·mybatis·web
CXDNW1 天前
【网络篇】计算机网络——应用层详述(笔记)
服务器·笔记·计算机网络·http·web·cdn·dns
Z3r4y2 天前
【Web】复现n00bzCTF2024 web题解(全)
web·ctf·wp·n00bzctf·n00bzctf2024
a_ran3 天前
一些 Go Web 开发笔记
后端·golang·go·编程·web·网站
柏箱3 天前
使用html写一个能发起请求的登录界面
前端·javascript·html·web
OEC小胖胖5 天前
Spring MVC系统学习(二)——Spring MVC的核心类和注解
java·后端·学习·spring·mvc·web
cyt涛8 天前
WEB服务器——Tomcat
运维·服务器·http·servlet·tomcat·web·jsp
OEC小胖胖8 天前
js中正则表达式中【exec】用法深度解读
开发语言·前端·javascript·正则表达式·web
Dovir多多9 天前
web服务器运维常用技巧总结
运维·服务器·ubuntu·docker·centos·云计算·web