Java教程

sql手工注入

本文主要是介绍sql手工注入,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
  • information_schema,系统数据库,包含所有数据库相关信息。
  • information_schema.schemata中schema_name列,字段为所有数据库名称。

  • information_schema.tables中table_name列对应数据库所有表名,其中table_schema列是所有数据库名。

  • information_schema.columns中,column_name列对应所有列名,其中table_schema列也对应所有数据库名,table_name列也对应所有表名

  • 1.判断闭合类型 (sqli labs less1为例) 

在url后输入?id=1(正常),输入?id=1 and 1=1和?id=1 and 1=2后都显示正常(不是数字型)

输入?id=1'(报错,说明是单引号闭合)

输入?id=1' and '1'='1(正常,说明是字符型)

     2.判断列数

(1)使用(order by  数字)语句来判断列数

如果输入的数字大于实际的列数,则会报错:

 

 由此可得有3列

(2)使用(union select 1,2,3...)语句判断列数

 该语句是将1,2,3等数字放入列中,若数字个数大于列数则报错:

 

 

这篇关于sql手工注入的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!