當管理sql server內在的帳戶和密碼時,我們很容易認為這一切都相當的安全。畢竟,你的SQL Server系統被保護在防火牆裡,而且還有Windows身份驗證的保護,所有用戶都需要密碼才能進入。這聽起來非常的安全,特別是當你認為所有人都這麼做的時候。可實際上,它並不像我們想象得那麼安全。
在這裡,我們列出了一些對於SQL Server密碼來說非常危險的判斷:
密碼測試無需計劃
當進行測試時,直接就開始嘗試破解密碼將是一個很大的錯誤。無論你是在本地還是通過互聯網進行測試,都強烈建議你獲得權限,並建議一個帳戶被鎖定後的回滾方案。最後你要做的就是確保在賬戶被鎖定時,數據庫用戶無法進行操作,而且與之相連的應用程序也將無法正常運行。
通過互聯網,密碼仍然是安全的
對於通過混合方式實現的SQL Server,你可以很容易的通過一些分析軟件(比如OmniPeek、Ethereal)立刻從網上抓到它的密碼。同時,Cain and Abel可以用來抓取基於TDS的密碼。你可能以為通過內網交換機就可以避免這一問題?然而,Cain的ARP中毒路由功能就可以很輕松的破解它。在大約一分鐘之內,這個免費軟件就可以攻破你的交換機,並看到本地網絡的內部數據交換,從而幫助其它軟件更容易的抓取密碼。
事實上,問題並沒有就此結束。有些誤解認為在SQL Server中使用Windows身份驗證是很安全的。然而,事實並非如此。上述軟件同樣可以迅速的從網上抓到Windows、Web、電子郵件等相關的密碼,從而獲得SQL Server的訪問權限。
通過使用密碼政策,我們就可以不用測試密碼
無論你的密碼政策有多嚴厲,卻總會有一些辦法可以繞開它。比如現在有一個未進行配置的服務器、一個Windows域外的主機、一個未知的SQL Server或者一些特殊的工具,它們可以破解最強壯的密碼。這些東西就可以利用你密碼的弱點並是你的代碼政策變得無效。
另外,同樣重要的是,有些測試結果可能會說由於你的密碼已經非常強壯,你的數據庫很安全,但你千萬不要輕信。一定要自己在測試並驗證一下,密碼缺陷是否還在。盡管你可能會覺得一切都很好,但實際上你可能落掉了一些東西。
你只需擔心你主數據庫服務器
既然SQL Server密碼是不可重獲的,那如果我知道他很強壯、很安全,我有為什麼要破解他呢?
事實上,SQL Server的密碼是可以重獲的。在SQL Server 7和SQL Server 2000中,你可以使用像Cain and Abel或者收費的NGSSQLCrack這種工具來獲得密碼哈希表,而後通過暴力對其破解進行攻擊。這些工具使你可以對SQL Server密碼SHA哈希表進行反向工程。盡管破解的結果並不能夠保證,但它確實是SQL Server的一個弱點。
Microsoft Baseline Security Analyzer是一個用來根除SQL Server弱點的工具,但他並不完善,特別是在密碼破解方面。對於深層的SQL Server和Windows密碼破解,我們需要使用第三方軟件,如免費的SQLat和SQLninja(可以在SQLPing 3中找到)和Windows密碼破解工具,如ElcomSoft's Proactive Password Auditor和Ophcrack。
此外,使用在SQL Server中使用Windows身份驗證並不表示你的密碼就是安全的。一些人只要了解如何破解Windows密碼,在花一些時間,就可以破解你的密碼並控制整個網絡。特別是,如果他們使用<>Ophcrack's LiveCD來攻擊一個物理上不安全的Windows主機,比如筆記本電腦或者易可達的服務器,那將變得更加容易。
你只需擔心你主數據庫服務器
我們很容易把關注點集中在自己的SQL Server系統上,而忽略了網絡中可能有的MSDE、SQL Serve Express和其它一些可能的SQL Server程序。這些系統可能正在使用不安全的默認設置,甚至根本就沒有密碼。通過使用SQLPing 3這樣的工具來對數據庫服務器上的這些系統進行攻擊,你將很容易地被破解。
IT像其他東西一樣,你總是被一些細節所打倒。如果可以拋棄這些對SQL Server密碼的危險判斷,你必將改善你的SQL Server的安全。
關鍵詞:微軟