weblogic安全基線標準

jaymarco發表於2020-12-01


一、安全基線要求

為了降低weblogic軟體由於安全控制不足而引起的安全風險,因此需要制定一套weblogic安全基線以確保線上系統執行穩定。請參考以下安全事項來最佳化weblogic系統。

序號

檢測項

檢測內容

預期結果

1

使用者許可權

檢視執行weblogic的使用者許可權

weblogic的使用者許可權最小化

2

帳戶共用

應為不同的使用者分配不同的Weblogic帳戶,不允許多個使用者共用同一個帳戶

應為不同的使用者分配不同的Weblogic帳戶,不允許多個使用者共用同一個帳戶

3

帳戶清理

應刪除過期、無用帳戶

登陸weblogic  web管理控制檯:
  安全領域->配置->使用者,檢視是否有無用、過期、且未封鎖的使用者。

4

禁止特權身份執行

應禁止以特權使用者身份執行WebLogic

Enable Post-Bind UID和" Enable Post-Bind GID "兩個選項必須勾選並配置相關的UID和GID 。

5

口令長度

應設定Weblogic帳戶口令長度至少為8位


6

帳戶封鎖

應配置當帳戶連續認證失敗次數超過 5次(不含 5 次),鎖定該帳戶30分鐘

配置帳戶連續認證失敗次數超過 5次(不含 5 次),鎖定該帳戶10分鐘

7

日誌啟用

應啟用日誌功能

1、審計型別設定為“Change   Log and Audit”
  2、“Rotation type”設定為“By Time”
  3、“Files to retain”設定為“180”
  4、“Severity level”設定為“Warning”

8

審計策略

應合理配置審計策略

【Weblogic 8】
  審計策略的審計級別(Severity)已經設為FAILURE,Configuration  Auditing 已經設為logAudit。
  【Weblogic 9&10】
  審計策略的審計級別(Severity)已經設為“FAILURE”,“Configuration Audit Type”已經設為“Change Log   and Audit”。

9

執行模式

應更改執行模式為“Production Mode”

WebLogic以Production Mode模式執行。

10

Send Server header

應禁用 Send Server header

在域名下的server資料夾,選擇管理的伺服器,在右側版面protocols皮膚下,點選http標籤,勾選Send Server header

11

刪除 sample 程式

應刪除 sample 程式

1、安裝時勾選不安裝Sample
  2、已安裝的,刪除安裝目錄下的 Sample 目錄

12

自定義錯誤頁面

應自定義錯誤頁面

已自定義403、404、500錯誤頁面。
  要求:重定向後的頁面不能顯示任何錯誤程式碼和錯誤路徑資訊

13

超時時間策略

600,或其他合理值

設定 session 超時時間數值不為0,且在合理範圍內。

14

連線數設定

2000,或其他合理值

最大連線數和最大頻寬的數值不為0,且在合理範圍內。

二、基線整改

2.1 使用者許可權

檢視執行weblogic 的使用者許可權,實現weblogic 使用者許可權最小化

、檢查weblogic 的啟動使用者

使用ps -ef|grep java|grep weblogic可以檢視啟動weblogic的程式使用者

從上圖可以獲知,weblogic程式是使用作業系統的超級管理員root使用者啟動。Root使用者擁有超級許可權,按照安全基線,需要對weblogic的啟動使用者進行整改,整改為作業系統普通使用者啟動(非root)weblogic例項。同時,從上圖可以看出,weblogic的家目錄為:/ycxk/app01/bea/wlserver_10.3/server

2 、使用者許可權整改

1)使用root使用者對中介軟體WebLogic 目錄進行重新授權,需要建立一個普通使用者,以下以weblogic使用者為示例:

# cd /ycxk/app01/

# chown -R weblogic:weblogic ./bea

3 、使用普通使用者重啟weblogic

使用普通使用者啟動weblogic例項,如下圖所示:

2.2 賬戶共用

應為不同的使用者分配不同的Weblogic 帳戶,不允許多個使用者共用同一個帳戶

1 、檢查weblogic 控制檯的賬戶

從上述可以看出,weblogic 控制檯只有兩個使用者,一個是Oracle application software system user ,一個是weblogic 控制檯的超級管理員。所以,並沒有為不同的使用者分配不同的weblogic 賬戶,需整改。 檢查方法,操作步驟:以管理員身份進入控制檯->Security Realms->myrealm->User and  Groups;

