作者:admin 日期:2023-10-17 瀏覽: 次
網(wǎng)絡(luò)安全等保:Oracle數(shù)據(jù)庫測評
以下結(jié)果以O(shè)racle 11g為例,通過PL/SQL進行管理,未進行任何配置、按照等保2.0標(biāo)準(zhǔn),2021報告模板,三級系統(tǒng)要求進行測評。
a) 應(yīng)對登錄的用戶進行身份標(biāo)識和鑒別,身份標(biāo)識具有唯一性,身份鑒別信息具有復(fù)雜度要求并定期更換;
sysdba是Oracle數(shù)據(jù)庫的最高權(quán)限管理員。通常使用sqlplus或PL/SQL 管理軟件進行管理,PL/SQL 為第三方管理軟件,但SQL查詢語句一樣。
東臺數(shù)據(jù)恢復(fù)注:sysdba如果是本地管理,亂輸密碼也能登錄成功,需要改sqlnet.ora文件。
1. 管理員登錄數(shù)據(jù)庫時是是否需要輸入用戶名/口令,不存在空口令;
2. 使用 Select username,account_status from dba_users; 顯示所有能登錄數(shù)據(jù)庫的用戶信息:(),那些是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則為未設(shè)置密碼復(fù)雜度要求。
為了感謝廣大讀者伙伴的支持,準(zhǔn)備了以下福利給到大家:
[一>關(guān)注我,私信回復(fù)"資料'獲取<一]
1、200多本網(wǎng)絡(luò)安全系列電子書(該有的都有了)
2、全套工具包(最全中文版,想用哪個用哪個)
3、100份src源碼技術(shù)文檔(項目學(xué)習(xí)不停,實踐得真知)
4、網(wǎng)絡(luò)安全基礎(chǔ)入門、Linux、web安全、攻防方面的視頻(2021最新版)
無錫數(shù)據(jù)恢復(fù)6、 網(wǎng)絡(luò)安全學(xué)習(xí)路線(告別不入流的學(xué)習(xí))
7、ctf奪旗賽解析(題目解析實戰(zhàn)操作)[一>關(guān)注我,私信回復(fù)"資料"獲取<一]
若有設(shè)置應(yīng)為
(1)PASSWORD_LOGIN_ATTEMPTS = 登錄嘗試次數(shù);(2)PASSWORD_LIFE_TIME = unlimited 未設(shè)置口令有效期;(3)PASSWORD_ROUSE_MAX = unlimited 未設(shè)置重新啟用一個先前用過的口令前必須對該口令進行重新設(shè)置的次數(shù)(重復(fù)用的次數(shù));(4)PASSWORD_VERIFY_FUNCITON = NULL,未設(shè)置口令復(fù)雜度校驗函數(shù);(5)PASSWORD_GRACE_TIME=,口令修改的寬限期天數(shù):7;
b) 應(yīng)具有登錄失敗處理功能,應(yīng)配置并啟用結(jié)束會話、限制非法登錄次數(shù)和當(dāng)?shù)卿涍B接超時自動退出等相關(guān)措施;
1. 通過輸入 SELECT LIMIT FROM DBA_PROFILES WHERE PROFILE=‘DEFAULT’ AND RESOURCE_NAME=‘FAILED_LOGIN_ATTEMOTS’;,查詢結(jié)果若為’UNLIMITED’則無登錄重試次數(shù)限制,超過此值用戶被鎖定。可以通過ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS 10(重試次數(shù)10次)
2. 通過輸入 SELECT LIMIT FROM DBA_PROFILES WHERE PROFILE=‘DEFAULT’ AND RESOURCE_NAME=‘PASSWORD_LOCK_TIME’;, 查詢結(jié)果若為’unlimited’則無登錄失敗次數(shù)鎖定限制??梢酝ㄟ^ALTER PROFILE DEFAULT LIMIT PASSWORD_LOCK_TIME 1/24(重試失敗后鎖定一天)
3. 通過輸入 SELECT LIMIT FROM DBA_PROFILES WHERE PROFILE=‘DEFAULT’ AND RESOURCE_NAME=‘IDLE_TIME’;, 查詢結(jié)果若為’UNLIMITED’則無登錄超時限制。
c) 當(dāng)進行遠程管理時,應(yīng)采取必要措施防止鑒別信息在網(wǎng)絡(luò)傳輸過程中被竊聽;
采用sqlplus或PL/SQL連接數(shù)據(jù)庫,對數(shù)據(jù)庫進行管理,客戶端與服務(wù)器端之間通信是加密的,故Oracle該項默認符合。
d) 應(yīng)采用口令、密碼技術(shù)、生物技術(shù)等兩種或兩種以上組合的鑒別技術(shù)對用戶進行身份鑒別,且其中一種鑒別技術(shù)至少應(yīng)使用密碼技術(shù)來實現(xiàn)。
經(jīng)訪談管理員,是否采用雙因子身份鑒別技術(shù),鑒別技術(shù)是什么 。默認都不符合。
a) 應(yīng)對登錄的用戶分配賬戶和權(quán)限;
通過輸入**Select username,account_status from dba_users;**語句,主要查看數(shù)據(jù)庫存在那些可用用戶,至少得有兩個,該測評項就需要Oracle中存在至少兩個賬戶,且這兩個賬戶的權(quán)限不一樣。
1.為用戶分配了賬戶和權(quán)限及相關(guān)設(shè)置情況,主要看可用賬戶(例如采用“用戶權(quán)限列表”);2.是否已禁用或限制匿名、默認賬戶的訪問權(quán)限。如只有MGMT_UIEW,SYSTEM,SYS,DBSNMP為啟用狀態(tài),其他均為啟用狀態(tài),則為符合。
b) 應(yīng)重命名或刪除默認賬戶,修改默認賬戶的默認口令
在Oracle中默認用戶最常用的就是SYS和SYSTEM這兩個賬戶。1.是否已經(jīng)重命名SYS、SYSTEM、DBSNMP等默認帳戶名或已修改默認口令,sys默認口令為CHANGE_ON_INSTALL;SYSTEM:MANAGER;DBSNMP的默認口令為:DBSNMP。可以登錄測試。
c) 應(yīng)及時刪除或停用多余的、過期的賬戶,避免共享賬戶的存在
訪談管理員是否存在多余或過期賬戶,管理員用戶與賬戶之間是否一一對應(yīng)通過輸入**Select username,account_status from dba_users;**查看是否存在默認帳戶SCOTT/OUTLN/ORDSY等用戶,不存在acount_status為expired的賬戶。訪談管理員是否存在共享賬戶等。示例不符合。
d) 應(yīng)授予管理用戶所需的最小權(quán)限,實現(xiàn)管理用戶的權(quán)限分離··

