2016-10-03 55 views
-3

我聽說數據庫鏈接對組織來說不好使用。爲什麼它對安全有害?爲什麼數據庫鏈接對安全性不好

+1

什麼是數據庫鏈接? – greenapps

+0

@greenappsIts什麼可以幫助您從一臺服務器連接到另一臺服務器 – mfredy

+1

數據庫鏈接最大的安全風險是無能。例如,無用設置可能會將DBA權限授予所有公共用戶。在一些大型組織中,爲了防止這種情況(這種情況更可能是由無能引起的而不是蓄意瀆職造成的),一律禁止使用數據庫鏈接。期間,討論結束。相當常見。 – mathguy

回答

3

你從哪裏聽到這個消息?

數據庫鏈接,就像任何工具,有自己的應用和誤用。關於使用數據庫鏈接沒有任何固有的不安全性。但是,確實有很多方法可以使用不安全的數據庫鏈接構建系統。

數據庫鏈接讓你一個數據庫連接到另一個。一般來說,您可以定義數據庫鏈接,以便它以遠程數據庫上的特定固定用戶的身份連接到遠程數據庫,或者可以定義數據庫鏈接,以便以當前用戶的身份連接到遠程數據庫。這些配置有不同的問題。

如果使用固定的用戶,你必須要小心的是,可以訪問本地數據庫鏈接的用戶應該有訪問權限的任何遠程數據庫用戶。如果您使用相對強大的帳戶來創建數據庫鏈接,然後將該鏈接授予相對較低權限的用戶,那肯定會成爲安全問題。確定發生這種情況的關注情況也是具有挑戰性的,因爲沒有單一的數據庫能夠全面瞭解情況。如果數據庫A上的用戶Bob對多個表具有隻讀訪問權限,但A上的公共數據庫鏈接以高權限用戶的身份連接到數據庫B,那麼某個危及Bob帳戶的人可以在B上執行命令高度特權的用戶。當然,您可以通過不創建數據庫鏈接作爲高權限用戶來緩解這些問題,在創建公用數據庫鏈接時要小心,在固定用戶將擁有您不想授予所有人的權限時創建專用數據庫鏈接,等

如果使用當前用戶數據庫鏈接,然後在數據庫中的用戶鮑勃連接到數據庫B鮑勃和具有Bob執行數據庫B.任何特權在一般情況下,很可能是更容易獲得。無意中做一些愚蠢的事至少要困難得多。然而,這種方法的缺點是Bob需要在兩個數據庫上保持密碼同步,否則數據庫鏈接將無法工作。這通常需要開發一些基礎設施,以便Bob能夠重置所有數據庫的密碼(或者使用某種外部認證),這對於設置和維護來說是一項工作。有時,它還會限制DBA在混合環境中可以配置哪些安全措施。例如,當您將數據庫A升級到11.2時,您可能不希望啓用區分大小寫的密碼,直到數據庫B被類似升級。如果在很多不同的升級時間表上有很多系統之間的數據庫鏈接,這類事情可能會涉及到。

1

幾年前,有一個重大的錯誤,即「系統變更號碼」可能會在數據庫上被推送,並且這將通過數據庫鏈接連接到任何數據庫,從而導致級聯失敗。根據組織的風險厭惡程度,將數據庫與其他組織隔離開來並減少任何「爆發」的影響可能是一個明智的預防措施。 「

」當這個漏洞變得有趣時,當兩個數據庫通過數據庫鏈接連接時,SCN與最高SCN同步,因此可以通過數據庫鏈接將數據庫增加到接近最大的SCN將級聯到所有其他相互關聯的數據庫,結果可能是ORA-600錯誤,並可能導致數據庫與較低SCN數據庫崩潰。「

https://www.integrigy.com/oracle-security-blog/critical-oracle-database-bug-system-change-number-scn-cve-2012-0082