2 、賬戶共用整改

1)操作步驟:以管理員身份進入控制檯->Security Realms->myrealm->User and  Groups;

新建->輸入“名稱”->輸入“說明”->輸入“口令”並“確認口令”

選中新建的使用者名稱->組->選擇組->儲存->

3 、測試登入weblogic 控制檯新賬戶

輸入weblogic控制檯URL,鍵入新賬戶與密碼進行登入,如下圖所示:

2.3 賬戶清理

應刪除過期、無用的weblogic 控制檯帳戶

1 、檢查weblogic 控制檯的賬戶

檢查方法,操作步驟:以管理員身份進入控制檯->Security Realms->myrealm->User and  Groups;

2 、帳戶清理整改

1)操作步驟:以管理員身份進入控制檯->Security Realms->myrealm->User and  Groups;

選中使用者 OracleSystemUser ->刪除->是

賬戶清理後

2.4  禁止特權身份執行

應禁止以特權使用者身份執行WebLogic ”Enable Post-Bind UID” " Enable Post-Bind GID " 兩個選項必須勾選並配置相關的UID GID

Weblogic 10.3.6.0 無法找到 Enable Post-Bind UID " Enable Post-Bind GID " 兩個選項

2.5 口令長度

應設定Weblogic 帳戶口令長度至少為8

1 、檢查

檢查方法,操作步驟:Security Realms->myrealm->providers->defaultauthenticator>Provider Specific,檢視minimum password length引數值應8位以上

該值預設為 8 。符合要求

2 、口令長度整改

1)如果minimum password length的值不大於等於8,那麼需要整改。

操作步驟:登入weblogic控制檯->Security Realms->myrealm->providers->defaultauthenticator>Provider Specific->鎖定並編輯->修改minimum password length引數值應8位以上

整改後:

2.6 帳戶封鎖

應配置帳戶連續認證失敗次數超過 5 次(不含 5 次),鎖定該帳戶10 分鐘

1 、檢查

檢查方法,操作步驟:以管理員身份進入控制檯->Security Realms->myrealm->Configuration->User Lockout檢視Lockout Threshold(5) 失敗嘗試次數是否為5次;檢視Lockout Duration(3) 帳號鎖定時間是否為10分鐘;

2 、整改

1)以管理員身份進入控制檯->鎖定並編輯->Security Realms->myrealm->Configuration->User Lockout整改Lockout Threshold(5) 失敗嘗試次數為5;

2)以管理員身份進入控制檯鎖定並編輯->->Security Realms->myrealm->Configuration->User Lockout整改Lockout Duration(3) 帳號鎖定時間是否為10分鐘;

整改後:

2.7 日誌啟用

應啟用日誌功能並調整以下配置,1 、審計型別設定為“Change Log and Audit ”;2 、“Rotation type ”設定為“By Time ”;3 、“Files to retain ”設定為“180 ”;4 、“Severity level ”設定為“Warning

1 、檢查

1)檢查審計型別是否設定為“ Change Log and Audit ”,操作步驟:登入weblogic控制檯->域名->配置->一般資訊>高階,檢視配置審計型別引數值是否為“ Change Log and Audit

2) 檢查“ Rotation type ”設定是否為“ By Time ”;“ Files to retain ”設定是否為“ 180 ”;“ Severity level ”設定是否為“ Warning ”,此時需要檢查 DOMAINLOG SERVERLOG ACCESSLOG 三類日誌。

檢查DOMAINLOG的操作步驟為:登入weblogic控制檯->域名->配置->日誌記錄>檢視滾動型別是否為“按時間”,是否勾選“限制保留的檔案數”,要保留的檔案數的值是否為“180”

檢查SERVERLOG的操作步驟為:登入weblogic控制檯->環境->伺服器->SERVERNAME->日誌記錄->一般資訊,檢視滾動型別是否為“按時間”,是否勾選“限制保留的檔案數”,要保留的檔案數的值是否為“180”

檢查ACCESSLOG的操作步驟為:登入weblogic控制檯->環境->伺服器->SERVERNAME->日誌記錄->HTTP,檢視滾動型別是否為“按時間”,是否勾選“限制保留的檔案數”,要保留的檔案數的值是否為“180”

