云服务器网:购买云服务器和VPS必上的网站!

探测MSSQL盲注中的版本探测技术

SQL盲注是指不知道MSSQL的结构和数据,通过编写一些特殊的SQL语句去查询并获得服务器上的信息,从而实现MSSQL盲注攻击。下面将介绍如何通过版本探测技术来检测MSSQL盲注中的版本信息。
第一步:通错误误信息检测目标MSSQL的版本
可使用以下毛病信息来

SQL盲注是指不知道MSSQL的结构和数据,通过编写一些特殊的SQL语句去查询并获得服务器上的信息,从而实现MSSQL盲注攻击。下面将介绍如何通过版本探测技术来检测MSSQL盲注中的版本信息。

第一步:通错误误信息检测目标MSSQL的版本

可使用以下毛病信息来判断目标MSSQL的版本:

SQL Server 2000:毛病分别可能为:”客户机获得的日期格式不正确”、”客户真个游标不被支持”、”客户真个结果集尺寸不被支持”

SQL Server 2005:毛病信息为:”嵌套读要求只在打开游标时返回结果”

SQL Server 2008:毛病信息为:”Unable to cast objects of type ‘System.String’ to type ‘System.Data.SqlTypes.SqlInt32’.”

第二步:使用 coalesce函数 来检测MSSQL盲注中的版本

COALESCE 函数是一个可以接受任意数量参数并返回第一个不为NULL值的参数,该函数在sqlserver2005 引入,所以我们可以通过使用COALESCE函数来检测MSSQL盲注中的版本。例如:

SELECT COALESCE(DB_ID(‘master’), 0);

//如果MSSQL的版本大于2005,将会返回1;否则,将会返回0

第三步:使用sys.db_features表来测试MSSQL盲注中的版本

使用sys.db_features表可以检测MSSQL的版本信息,也能够检测其他的功能会不会可用:

SELECT FEATURE_NAME FROM sys.db_features WHERE feature_name IN (‘Database_Upgrade_Transact_SQLAccess’, ‘Database_Upgrade_Analysis_Services’ );

//如果不返回任何记录,则version 为2005;如果返回任何一条记录,则版本高于2005。

本文来源:https://www.yuntue.com/post/234623.html | 云服务器网,转载请注明出处!

关于作者: yuntue

云服务器(www.yuntue.com)是一家专门做阿里云服务器代金券、腾讯云服务器优惠券的网站,这里你可以找到阿里云服务器腾讯云服务器等国内主流云服务器优惠价格,以及海外云服务器、vps主机等优惠信息,我们会为你提供性价比最高的云服务器和域名、数据库、CDN、免费邮箱等企业常用互联网资源。

为您推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注