Sql-Server

預設公共設置

  • July 22, 2009

有誰知道 sql 2005/8 的預設 PUBLIC 設置存在任何安全風險?

我執行了 sp_helprotect,它列出了 PUBLIC 授權,現在我有一個審計員告訴我,我有安全風險,因為 PUBLIC 可以訪問系統資訊。在我開始介紹我的案例之前,我想看看是否有人可以提供任何連結或資訊,這些連結或資訊將詳細說明預設設置如何導致安全風險。

作為記錄,審計員提到這些設置允許破解密碼,因為他們可以查看密碼雜湊。我無法驗證該設置是否允許通過 sys 目錄視圖查看該資訊。

提前致謝

2000 年以來,公共角色所獲得的權限比 2005 年以後要多得多——這可能是審計師問題的根源。使用者/模式分離應該解決大多數問題,但您應該創建一個具有最小權限的使用者並查看它可以看到什麼。你會想嘗試:

master.sys.databases(以及任何其他可能洩露實例中儲存內容的資訊)master.dbo.syslogins(其中包含密碼散列 - sysxlogins on 2000)

而且您還想更改 master 中的所有 XP,以便公共角色對其中任何一個都沒有執行權限。這裡有一篇文章和一段程式碼可以做到這一點

請注意,不建議以任何方式更改公共角色本身。

希望這可以幫助!

PS 如果您在 syslogins 表中返回 NULL 密碼,那是因為登錄沒有使用 SQL 身份驗證。僅使用 Windows 是消除此風險的好方法,但您仍需要為(已禁用)SA 帳戶設置密碼。

引用自:https://serverfault.com/questions/32142