目前,互联网上动态网页所使用的数据库,最常见的就是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,那么两个链接得到的页面都是异常的
查看更多关于脚本注入:判断数据库类型 - 网站安全 - 自学p的详细内容...