bugku web login1

2021/10/4 23:13:24

本文主要是介绍bugku web login1,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

打开靶场

 

查看网站源码后没有特殊的地方,先按照题目思路注册一个账号,使用注册的账号登录后弹出提示

 

当时第一时间想到了自己以前做过的一个题,是抓包然后伪造XFF为127.0.0.1来进行登陆,在经过一番测试后发现不适用于这道题目

在没有思路的情况下发现了题目的提示

 

在网上查找有关SQL约束攻击的资料后豁然开朗

在sql中执行字符串处理时,字符串末尾的空格将会被删除。也就是说"admin"与"admin  "是等价的,执行语句:select * from user where username="admin  "的查询结果将会与用户名为"admin"时一致;

②定义表的字段时,往往都会对字符长度进行限制,比如varchar(20),如果定义的字段长度超过了限制的长度,就会截断超出部分

知道了这两点之后题目的目的也就好理解了,由于是需要管理员权限,我们注册一个账号的用户名为"admin                                ",空格的长度可以自由选择。注册完毕后,我们在数据库中检索用户名"admin"时将会出现两个,一个是管理员的,一个是我们自己注册的(实际上用户名后面还有空格),我们在对用户名"admin"进行select时,都会返回第一个数据记录,这样我们就能够通过原始的admin用户登录了

 



这篇关于bugku web login1的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程