判断数据库类型
Posted LemonSec
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了判断数据库类型相关的知识,希望对你有一定的参考价值。
目前,互联网上动态网页所使用的数据库,最常见的就是Microsoft Access和Microsoft SQL Server了。在判断过动态网页使用的是何种脚本以后,就要判断数据库类型了。这在脚本注入的过程中,是最基础最重要的一个过程。
菜鸟级别使用的一般有2种方法:
一、 利用数据库服务器的系统变量进行数据库判断
http://www.2cto.com /index.asp?ID=1 and user>0
在为过滤的脚本系统中,此语句直接被判断为正常语句,执行并给用户进行反馈,则此脚本系统使用的是Microsoft SQL Server数据库;还可以得到当前连接的数据库的用户名是否存在“user”中。
二、 利用系统表进行数据库判断
http://www.2cto.com /index.asp?ID=1 and (select count (*) from sysobjects)>0
http://www.2cto.com /index.asp?ID=1 and (select count (*) from msysobjects)>0
一般情况下,Microsoft Access的系统表是msysobjects,默认状态下用户没有访问权限,而Microsoft SQL Server的系统表是sysobjects,默认状态下用户是有访问权限的。
若数据库是Microsoft SQL Server,且没有进行参数的过滤,则运行第一个语句后,显示的页面是正常的,第二条语句的结果是异常的;若数据库是Microsoft Access,那么两个链接得到的页面都是异常的
查看更多文章,关注下方二维码
以上是关于判断数据库类型的主要内容,如果未能解决你的问题,请参考以下文章