DBO对服务器有什么害处?

时间:2008-11-17 15:41:24

标签: sql-server security sql-server-2005 dbo

除了执行我在SQL 2005安装中禁用的XP_CmdShell之外,获得数据库DBO权限的恶意用户可以做什么:

  • 到我的数据库,
  • 到我的服务器?

我正在评估某人获取DBO以证明在应用程序中运行“最少特权”用户帐户的最坏情况安全风险。有人声称,由于我们没有使用“机密数据”,因此获得DBO的人的影响很小。

6 个答案:

答案 0 :(得分:3)

他可以运行任何XP_ sproc,这样就可以搞砸注册表并弄乱你的整个服务器。 删除/更改表等...

答案 1 :(得分:3)

dbo是数据库所有者 - 可能是也可能不是sa。作为dbo,你基本上可以自由统治拥有的数据库 - 显然,这可能导致更改权限,删除表等。

作为sa,你可以自由统治服务器。这包括安装新的扩展过程(如果启用了CLR,则安装.NET程序集),以及dbo可以执行的所有操作(适用于所有数据库)。而且,您还可以再次enable xp_cmdshell

答案 2 :(得分:2)

有关SQL注入的大量在线信息。限制连接到SQL的用户的权限是一个非常重要的说明。

http://en.wikipedia.org/wiki/SQL_injection

这是我几年前遇到的一个简单而可怕的例子。网站使用URL动态生成SQL状态并运行它们。我能够猜到像

这样的网址

www.blah.com /.../ load.aspx?的itemid = 1

像这样生成SQL

SELECT * FROM id = 1的项目

所以我发了这个网址:

www.blah.com /.../ load.aspx?itemid = 1;删除表项目

爆炸。

至少,如果数据库连接不是dbo,则会失败。

答案 3 :(得分:0)

说白了,如果他拥有你的数据库,他 pwns 你的数据库。也就是说,你可以亲吻你的数据。

答案 4 :(得分:0)

  

也就是说,你可以亲吻你的数据。

但是你在磁带上的磁盘上有备份,所以你是金色的!

答案 5 :(得分:0)

呀。典型的防御是“好吧,至少他不能弄乱他的数据库之外的任何东西”(xp_CmdShell没有启用)。我,我不舒服在我家的一个锁着的壁橱里有一个疯狗强奸犯。但这种比喻对管理层来说并不是一个很好的卖点。