以下結果以Oracle 11g為例,通過PL/SQL進行管理,未進行任何配置、按照等保2.0標準,2021報告模板,三級系統要求進行測評,
一、身份鑒別
a) 應對登錄的用戶進行身份標識和鑒別,身份標識具有唯一性,身份鑒別資訊具有復雜度要求并定期更換;
sysdba是Oracle資料庫的最高權限管理員,通常使用sqlplus或PL/SQL 管理軟體進行管理,PL/SQL 為第三方管理軟體,但SQL查詢陳述句一樣,
注:sysdba如果是本地管理,亂輸密碼也能登錄成功,需要改sqlnet.ora檔案,
1. 管理員登錄資料庫時是是否需要輸入用戶名/口令,不存在空口令;

2. 使用 Select username,account_status from dba_users; 顯示所有能登錄資料庫的用戶資訊:(),那些是open那些是locked,UID是否唯一

3. 通過命令 **select * from dba_profiles where resource_type=‘password’;或SELECT LIMIT FROM DBA_PROFILES WHERE PROFILE=‘DEFAULT’ AND RESOURCE_NAME=‘PASSWORD_VERIFY_FUNCTION’;**如果為NULL則為未設定密碼復雜度要求,
為了感謝廣大讀者伙伴的支持,準備了以下福利給到大家:
[一>獲取<一]
1、200多本網路安全系列電子書(該有的都有了)
2、全套工具包(最全中文版,想用哪個用哪個)
3、100份src原始碼技術檔案(專案學習不停,實踐得真知)
4、網路安全基礎入門、Linux、web安全、攻防方面的視頻(2021最新版)
6、 網路安全學習路線(告別不入流的學習)
7、ctf奪旗賽決議(題目決議實戰操作)
[一>獲取<一]

若有設定應為
(1)PASSWORD_LOGIN_ATTEMPTS = 登錄嘗試次數;
(2)PASSWORD_LIFE_TIME = unlimited 未設定口令有效期;
(3)PASSWORD_ROUSE_MAX = unlimited 未設定重新啟用一個先前用過的口令前必須對該口令進行重新設定的次數(重復用的次數);
(4)PASSWORD_VERIFY_FUNCITON = NULL,未設定口令復雜度校驗函式;
(5)PASSWORD_GRACE_TIME=,口令修改的寬限期天數:7;
b) 應具有登錄失敗處理功能,應配置并啟用結束會話、限制非法登錄次數和當登錄連接超時自動退出等相關措施;
1. 通過輸入 SELECT LIMIT FROM DBA_PROFILES WHERE PROFILE=‘DEFAULT’ AND RESOURCE_NAME=‘FAILED_LOGIN_ATTEMOTS’;,
查詢結果若為’UNLIMITED’則無登錄重試次數限制,超過此值用戶被鎖定,可以通過ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS 10(重試次數10次)

2. 通過輸入 SELECT LIMIT FROM DBA_PROFILES WHERE PROFILE=‘DEFAULT’ AND RESOURCE_NAME=‘PASSWORD_LOCK_TIME’;, 查詢結果若為’unlimited’則無登錄失敗次數鎖定限制,可以通過ALTER PROFILE DEFAULT LIMIT PASSWORD_LOCK_TIME 1/24(重試失敗后鎖定一天)

3. 通過輸入 SELECT LIMIT FROM DBA_PROFILES WHERE PROFILE=‘DEFAULT’ AND RESOURCE_NAME=‘IDLE_TIME’;, 查詢結果若為’UNLIMITED’則無登錄超時限制,

