基于约束的SQL注入

首先先在mysql中创建一张用户表

在这里插入图片描述
这里设置了 id, name , password 三个字段,并且用户名限制为20个字符以内
那么如何实现基于约束的SQL注入呢,我们通过一个简单的实验来验证下。
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
可以看到我们插入的语句是可以查询到的,这里有一个问题就是因为我们在前面限制了插入的字符串的长度,所以超出的部分是没有办法插入数据库的,所以如果插入一条的用户名为‘admin 很多空格 1’,那么对于数据库而言中间的空格被忽略掉了,而且整个串的长度超过了限制的20,所以多的部分被截断,那么我们就可以用这个刚创建的用户登陆admin账户。

这里看一道题
在这里插入图片描述
这里首先随便注册一个账号后,发现只有管理员才可以拿到flag
在这里插入图片描述
一般的管理员id都是admin,所以这里使用‘admin 1’来注册,这里的空格尽量多打一些,最终成功拿到了flag
在这里插入图片描述

posted @ 2019-04-01 00:50  SEC.VIP_网络安全服务  阅读(129)  评论(0编辑  收藏  举报