2 、日誌啟用整改

1)整改審計型別設定為“ Change Log and Audit

操作步驟:登入weblogic控制檯->域名->配置->一般資訊>高階->鎖定並編輯,整改配置審計型別引數值為“ Change Log and Audit ”->儲存->啟用更改

整改後:

2 )整改“ Rotation type ”設定為“ By Time ”;“ Files to retain ”設定為“ 180 ”;“ Severity level ”設定為“ Warning ”,此時需要檢查 DOMAINLOG SERVERLOG ACCESSLOG 三類日誌。

A.整改DOMAINLOG的操作步驟為:登入weblogic控制檯->域名->配置->日誌記錄->鎖定並編輯->整改滾動型別為“按時間”,勾選“限制保留的檔案數”,要保留的檔案數的值為“180”->儲存->啟用更改

整改後:

B.整改SERVERLOG的操作步驟為:登入weblogic控制檯->環境->伺服器->SERVERNAME->日誌記錄->一般資訊->鎖定並編輯,整改滾動型別為“按時間”,勾選“限制保留的檔案數”,要保留的檔案數的值為“180”->儲存->啟用更改

整改後:

2.8  傳送伺服器標頭

1 、檢查

檢查方法,操作步驟:以管理員身份進入控制檯->伺服器->每個SERVERNAME->協議->HTTP->檢查是否Send Server Header勾選;

從上圖可以看出,預設是不勾選“傳送伺服器標頭”,需整改

2 、整改

操作步驟:以管理員身份進入控制檯->伺服器->每個SERVERNAME->協議->HTTP->鎖定並編輯->勾選Send Server Header(“傳送伺服器標頭”)->儲存->啟用更改

整改後:

2.9 刪除示例檔案

應刪除 sample 程式:1 、安裝時勾選不安裝Sample 2 、已安裝的,刪除安裝目錄下的 Sample 目錄

1 、檢查

檢查方法,操作步驟:登入伺服器,檢查weblogic家目錄下,是否存在Sample

從上圖可以看出, weblogic11g 以及 12c 預設是不存在 sample 目錄,無需整改

2 、整改

1)如果存在sample目錄,那麼需要整改。

操作步驟:登入伺服器,對sample進行壓縮備份在進行刪除

例如:

$ cd /weblogic/bea/wlserver_92/

$ tar -cvf sample_bak.tar sample/

$ rm -fr sample/

2.10 自定義錯誤頁面

應自定義403 404 500 錯誤頁面,要求:重定向後的頁面不能顯示任何錯誤程式碼和錯誤路徑資訊

1 、檢查

檢查方法,操作步驟:

檢查一個錯誤的weblogic控制檯路徑,例如:

檢查是否返回404、405、500等資訊


WebLogic 10.3.6.0 之後, weblogic 無需自定義錯誤頁面。

2.11 連線數設定

應設定 session 超時時間數值不為0 ,且在合理範圍內

1 、檢查

檢查方法,操作步驟:

進入控制檯->Servers->對於server->Tunning檢視stuck Thread超時時間;建議設定值為10分鐘,即600s,若執行緒處理時間需要大於600s,可特殊註明。 WebLogic 預設的stuck Thread 超時時間為600 秒,無需整改。

2 、整改

1)以管理員進入控制檯->伺服器->每個SERVERNAME->配置->最佳化->鎖定並編輯->修改stuck Thread超時時間為600->儲存->啟用更改

整改後:


2.12 超時時間策略

應設定Maximum Open Sockets數值不為0 ,且在合理範圍內

1 、檢查

檢查方法,操作步驟:

以管理員身份進入控制檯->Servers->Configuration->Tuning核查Maximum Open Sockets是否為2000。若業務處理需要大於2000,可特殊註明。

WebLogic 預設的Maximum Open Sockets為 -1 ,需整改。

2 、整改

以管理員身份進入控制檯->Servers->Configuration->Tuning->鎖定並編輯-修改>Maximum Open Sockets為2000->儲存->啟用更改(需要把weblogic節點關閉才可以啟用更改)

整改後:




來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28833846/viewspace-2738395/,如需轉載,請註明出處,否則將追究法律責任。

相關文章