在SQL数据库中使用别名用户的安全问题_SQL SERVER数据库_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

在SQL数据库中使用别名用户的安全问题[组图]

作者:黑客防线网安SQL维护基地 来源:黑客防线网安SQL维护基地 浏览次数:0

本篇关键词:安全问题组图用户
黑客防线网安网讯:  SQL Server有很多很好用的小功能,但是有时候这些功能反过来给你制造麻烦。其中一个这样的问题是别名用户的使用。本技巧教你如何在数据库中建立别名用户时找到安全漏洞,不过在SQL Serv...

  SQL Server有很多很好用的小功能但是有时候这些功能反过来给你制造麻烦其中一个这样的问题是别名用户的使用本技巧教你如何在数据库中建立别名用户时找到安全漏洞不过在SQL Server 2008种不推荐这个功能。

  首先,你可以对每个数据库运行下面的简单查询或者针对所有数据库操作它来运行以便找到带有“dbo”访问权限的用户。

  SELECT DISTINCT DB_NAME() DATABASE_NAME,

  SU.NAME DATABASE_USERNAME

  FROM SYSUSERS SU

  JOIN SYSMEMBERS SM

  ON SM.MEMBERUID = SU.UID

  INNER JOIN SYSMEMBERS SM1

  ON SM.MEMBERUID = SM1.MEMBERUID

  INNER JOIN SYSUSERS SU1

  ON SM1.GROUPUID = SU1.UID

  AND SU1.NAME = 'db_owner'

  AND SU.NAME <> 'dbo'

  但是,此查询可能不能找到所有具有“dbo”访问权限的用户,因为SQL Server 中的一个安全漏洞。让我来解释这个问题。

  让我们创建两个登录,AliasUser1和DBUser1.

  别名AliasUser1分配给“dbo”角色。

  把用户DBUser1添加到角色“dbo”中,如果我们需要把“dbo”权限授给一个数据库用户,那么这是一种很正常的行为。

  下面的脚本将为我们做这些动作:

  IF NOT EXISTS (SELECT *

  FROM SYS.SERVER_PRINCIPALS

  WHERE NAME = N'AliasUser1‘)

  CREATE LOGIN [AliasUser1]

  WITH PASSWORD=N'test', DEFAULT_DATABASE=[master], DEFAULT_LANGUAGE=[us_english],

  CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF

  GO

    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-9933-1.html
网站维护教程更新时间:2012-03-21 02:27:35  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer