一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數據庫技術|

服務器之家 - 數據庫 - Oracle - Oracle Database Server 'TNS Listener'遠程數據投毒漏洞(CVE-2012-1675)的完美解決方法

Oracle Database Server 'TNS Listener'遠程數據投毒漏洞(CVE-2012-1675)的完美解決方法

2019-12-31 15:20AlfredZhao Oracle

這篇文章主要介紹了Oracle Database Server 'TNS Listener'遠程數據投毒漏洞(CVE-2012-1675的完美解決方法的相關資料,本文介紹的非常詳細,具有參考借鑒價值,需要的朋友可以參考下

環境:Windows 2008 R2 + Oracle 10.2.0.3

應用最新bundle patch后,掃描依然報出漏洞 Oracle Database Server 'TNS Listener'遠程數據投毒漏洞(CVE-2012-1675)

•1.確定解決方案

•2.應用解決方案

•3.驗證修補情況

•4.Reference

1.確定解決方案

安全廠家給出的解決辦法:

鏈接:http://www.oracle.com/technetwork/topics/security/alert-cve-2012-1675-1608180.html

根據此鏈接得到解決方法:

?
1
2
3
4
Solution
Recommendations for protecting against this vulnerability can be found at:
My Oracle Support Note 1340831.1 for Oracle Database deployments that use Oracle Real Application Clusters (RAC).
My Oracle Support Note 1453883.1 for Oracle Database deployments that do not use RAC.

目前這里環境不是RAC,參考文檔1453883.1:

Using Class of Secure Transport (COST) to Restrict Instance Registration (文檔 ID 1453883.1)

找到兩種解決方案:

?
1
2
3
4
5
6
7
SOLUTION
There are two methods that can be used to protect the listener using COST "SECURE_REGISTER_listener_name =" in stand alone database installations.
1) Restricting registration to the TCP protocol (Requires the fix for BUG:12880299)
- or -
2) Restricting registration to the IPC protocol (The patch for BUG:12880299 is NOT required for the IPC method)
Either method accomplishes the same goal but it is your choice which type to implement subject to the restriction* noted below. Both methods will be discussed.
•The second method (using IPC) cannot be used if the database is a member of an Oracle Data Guard broker configuration.

我這里選擇第一種解決方案:

1) Restricting registration to the TCP protocol (Requires the fix for BUG:12880299)。

2.應用解決方案

2.1 確定現狀

監聽配置文件:listener.ora

存放路徑:cd %ORACLE_HOME%/network/admin

內容(保證安全,所有IP相關信息已二次處理):

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# listener.ora Network Configuration File: E:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\listener.ora
# Generated by Oracle configuration tools.
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST =192.168.1.138)(PORT = 1521))
)
)
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = E:\oracle\product\10.2.0\db_1)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ANY")
)
(SID_DESC =
(GLOBAL = orcl)
(ORACLE_HOME = E:\oracle\product\10.2.0\db_1)
(SID_NAME = orcl)
)
)
ADR_BASE_LISTENER = E:\oracle

數據庫監聽信息,原始都是空值:

?
1
2
3
4
5
6
7
8
9
SQL> show parameter local_listener
NAME TYPE VALUE
------------------------------------ ----------- ---------------------------
local_listener string
SQL> show parameter remote_listener;
NAME TYPE VALUE
------------------------------------ ----------- ---------------------------
remote_listener string
SQL>

2.2 嘗試應用解決方案

2.2.1 停止監聽

lsnrctl stop listener

2.2.2 修改監聽配置文件

?
1
2
Add the COST TCP protocol restriction "SECURE_REGISTER_[listener_name] = (TCP)" to the listener.ora.
Match the COST parameter variable listener_name with the name of the listener you are using in the listener.ora, e.g., If your listener name is "LISTENER_PROD" then use SECURE_REGISTER_LISTENER_PROD = (TCP)

實際修改過程:

切換到監聽配置文件所在路徑:

cd %ORACLE_HOME%/network/admin

直接修改listener.ora文件,在文件的末尾添加一行:

?
1
SECURE_REGISTER_LISTENER = (TCP)

2.2.3 啟動監聽

啟動監聽:

?
1
lsnrctl start listener

立即注冊動態監聽:

?
1
SQL> alter system register;

2.2.4 設置local_listener

?
1
2
alter system set local_listener='(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST =192.168.1.138)(PORT = 1521)))' scope = both;
show parameter local_listener

2.2.5 查看監聽服務信息

?
1
2
3
4
5
lsnrctl services listener
E:\oracle\product\10.2.0\db_1\network\ADMIN>lsnrctl services listener
LSNRCTL for 32-bit Windows: Version 10.2.0.3.0 - Production on 21-9月 -2016 10:2
2:02
Copyright (c) 1991, 2006, Oracle. All rights reserved.
?
1
2
3
4
5
6
7
8
9
10
11
12
13
正在連接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
服務摘要..
服務 "PLSExtProc" 包含 1 個例程。
例程 "PLSExtProc", 狀態 UNKNOWN, 包含此服務的 1 個處理程序...
處理程序:
"DEDICATED" 已建立:0 已被拒絕:0
LOCAL SERVER
服務 "orcl" 包含 1 個例程。
例程 "orcl", 狀態 UNKNOWN, 包含此服務的 1 個處理程序...
處理程序:
"DEDICATED" 已建立:3 已被拒絕:0
LOCAL SERVER
命令執行成功

3.驗證修補情況

3.1 注釋COST規則驗證監聽情況

3.1.1 注釋掉listener.ora文件的COST規則并重啟監聽

?
1
Comment the COST rule in listener.ora and restart the listener.

直接修改listener.ora文件,在之前添加的一行前面加上"#"注釋此行。

?
1
#SECURE_REGISTER_LISTENER = (TCP)

重啟監聽:

?
1
2
lsnrctl stop listener
lsnrctl start listener

3.1.2 設置remote_listener后查看監聽服務信息

設置remote_listener:

?
1
2
SQL> alter system set remote_listener='(ADDRESS = (PROTOCOL = TCP)(HOST =192.168.1.138)(PORT = 1521))' scope=memory;
SQL> show parameter remote_listener

快速動態監聽注冊:

?
1
SQL> alter system register;

查看監聽服務信息,發現有“REMOTE SERVER”字樣,說明此時漏洞存在:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
E:\oracle\product\10.2.0\db_1\network\ADMIN>lsnrctl services listener
 
LSNRCTL for 32-bit Windows: Version 10.2.0.3.0 - Production on 21-9月 -2016 10:4
4:18
 
Copyright (c) 1991, 2006, Oracle. All rights reserved.
 
正在連接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
服務摘要..
服務 "PLSExtProc" 包含 1 個例程。
例程 "PLSExtProc", 狀態 UNKNOWN, 包含此服務的 1 個處理程序...
處理程序:
"DEDICATED" 已建立:0 已被拒絕:0
LOCAL SERVER
服務 "orcl" 包含 2 個例程。
例程 "orcl", 狀態 UNKNOWN, 包含此服務的 1 個處理程序...
處理程序:
"DEDICATED" 已建立:0 已被拒絕:0
LOCAL SERVER
例程 "orcl", 狀態 READY, 包含此服務的 2 個處理程序...
處理程序:
"DEDICATED" 已建立:0 已拒絕:0 狀態:ready
LOCAL SERVER
"DEDICATED" 已建立:0 已拒絕:0 狀態:ready
REMOTE SERVER
(DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
服務 "orclXDB" 包含 1 個例程。
例程 "orcl", 狀態 READY, 包含此服務的 1 個處理程序...
處理程序:
"D000" 已建立:0 已被拒絕:0 當前: 0 最大: 1002 狀態: ready
DISPATCHER <machine: INSPUR-IRMS-138, pid: 6728>
(ADDRESS=(PROTOCOL=tcp)(HOST=INSPUR-IRMS-138)(PORT=52676))
服務 "orcl_XPT" 包含 1 個例程。
例程 "orcl", 狀態 READY, 包含此服務的 2 個處理程序...
處理程序:
"DEDICATED" 已建立:0 已拒絕:0 狀態:ready
LOCAL SERVER
"DEDICATED" 已建立:0 已拒絕:0 狀態:ready
REMOTE SERVER
(DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
命令執行成功

3.2 取消注釋COST規則驗證監聽情況

3.2.1 取消注釋COST規則重啟監聽并快速注冊,驗證監聽服務信息

去掉監聽文件末尾行前的“#”號:

?
1
SECURE_REGISTER_LISTENER = (TCP)

重啟監聽:

?
1
2
lsnrctl stop listener
lsnrctl start listener

快速注冊動態監聽:

?
1
SQL> alter system register;

驗證監聽服務信息,按官檔描述,正常應該沒有“REMOTE SERVER”字樣:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
E:\oracle\product\10.2.0\db_1\network\ADMIN>lsnrctl services listener
 
LSNRCTL for 32-bit Windows: Version 10.2.0.3.0 - Production on 21-9月 -2016 11:0
0:23
 
Copyright (c) 1991, 2006, Oracle. All rights reserved.
 
正在連接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
服務摘要..
服務 "PLSExtProc" 包含 1 個例程。
例程 "PLSExtProc", 狀態 UNKNOWN, 包含此服務的 1 個處理程序...
處理程序:
"DEDICATED" 已建立:0 已被拒絕:0
LOCAL SERVER
服務 "orcl" 包含 2 個例程。
例程 "orcl", 狀態 UNKNOWN, 包含此服務的 1 個處理程序...
處理程序:
"DEDICATED" 已建立:1 已被拒絕:0
LOCAL SERVER
例程 "orcl", 狀態 READY, 包含此服務的 1 個處理程序...
處理程序:
"DEDICATED" 已建立:0 已拒絕:0 狀態:blocked
REMOTE SERVER
(DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
服務 "orclXDB" 包含 1 個例程。
例程 "orcl", 狀態 READY, 包含此服務的 1 個處理程序...
處理程序:
"D000" 已建立:0 已被拒絕:0 當前: 0 最大: 1002 狀態: ready
DISPATCHER <machine: INSPUR-IRMS-138, pid: 6728>
(ADDRESS=(PROTOCOL=tcp)(HOST=INSPUR-IRMS-138)(PORT=52676))
服務 "orcl_XPT" 包含 1 個例程。
例程 "orcl", 狀態 READY, 包含此服務的 1 個處理程序...
處理程序:
"DEDICATED" 已建立:0 已拒絕:0 狀態:blocked
REMOTE SERVER
(DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
命令執行成功
實際發現有“REMOTE SERVER”字樣,但是對應的監聽都是blocked.

3.2.2 查看監聽日志

cd %ORACLE_HOME%/network/log

listener.log日志文件已經有TNS-01194信息,跟官檔一致:

?
1
2
3
4
5
6
7
21-9月 -2016 11:00:23 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=Administrator))(COMMAND=services)(ARGUMENTS=64)(SERVICE=listener)(VERSION=169870080)) * services * 0
21-9月 -2016 11:00:54 * service_register_NSGR * 1194
TNS-01194: 監聽程序命令未到達安全傳輸
21-9月 -2016 11:01:54 * service_register_NSGR * 1194
TNS-01194: 監聽程序命令未到達安全傳輸
21-9月 -2016 11:02:54 * service_register_NSGR * 1194
TNS-01194: 監聽程序命令未到達安全傳輸

 3.2.3 還原remote_listener設置

測試完成,還原remote_listener設置

?
1
2
alter system set remote_listener='' scope=memory;
SQL> alter system set remote_listener='' scope=memory;

3.2.4 查看監聽服務信息

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
E:\oracle\product\10.2.0\db_1\network\ADMIN>lsnrctl services listener
LSNRCTL for 32-bit Windows: Version 10.2.0.3.0 - Production on 21-9月 -2016 11:2
2:17
Copyright (c) 1991, 2006, Oracle. All rights reserved.
正在連接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
服務摘要..
服務 "PLSExtProc" 包含 1 個例程。
例程 "PLSExtProc", 狀態 UNKNOWN, 包含此服務的 1 個處理程序...
處理程序:
"DEDICATED" 已建立:0 已被拒絕:0
LOCAL SERVER
服務 "orcl" 包含 1 個例程。
例程 "orcl", 狀態 UNKNOWN, 包含此服務的 1 個處理程序...
處理程序:
"DEDICATED" 已建立:1 已被拒絕:0
LOCAL SERVER
命令執行成功

4.Reference

•Using Class of Secure Transport (COST) to Restrict Instance Registration (文檔 ID 1453883.1)

原文鏈接:http://www.cnblogs.com/jyzhao/p/5892006.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 美国一级大黄大色毛片 | 香蕉 在线播放 | 亚洲AV国产国产久青草 | 亚洲AV久久无码精品九号软件 | 嫩草影院久久99 | 99在线视频精品 | 欧洲喷浆乌克兰 | ass老妇黑森林pic | 国产欧美成人不卡视频 | 国产福利视频一区二区微拍视频 | 精品国产一区二区 | 大桥未久一区二区 | 日日爽 | 亚洲成人免费 | 欧美ay| 欧美精品一国产成人性影视 | 久久re热在线视频精99 | 免费观看视频网站 | 色综合91久久精品中文字幕 | 91精品国产综合久久消防器材 | 欧美综合色网 | 精品久久久久久国产91 | 午夜AV国产欧美亚洲高清在线 | 16男男gaygays | 91久久99热青草国产 | 亚洲国产日韩欧美在线vip1区 | 福利视频免费 | 憋尿调教绝望之岛 | 亚洲精品福利在线 | 美女被躁爽死 | 精品国产乱码久久久久久免费流畅 | 无码AV熟妇素人内射V在线 | 日本-区二区三区免费精品 日本破处 | 精品亚洲欧美中文字幕在线看 | 婚前试爱免费观看 | 香蕉免费一区二区三区在线观看 | 精品日韩欧美一区二区三区在线播放 | 丝袜老师好湿好紧我要进去了 | 91香蕉视频网址 | 精品视频99 | 日韩视频免费 |