SQL注入
RZ1ng
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
sqli-labs关卡记录13
uname=1')and updatexml(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_schema=database() and table_name='users'),0x7e),1)--+&passwd=1&submit=Submit拿到users表的列名信息。这里就简单的获取了前60个字符。原创 2024-12-24 14:33:09 · 564 阅读 · 0 评论 -
sqli-labs关卡记录12
查找到users表下对应的列名:uname=1")union select (select group_concat(column_name) from information_schema.columns where table_schema=database() and table_name='users'),2--+&passwd=1&submit=Submit。查找数据库名:uname=1")union select database(),2--+&passwd=1&submit=Submit。原创 2024-12-23 17:29:22 · 326 阅读 · 0 评论 -
sqli-labs关卡记录11
这一关,很明显的是post型,因为当我们输入username和password时,可以很明显的看到,我们的url这里并没有任何信息,页面也刷新了一下。上图可以发现,我们加'后,页面就会有sql的报错提示,于是判断闭合方式为单引号接着就是判断表中列数,然后发现是2列。然后就是与之前相同的操作,查找数据库名,查找该数据库下都有什么表,然后查找相关表的列名,然后获取这些列名的信息。命令为:uname=1'union select 1,2--+&passwd=1&submit=Submit。原创 2024-12-23 17:01:05 · 621 阅读 · 0 评论 -
sqli-labs关卡记录38
来更新我们的数据库中users表中的id为1的password为123,通过查看数据库,我们就可以看到,id为1 的password已经进行了更改。这里注意到是堆叠注入,就是我们再;后继续书写sql语句来执行,依旧可以执行,这里第38关就是堆叠注入。原创 2024-12-23 16:20:17 · 374 阅读 · 0 评论 -
sqli-labs关卡记录(sqlmap版)
然后这里就可以看到,有布尔盲注,有报错注入,有时间盲注和联合注入可以使用,紧接着就是要爆破出数据库名,命令也很简单:python sqlmap.py -u "http://sqli-labs:8989/Less-1/?就可以看到,已经爆破出数据库名,接着就是爆破表名:python sqlmap.py -u "http://sqli-labs:8989/Less-1/?接着爆破出users表的列名:python sqlmap.py -u "http://sqli-labs:8989/Less-1/?原创 2024-12-19 21:20:47 · 620 阅读 · 0 评论 -
sqli-labs关卡记录32
来进行让我们的引号生效,原理就是:输入%df‘,本来会转义’为 \' ,但 \ 遇上%df相当于%5c 和%df相遇,两者会合起来被解析成一个汉字(運),这样变成 運',在MYSQL中效果等同于 id= '1' ,因而成功绕过。然后这里的错误就是没有闭合,当我们闭合后,就会发现,没有问题了。接下来就是和常规的sql注入一样的流程,唯一需要注意的就是,语句中不能使用单引号,因此我们要考虑,将要执行的单引号中的内容转换成16进制的形式,这样就可以不用引号,而输入我们想要输入的内容。这一关,是宽字节注入。原创 2024-12-18 22:32:51 · 414 阅读 · 0 评论 -
sqli-labs关卡记录24
防御者可能在用户输入恶意数据时对其中的特殊字符进行了转义处理,但在恶意数据插入到数据库时被处理的数据又被还原并存储在数据库中,当 Web程序调用存储在数据库中的恶意数据并执行SQL查询时,就发生了SQL二次注入。admin'#并没有更改,相反,更新的是admin的账号,这是因为我们的账号,单引号闭合,#注释掉了后面的条件。所以,执行生效,这就是二次注入。上面,我们更新密码为123,从原先的123456更新为123.然后我们打开数据库,就可以发现,原创 2024-12-17 16:13:23 · 584 阅读 · 0 评论 -
sqli-labs关卡记录10
得到表中的列数量为4,命令为:?原创 2024-12-16 16:28:09 · 431 阅读 · 0 评论 -
sqli-labs关卡记录9
这里注意,如果还是单纯的看length是不能看出有什么区别的,因此要看这个response received因为我们设置的休眠五秒,因此这里就可以选出我们想要的,根据ascii对应,就找出了security。这里使用sleep函数来判断,如果是字符型就会执行sleep(5)就是会多加载5秒,从网络这里可以看出来,所以我们确定是字符型。接着就是要判断数据库长度,名称。得到表名称:referers,然后获取该表下的列信息,就是得到列数量和列长度和列名称。获取到字符对应的ascii码,得到第一列的列名为id。原创 2024-12-15 15:12:13 · 503 阅读 · 0 评论 -
sqli-labs关卡记录8
id=1' and ascii(substr((select table_name from information_schema.tables where table_schema='security' limit 0,1),1,1))=97%23 这个就是爆破出第一个表的名称,然后根据知道的表名称,接下来就是要知道该表中列的数量。这里就得到了列名信息。获取emails表中列名为id的列的字段信息,这里用group_concat让该列中的信息都变到一行,我们这里爆破的就是第一行中的第一个信息是什么。原创 2024-12-15 10:53:55 · 390 阅读 · 0 评论 -
sqli-labs关卡记录6
参考前面的关卡5,这里也是报错注入。原创 2024-12-14 20:00:17 · 204 阅读 · 0 评论 -
sqli-labs关卡记录5
解释一下这个语句:updatexml(1,concat(0x7e,substr((select group_concat(id,username,password) from users),1,30),0x7e),1)利用concat来将语句里面合并为一个字符串,然后0x7e是我们的报错字符,中间拼接的是我们要执行的语句,因为只能输出32个字符,所以这里使用substr来输出从第一个到第30个字符,加上我们的0x7e刚好32个字符,然后再从31开始继续输出即可。这里就是利用语法报错,来输出我们想要的信息。原创 2024-12-14 12:41:32 · 285 阅读 · 0 评论 -
sqli-labs关卡记录4
然后同理,按照我们之前的方式,判断闭合方式为--")--尝试使用这个闭合方式,发现果然没问题。第四关同理,我们这里使用' 还有1adada都不会报错,尝试使用双引号",会发现提示报错。原创 2024-12-14 10:51:27 · 233 阅读 · 0 评论 -
sqli-labs关卡记录3
这里注意就是查询referers表的具体信息时,需要注意因为这个表中原先是没有任何信息的,所以执行完语句会什么也看不到,因此可以事先去这个表中写入一部分信息,这里我提前写入了111,因此会有111出现。然后需要判断闭合方式:''1'') LIMIT 0,1' 这是错误提示,最简单的判断方式就是,看到我们输入的1',然后后面的')就是实际我们需要使用的闭合方式。下面的过程就是和之前一样,判断列,判断显示位,查询数据库信息,查询数据库中的表信息,查询数据库中相关的表的列信息,查找具体信息。原创 2024-12-12 18:07:00 · 175 阅读 · 0 评论 -
sqli-labs关卡记录2
接下来就是确定显示位,同理?id=-1 union select 1,2,3--+,注意要让id=-1,因为这里只能显示一行,如果左边可以输出结果,那么右边我们的联合语句的执行结果就无法看到。第二关,同理判断为数字型,直接来到order by这一步,和第一关一样,这里order by 3与4得到的反馈并不相同,于是猜测出一共有三列。这里的区别就是,第一关是字符型需要闭合,第二关是数字型,不需要闭合。原创 2024-12-09 20:09:13 · 237 阅读 · 0 评论 -
sqli-labs关卡记录
于是就有下面:(select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users')这里的意思就是和上面类似,然后where的限制条件为两个,因为我们要在security数据库中,查看users表的列名信息。这里让左半边失效,直接输出右半边,因为有时页面会单单只能输出一行结果,因此让左边失效,返回我们右边的结果。可以看到,回显位为2,3。原创 2024-12-08 21:28:29 · 1232 阅读 · 0 评论
分享