c) 當進行遠程管理時,應采取必要措施防止鑒別資訊在網路傳輸程序中被竊聽;
采用sqlplus或PL/SQL連接資料庫,對資料庫進行管理,客戶端與服務器端之間通信是加密的,故Oracle該項默認符合,
d) 應采用口令、密碼技術、生物技術等兩種或兩種以上組合的鑒別技術對用戶進行身份鑒別,且其中一種鑒別技術至少應使用密碼技術來實作,
經訪談管理員,是否采用雙因子身份鑒別技術,鑒別技術是什么 ,默認都不符合,
二、訪問控制
a) 應對登錄的用戶分配賬戶和權限;
通過輸入**Select username,account_status from dba_users;**陳述句,主要查看資料庫存在那些可用用戶,至少得有兩個,該測評項就需要Oracle中存在至少兩個賬戶,且這兩個賬戶的權限不一樣,
1.為用戶分配了賬戶和權限及相關設定情況,主要看可用賬戶(例如采用“用戶權限串列”);
2.是否已禁用或限制匿名、默認賬戶的訪問權限,如只有MGMT_UIEW,SYSTEM,SYS,DBSNMP為啟用狀態,其他均為啟用狀態,則為符合,
b) 應重命名或洗掉默認賬戶,修改默認賬戶的默認口令
在Oracle中默認用戶最常用的就是SYS和SYSTEM這兩個賬戶,
1.是否已經重命名SYS、SYSTEM、DBSNMP等默認帳戶名或已修改默認口令,sys默認口令為CHANGE_ON_INSTALL;SYSTEM:MANAGER;DBSNMP的默認口令為:DBSNMP,可以登錄測驗,
c) 應及時洗掉或停用多余的、過期的賬戶,避免共享賬戶的存在
訪談管理員是否存在多余或過期賬戶,管理員用戶與賬戶之間是否一一對應通過輸入**Select username,account_status from dba_users;**查看是否存在默認帳戶SCOTT/OUTLN/ORDSY等用戶,不存在acount_status為expired的賬戶,訪談管理員是否存在共享賬戶等,示例不符合,

d) 應授予管理用戶所需的最小權限,實作管理用戶的權限分離··
1. 通過輸入**Select username,account_status from dba_users;**查看狀態為open的用戶的用途,是否進行角色劃分,是否有多個用戶進行管理資料庫;
2. 通過輸入 **select * from dba_tab_privs where grantee=‘SYS’ ORDER BY GRANTEE;**查看SYS最高權限授予給那些用戶,得知管理用戶的權限是否已進行分離;

3. 通過訪談管理員、管理用戶權限是否為其作業任務所需的最小權限,是否存在相應的用戶權限表,
4. 通過輸入select granted_role from dba_role_privs where grantee=‘PUBLIC’; 回傳值( ) 得知public是否被授權給用戶,有就不符合 ;
5. 通過在命令視窗輸入Show parameter O7_DICTIONARY_ACCESSIBILITY;回傳值(是否為false);(該引數設定為false為符合,如果用戶具有了any table權限,則可以訪問除sys用戶之外的其他用戶的物件,也就無權訪問資料字典基表,)

TIPS: sql陳述句在 PL/sql的檔案–》sql視窗執行,show等命令陳述句在命令視窗執行,sqlplus則不區分,
綜上判斷符合程度,
e) 應由授權主體配置訪問控制策略,訪問控制策略規定主體對客體的訪問規則
通過訪談管理員,是否由特定賬戶為登錄用戶分配角色和權限,是否存在具體的訪問規則,
f) 訪問控制的粒度應達到主體為用戶級或行程級,客體為檔案、資料庫表級
1.通過訪談資料庫管理員,是否制定資料庫訪問控制策略,訪問控制的粒度為資料庫表級,此項默認符合,
g)應對重要主體和客體設定安全標記,并控制主體對有安全標記資訊資源的訪問
通過訪談資料庫管理員: 是否對重要主體和客體設定安全標記, oracle自身應該不具備這個功能,可能要依靠作業系統或者第三方的什么軟體如Oracle_Label_Security來實作了,該項一般默認都不符合,
三、安全審計
a) 應啟用安全審計功能,審計覆寫到每個用 戶,對重要的用戶行為和重要安全事件進行審計
Oracle自帶有審計功能,可以通過audit_trail引數來開啟使用,
1. 通過輸入 show parameter audit_trail;回傳值默認為DB,即為普通用戶開啟審計功能,若為none則為未開啟狀態;