1. 通過輸入**Select username,account_status from dba_users;**查看狀態(tài)為open的用戶的用途。是否進行角色劃分,是否有多個用戶進行管理數(shù)據(jù)庫;2. 通過輸入 **select * from dba_tab_privs where grantee=‘SYS’ ORDER BY GRANTEE;**查看SYS最高權(quán)限授予給那些用戶,得知管理用戶的權(quán)限是否已進行分離;
3. 通過訪談管理員、管理用戶權(quán)限是否為其工作任務(wù)所需的最小權(quán)限,是否存在相應(yīng)的用戶權(quán)限表。4. 通過輸入select granted_role from dba_role_privs where grantee=‘PUBLIC’; 返回值( ) 得知public是否被授權(quán)給用戶,有就不符合 ;5. 通過在命令窗口輸入Show parameter
O7_DICTIONARY_ACCESSIBILITY;返回值(是否為false);(該參數(shù)設(shè)置為false為符合,如果用戶具有了any table權(quán)限,則可以訪問除sys用戶之外的其他用戶的對象,也就無權(quán)訪問數(shù)據(jù)字典基表。)
TIPS: sql語句在 PL/sql的文件–》sql窗口執(zhí)行,show等命令語句在命令窗口執(zhí)行。sqlplus則不區(qū)分。
綜上判斷符合程度。
通過訪談管理員,是否由特定賬戶為登錄用戶分配角色和權(quán)限。是否存在具體的訪問規(guī)則。
1.通過訪談數(shù)據(jù)庫管理員,是否制定數(shù)據(jù)庫訪問控制策略,訪問控制的粒度為數(shù)據(jù)庫表級。此項默認符合。
通過訪談數(shù)據(jù)庫管理員: 是否對重要主體和客體設(shè)置安全標(biāo)記。 oracle自身應(yīng)該不具備這個功能,可能要依靠操作系統(tǒng)或者第三方的什么軟件如Oracle_Label_Security來實現(xiàn)了。該項一般默認都不符合。
Oracle自帶有審計功能,可以通過audit_trail參數(shù)來開啟使用。1. 通過輸入 show parameter audit_trail;返回值默認為DB,即為普通用戶開啟審計功能,若為none則為未開啟狀態(tài);
2. 通過輸入 **select * from dba_stmt_audit_opts;和select * from dba_priv_audit_opts;**返回結(jié)果如User_Name為空值,對這些重要事件開啟審計,并且這個審計是針對所有用戶的,符合要求。
3. 通過輸入 **show parameter audit_sys_operations;**返回結(jié)果 audit_sys_operations boolean FALSE 則未對SYSDBA或SYSOPER特權(quán)連接時直接發(fā)出的SQL語句進行審計,需要開啟,默認為false。
綜上分析判斷符合程度。
通過輸入 **select * from aud$; **查看審計日志的格式,默認符合。(輸入show parameter dump_dest 得出backgroup_dump_dest的值為日志文件的位置。)。下圖沒有顯示完全。
1. 通過訪談管理員, 是否采取技術(shù)措施對審計記錄進行定期備份,采用的技術(shù)措施及備份策略是怎么樣的?如通過syslog端口導(dǎo)入到日志服務(wù)器。2. 是否只有特定的管理員擁有對審計記錄的操作權(quán)限,普通用戶無法訪問審計記錄。
Oracle默認符合此項。1. 通過查看sysdba、sysoper權(quán)限被授予給了誰,非管理員賬戶是否可以中斷審計進程,審計進程是否進行了保護。2. 通過輸入**alter system set audit_trail=none; **得出無法成功即符合。示例為sysdba最高權(quán)限管理員登錄,能夠進行操作。需要通過一個普通用戶登錄,查看此條命令是否能夠執(zhí)行,若能此項就不符合。
a) 應(yīng)遵循最小安裝的原則,僅安裝需要的組件和應(yīng)用程序
通過輸入**select * from v$option;**得知安裝的組件是否多余。value為true為安裝了。[圖片上傳失敗…(
image-c9a1b2-1634546762405)]
b) 應(yīng)關(guān)閉不需要的系統(tǒng)服務(wù)、默認共享和高危端口
此項不適用,數(shù)據(jù)庫不涉及此項。
c) 應(yīng)通過設(shè)定終端接入方式或網(wǎng)絡(luò)地址范圍對通過網(wǎng)絡(luò)進行管理的管理終端進行限制
通過查看oracle的安裝路徑中的sqlnet.ora文件查看
tcp.validnode_checking/tcp/invited_nodes的配置是否為:tcp.validnode_checking=yestcp,invited_nodes=() 得知是否設(shè)置了遠程連接IP。
大部分未設(shè)置,基本都是通過遠程管理操作系統(tǒng)間接遠程數(shù)據(jù)庫。
d) 應(yīng)提供數(shù)據(jù)有效性檢驗功能,保證通過人機接口輸入或通過通信接口輸入的內(nèi)容符合系統(tǒng)設(shè)定要求8
此項不適用,數(shù)據(jù)庫不涉及此項。
e) 應(yīng)能發(fā)現(xiàn)可能存在的已知漏洞,并在經(jīng)過充分測試評估后,及時修補漏洞
1、 訪談管理員是否定期或不定期進行漏洞掃描或滲透測試,周期為 ( );2、通過本次漏洞掃描是否發(fā)現(xiàn)與數(shù)據(jù)庫相關(guān)的高危漏洞,若存在,是否及時進行漏洞修補。
f) 應(yīng)能夠檢測到對重要節(jié)點進行入侵的行為,并在發(fā)生嚴重入侵事件時提供報警
此項不適用,數(shù)據(jù)庫不涉及此項。
應(yīng)采用免受惡意代碼攻擊的技術(shù)措施或主動免疫可信驗證機制及時識別入侵和病毒行為,并將其有效阻斷
此項不適用,數(shù)據(jù)庫不涉及此項。
可基于可信根對計算設(shè)備的系統(tǒng)引導(dǎo)程序、 系統(tǒng)程序、重要配置參數(shù)和應(yīng)用程序等進行可信驗證,并在應(yīng)用程序的關(guān)鍵執(zhí)行環(huán)節(jié)進行動態(tài)可信驗證,在檢測到其可信性受到破壞后進行報警,并將驗證結(jié)果形成審計記錄送至安全管理中心
通過訪談管理員,是否采取了可信技術(shù),一般都是未采取??尚偶夹g(shù)主要是基于可信芯片、可信根,硬件層面較多。但是現(xiàn)在市面上的產(chǎn)品尚未大量普及。