設定 VNCR on Oracle RAC
在Oracle RAC環境下,版本為 11.2.0.4,透過弱點掃描工具發現有 Oracle TNS Listener Remote Poisoning 的弱點被掃出來,來看看這個問題的相關資訊。
Oracle 在2012了有針對此問題發佈了安全性警示 CVE-2012-1675,以下為官方說明:
b) 查看 listener.ora 目前的內容 : cat /u01/app/11.2.0/grid/network/admin/listener.ora
c) 加入以下內容
# Enable VNCR
VALID_NODE_CHECKING_REGISTRATION_LISTENER=ON
VALID_NODE_CHECKING_REGISTRATION_LISTENER_SCAN1=ON
VALID_NODE_CHECKING_REGISTRATION_LISTENER_SCAN2=ON
VALID_NODE_CHECKING_REGISTRATION_LISTENER_SCAN3=ON
REGISTRATION_INVITED_NODES_LISTENER_SCAN1=(srvrac1,srvrac2)
REGISTRATION_INVITED_NODES_LISTENER_SCAN2=(srvrac1,srvrac2)
REGISTRATION_INVITED_NODES_LISTENER_SCAN3=(srvrac1,srvrac2)
VALID_NODE_CHECKING_REGISTRATION_LISTENER=ON
設定 ON 代表只允許本機才能註冊, 所以需要再增加以下設定
REGISTRATION_INVITED_NODES_LISTENER_SCAN1=(srvrac1,srvrac2)
允許 srvrac1 與 srvrac2 註冊
Oracle 在2012了有針對此問題發佈了安全性警示 CVE-2012-1675,以下為官方說明:
此安全警報解決了安全問題CVE-2012-1675,這是TNS監聽器中的一個漏洞,最近被披露為影響Oracle數據庫服務器的“TNS監聽器毒藥攻擊”。 此漏洞無需身份驗證即可遠程利用,即可以通過網絡利用此漏洞而無需用戶名和密碼。 遠程用戶可以利用此漏洞來影響系統的機密性,完整性和可用性。
Solution :
1) 11.2.0.3之前的版本只能用設定 COST (Class of Secure Transport) 的方式,官方文件有針對此設定的方式,包含RAC架構與非RAC架構分別做說明。
2) 11.2.0.4之後的版本可使用設定 VNCR 的方式來保護這個弱點,而此方式的設定對DBA來說相對第一種方式簡單的多。
這次針對第二種方式說明
環境: Oracle RAC 11.2.0.4
Hostname: srvrac1, srvrac2
SID: rac1, rac2
Step1 : 編輯 listener.ora 檔案, 須分別在兩個Node上編輯
a) 查看檔案路徑 : lsnrctl status
b) 查看 listener.ora 目前的內容 : cat /u01/app/11.2.0/grid/network/admin/listener.ora
c) 加入以下內容
# Enable VNCR
VALID_NODE_CHECKING_REGISTRATION_LISTENER=ON
VALID_NODE_CHECKING_REGISTRATION_LISTENER_SCAN1=ON
VALID_NODE_CHECKING_REGISTRATION_LISTENER_SCAN2=ON
VALID_NODE_CHECKING_REGISTRATION_LISTENER_SCAN3=ON
REGISTRATION_INVITED_NODES_LISTENER_SCAN1=(srvrac1,srvrac2)
REGISTRATION_INVITED_NODES_LISTENER_SCAN2=(srvrac1,srvrac2)
REGISTRATION_INVITED_NODES_LISTENER_SCAN3=(srvrac1,srvrac2)
VALID_NODE_CHECKING_REGISTRATION_LISTENER=ON
設定 ON 代表只允許本機才能註冊, 所以需要再增加以下設定
REGISTRATION_INVITED_NODES_LISTENER_SCAN1=(srvrac1,srvrac2)
允許 srvrac1 與 srvrac2 註冊
Step2 : Reload listener
a) 查看哪一個 Listener 分別跑在哪一個 Node
listener status LISTENER
listener status LISTENER_SCAN1
listener status LISTENER_SCAN2
listener status LISTENER_SCAN3
b) reload listener
listener reload LISTENER
listener reload LISTENER_SCAN1
執行以上步驟後便設定完成,Oracle RAC 已有防護免於 TNS Listener Remote Poisoning 攻擊。
留言
張貼留言