BUUCTF: [极客大挑战 2019] EasySQL (简单的SQL注入)
2022-7-23 00:27:37 Author: 猫因的安全(查看原文) 阅读量:15 收藏

BUUCTF: [极客大挑战 2019] EasySQL

登录分析

打开是一个链接,有登录表单

看出是一道登录题,判断应该是SQL注入题目

尝试用账户admin、密码123456登陆

经典大法  :admin888
不出意外小日本si全家

看来不中

再尝试闭合方式,账号密码输入

1     1’     1"

来判断

当输入为1’时报错,所以判断结果语句应该为单引号闭合

您的 SQL 语法有错误;
检查与您的 MariaDB 服务器版本相对应的手册
了解在第 1 行的 ''1''' 附近使用的正确语法

知道是单引号闭合

构造真值绕过验证

ps:(用户名:‘请输入:’) 单引号闭合就是username的边界限制是俩单引号

直接上构造万能密码

万能密码就是绕过登录验证直接进入管理员后台的密码

这种类型的密码可以通用到很多存在此漏洞的网站

所以称之为万能

账号'or 1=1 #

密码任意

原因分析

一般的进行登录验证SQL语句是这样的

select * from table_name where username='admin ' or 1=1# ' and password ='xxx'

账号中的使前面的引号闭合

or 1=1 使语句恒成立

最后的#号会注释掉#之后的语句,避免报错

所以sql语句返回真值,成功绕过验证 得到flag

flag{845dd4f7-b0ed-426d-88ce-4c1bbab5a22a}

文章来源: http://mp.weixin.qq.com/s?__biz=Mzk0NjMyNDcxMg==&mid=2247494936&idx=1&sn=047116f16a9827a283a0fb7ed5658834&chksm=c305789ff472f189c5a42ee37da2205c00d7943dedc96fabfee46e6b1024739e1ec04162f50d#rd
如有侵权请联系:admin#unsafe.sh