2. 通過輸入 **select * from dba_stmt_audit_opts;和select * from dba_priv_audit_opts;**回傳結果如User_Name為空值,對這些重要事件開啟審計,并且這個審計是針對所有用戶的,符合要求,


3. 通過輸入 **show parameter audit_sys_operations;**回傳結果 audit_sys_operations boolean FALSE 則未對SYSDBA或SYSOPER特權連接時直接發出的SQL陳述句進行審計,需要開啟,默認為false,

綜上分析判斷符合程度,
b) 審計記錄應包括事件的日期和時間、用戶、事件型別、事件是否成功及其他與審計相關的資訊
通過輸入 **select * from aud$; **查看審計日志的格式,默認符合,(輸入show parameter dump_dest 得出backgroup_dump_dest的值為日志檔案的位置,),下圖沒有顯示完全,

c) 應對審計記錄進行保護,定期備份,避免受到未預期的洗掉、修改或覆寫等
1. 通過訪談管理員, 是否采取技術措施對審計記錄進行定期備份,采用的技術措施及備份策略是怎么樣的?如通過syslog埠匯入到日志服務器,
2. 是否只有特定的管理員擁有對審計記錄的操作權限,普通用戶無法訪問審計記錄,
d) 應對審計行程進行保護,防止未經授權的中斷
Oracle默認符合此項,
1. 通過查看sysdba、sysoper權限被授予給了誰,非管理員賬戶是否可以中斷審計行程,審計行程是否進行了保護,
2. 通過輸入**alter system set audit_trail=none; **得出無法成功即符合,示例為sysdba最高權限管理員登錄,能夠進行操作,需要通過一個普通用戶登錄,查看此條命令是否能夠執行,若能此項就不符合,

四、入侵防范
a) 應遵循最小安裝的原則,僅安裝需要的組件和應用程式
通過輸入**select * from v$option;**得知安裝的組件是否多余,value為true為安裝了,[圖片上傳失敗…(image-c9a1b2-1634546762405)]
b) 應關閉不需要的系統服務、默認共享和高危埠
此項不適用,資料庫不涉及此項,
c) 應通過設定終端接入方式或網路地址范圍對通過網路進行管理的管理終端進行限制
通過查看oracle的安裝路徑中的sqlnet.ora檔案查看tcp.validnode_checking/tcp/invited_nodes的配置是否為:
tcp.validnode_checking=yes
tcp,invited_nodes=() 得知是否設定了遠程連接IP,
大部分未設定,基本都是通過遠程管理作業系統間接遠程資料庫,
d) 應提供資料有效性檢驗功能,保證通過人機介面輸入或通過通信介面輸入的內容符合系統設定要求8
此項不適用,資料庫不涉及此項,
e) 應能發現可能存在的已知漏洞,并在經過充分測驗評估后,及時修補漏洞
1、 訪談管理員是否定期或不定期進行漏洞掃描或滲透測驗,周期為 ( );
2、通過本次漏洞掃描是否發現與資料庫相關的高危漏洞,若存在,是否及時進行漏洞修補,
f) 應能夠檢測到對重要節點進行入侵的行為,并在發生嚴重入侵事件時提供報警
此項不適用,資料庫不涉及此項,
五、惡意代碼防范
應采用免受惡意代碼攻擊的技術措施或主動免疫可信驗證機制及時識別入侵和病毒行為,并將其有效阻斷
此項不適用,資料庫不涉及此項,
六、可信驗證
可基于可信根對計算設備的系統引導程式、 系統程式、重要配置引數和應用程式等進行可信驗證,并在應用程式的關鍵執行環節進行動態可信驗證,在檢測到其可信性受到破壞后進行報警,并將驗證結果形成審計記錄送至安全管理中心
通過訪談管理員,是否采取了可信技術,一般都是未采取,可信技術主要是基于可信芯片、可信根,硬體層面較多,但是現在市面上的產品尚未大量普及,
七、其他控制點
資料完整性、資料保密性、資料備份與恢復、剩余資訊保護、個人資訊保護均不在此處考慮,放在安全計算環境中的五類資料中統一體現,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/323322.html
標籤:其他
上一篇:逆向工程之PE檔案格式(一)
