某Oracle數(shù)據(jù)庫安全加固方案總結(jié)_第1頁
某Oracle數(shù)據(jù)庫安全加固方案總結(jié)_第2頁
某Oracle數(shù)據(jù)庫安全加固方案總結(jié)_第3頁
某Oracle數(shù)據(jù)庫安全加固方案總結(jié)_第4頁
某Oracle數(shù)據(jù)庫安全加固方案總結(jié)_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、 .wd. .wd. .wd.Q/ZD浙 江 省 電 力 公 司 企 業(yè) 標 準 編號:Q/XXXOracle數(shù)據(jù)庫安全加固方案2014年11月19日2010-*-* 發(fā)布 2010-*-* 實施浙江省電力公司 發(fā)布前 言為標準Oracle數(shù)據(jù)庫安全加固操作,全面系統(tǒng)地降低Oracle數(shù)據(jù)庫面臨的風(fēng)險,及時堵塞漏洞,提高安全防護能力,特制訂?XXXOracle數(shù)據(jù)庫安全加固方案?。本方案適用于Oracle數(shù)據(jù)庫安全加固工作要求。本方案由XXX負責(zé)起草設(shè)計。本方案主要起草人:XXX。目錄 TOC o 1-3 h z u HYPERLINK l _Toc4047714601.適用范圍 PAGERE

2、F _Toc404771460 h 5HYPERLINK l _Toc4047714612.方案實施準備 PAGEREF _Toc404771461 h 5HYPERLINK l _Toc4047714622.1 準備工作 PAGEREF _Toc404771462 h 5HYPERLINK l _Toc4047714632.2 危險點分析及預(yù)控措施 PAGEREF _Toc404771463 h 6HYPERLINK l _Toc4047714643.方案實施流程 PAGEREF _Toc404771464 h 7HYPERLINK l _Toc4047714654.方案實施程序及標準 PA

3、GEREF _Toc404771465 h 8HYPERLINK l _Toc4047714665.方案實施操作記錄 PAGEREF _Toc404771466 h 15XXXOracle數(shù)據(jù)庫安全加固方案適用范圍本方案適用于XXX Oracle 8i、10g數(shù)據(jù)庫安全加固。方案實施準備2.1 準備工作序號內(nèi)容標準1核實Oracle數(shù)據(jù)庫安全加固操作申請熟悉本次方案實施的內(nèi)容和操作2填寫、核實工作操作內(nèi)容填寫工作操作內(nèi)容,并經(jīng)相關(guān)責(zé)任人書面認可3獲知本次操作所需的信息獲知Oracle數(shù)據(jù)庫主機的地址、用戶名和密碼獲知Oracle數(shù)據(jù)庫sys和system用戶的密碼2.2 危險點分析及預(yù)控措施序

4、號危險點防范措施1修改帳號權(quán)限時,造成權(quán)限過大或過小以最小權(quán)限原那么為每個帳號分配其必須的角色、系統(tǒng)權(quán)限、對象權(quán)限和語句權(quán)限2刪除或制止有用的服務(wù)、組件等對無用的服務(wù)、組件進展排查,并和應(yīng)用系統(tǒng)廠商進展確認3增加網(wǎng)絡(luò)訪問控制,對應(yīng)用系統(tǒng)造成影響操作前和業(yè)務(wù)部門、應(yīng)用系統(tǒng)廠商進展確認并做好測試工作方案實施流程方案實施程序及標準序號工作內(nèi)容操作方法及標準安全措施及本卷須知登錄系統(tǒng)1通過管理主機登錄Oracle數(shù)據(jù)庫主機通過ssh或vnc或RDP登錄Oracle數(shù)據(jù)庫主機,輸入用戶名密碼注意用戶名、密碼的保密2登錄Oracle數(shù)據(jù)庫以sys用戶的身份登錄Oracle數(shù)據(jù)庫,默認:sqlplus /

5、as sysdba10g)或sqlplus username/password8i帳號權(quán)限加固3限制應(yīng)用用戶在數(shù)據(jù)庫中的權(quán)限,盡量保證最小化,防止授予了DBA權(quán)限1.查看權(quán)限SQLSELECT * FROM dba_sys_privs WHERE grantee=; - 系統(tǒng)權(quán)限SQLSELECT * FROM dba_tab_privs WHERE grantee=; - 對象權(quán)限SQLSELECT * FROM dba_role_privs WHERE grantee=; -賦予的角色2.收回相應(yīng)權(quán)限(例如收回select any table權(quán)限)SQLREVOKE select any

6、table FROM ;收回應(yīng)用用戶的DBA角色SQLREVOKE dba FROM ;防止分配權(quán)限過大或過小4撤消public角色的程序包執(zhí)行權(quán)限1.查看public角色的程序包執(zhí)行權(quán)限SQLSELECT table_name FROM dba_tab_privs WHERE grantee=PUBLIC and privilege=EXECUTE; 2.撤銷public角色的程序包執(zhí)行權(quán)限例如撤銷在utl_file包上的執(zhí)行權(quán)限SQLREVOKE execute ON utl_file FROM public;Oracle官方建議撤銷public角色對utl_file、utl_ 、utl_

7、tcp、utl_smtp、dbms_random程序包的執(zhí)行權(quán)限。5修改系統(tǒng)帳戶的默認口令特別是管理員角色類帳戶鎖定所有不需要的用戶1.修改sys和system口令SQLALTER USER sys IDENTIFIED BY ;SQLALTER USER system IDENTIFIED BY ;2.鎖定不需要的用戶SQLALTER USER ACCOUNT LOCK;6刪除系統(tǒng)中多余的自建帳號1.查看用戶自建賬號SQLSELECT username FROM all_users;2.刪除或者禁用多余自建賬號SQLDROP USER CASCADE;7為所有應(yīng)用用戶配置強口令1.根據(jù)設(shè)置的

8、口令策略修改弱口令SQLALTER USER IDENTIFIED BY ;數(shù)據(jù)訪問控制加固8嚴格限制庫文件的訪問權(quán)限,保證除屬主和root外,其他用戶對庫文件沒有寫權(quán)限用操作系統(tǒng)命令查看庫文件訪問權(quán)限以RedHat Linux為例ls -l $ORACLE_BASE/oradata2.用操作系統(tǒng)命令刪除庫文件組和其他用戶的寫權(quán)限chmod 640 $ORACLE_BASE/oradata/*3.Windows系統(tǒng)同理方法不同修改權(quán)限可能對局部應(yīng)用系統(tǒng)造成影響,需要聯(lián)系業(yè)務(wù)部門和應(yīng)用系統(tǒng)廠商做好相關(guān)的測試工作9設(shè)置$ORACLE_HOME/bin其下所有程序的訪問權(quán)限或其他安全控制機制用操作系

9、統(tǒng)命令查看bin目錄下所有程序文件的訪問權(quán)限以RedHat Linux為例ls -l $ORACLE_HOME/bin2.用操作系統(tǒng)命令刪除組和其他用戶的寫權(quán)限chmod 640 $ORACLE_HOME/bin/*修改權(quán)限可能對局部應(yīng)用系統(tǒng)造成影響,需要聯(lián)系業(yè)務(wù)部門和應(yīng)用系統(tǒng)廠商做好相關(guān)的測試工作服務(wù)加固10在不影響業(yè)務(wù)系統(tǒng)正常運行情況下,停頓或禁用與承載業(yè)務(wù)無關(guān)的服務(wù)或組件1.用操作系統(tǒng)命令查看有無與業(yè)務(wù)無關(guān)的服務(wù)或組件2.用操作系統(tǒng)命令停頓或禁用與業(yè)務(wù)無關(guān)的服務(wù)或組件需要和業(yè)務(wù)部門確認11刪除數(shù)據(jù)庫中存在有無用的、測試的、廢棄的表,視圖查看數(shù)據(jù)庫中表或視圖等對象SQLSELECT * F

10、ROM dba_tables;SQLSELECT * FROM dba_views;2.刪除數(shù)據(jù)庫中存在的無用的、測試的、廢棄的表或視圖SQLDROP TABLE ;SQLDROP VIEW ; 需要和業(yè)務(wù)部門確認網(wǎng)絡(luò)訪問控制加固12設(shè)置TNS登錄的IP限制,僅允許最少的必要的IP地址可連接TNS監(jiān)聽器1.在目錄$ORACLE_HOME/network/admin下修改sqlnet.ora文件實現(xiàn)TNS登錄IP限制,設(shè)置以下配置信息:tcp.validnode_checking=yes#允許訪問的iptcp.invited_nodes =(ip1,ip2,)#不允許訪問的iptcp.exclu

11、ded_nodes=(ip1,ip2,)2.修改sqlnet.ora后,重新啟動listener服務(wù)可能對局部應(yīng)用系統(tǒng)造成影響,需要聯(lián)系業(yè)務(wù)部門和應(yīng)用系統(tǒng)廠商做好相關(guān)的測試工作13關(guān)閉遠程操作系統(tǒng)認證在目錄$ORACLE_HOME/network/admin下修改sqlnet.ora文件,設(shè)置以下配置信息:sqlnet.authentication_services=(NONE)修改參數(shù)Remote_login_passwordfile為EXCLUSIVE或SHAREDSQLALTER SYSTEM SET REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE SCOPE=S

12、PFILE;修改參數(shù)REMOTE_OS_AUTHENTSQLALTER SYSTEM SET REMOTE_OS_AUTHENT=FALSE SCOPE=SPFILE;重啟數(shù)據(jù)庫和監(jiān)聽使修改生效需要重啟服務(wù),應(yīng)提前通知業(yè)務(wù)部門14在不影響應(yīng)用的前提下,更改默認的1521端口查看當(dāng)前監(jiān)聽的狀態(tài)lsnrctl status2. 停頓監(jiān)聽lsnrctl stop3. 修改監(jiān)聽文件的端口號,在目錄$ORACLE_HOME/network/admin下修改listener.ora文件例如把端口號改為11251LISTENER =(DESCRIPTION_LIST = (DESCRIPTION = (AD

13、DRESS = (PROTOCOL = TCP)(HOST=LOCALHOST)(PORT=11251) )4. 修改初始化參數(shù)local_listenerSQLALTER SYSTEM SET local_listener=(address=(protocol=tcp)(host=localhost)(port=11251);SQLquit5. 重啟監(jiān)聽器lsnrctl start6. 修改完畢,使用新端口登錄測試netstat -tunap | grep 11251lsnrctl status客戶端連接測試對所有應(yīng)用系統(tǒng)都有影響,需要跟業(yè)務(wù)部門配合做好評估和測試工作15限制對監(jiān)聽器的遠程管

14、理,并設(shè)置監(jiān)聽器管理口令8i1.進入監(jiān)聽設(shè)置狀態(tài)lsnrctl2.設(shè)置當(dāng)前監(jiān)聽器set current_listener 3.設(shè)置密碼change_passwordset password4.保存設(shè)置save_config5.檢查listener.ora文件,看是否有一條PASSWORDS_的記錄可能對局部應(yīng)用系統(tǒng)造成影響,需要聯(lián)系業(yè)務(wù)部門和應(yīng)用系統(tǒng)廠商做好相關(guān)的測試工作16外部程序調(diào)用監(jiān)聽配置的刪除8i1.翻開listener.ora文件,刪除以下配置文件:(ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0) )(SID_DE

15、SC = (SID_NAME = PLSExtProc) (ORACLE_HOME = C:oracleora81) (PROGRAM = extproc)重啟監(jiān)聽查看監(jiān)聽狀態(tài)默認安裝時,會安裝一個PL/SQL外部程序ExtProc條目在listener.ora中,是oracle為調(diào)用外部程序默認配置的監(jiān)聽,它的名字通常是ExtProc或PLSExtProc,但一般不會使用它,可以直接從listener.ora中將這項移除,因為對ExtProc已經(jīng)有多種攻擊手段了,在不使用外部程序時,oracle也是建議刪除的??诹畈呗约庸?6設(shè)置口令復(fù)雜度要求1.檢查profile文件設(shè)置SQLSELECT

16、 * FROM dba_profiles;2.創(chuàng)立口令復(fù)雜度函數(shù)SQL$ORACLE_HOME/rdbms/admin/utlpwdmg.sql3.設(shè)置口令復(fù)雜度,要求長度不小于4位字符串,而且是字母和數(shù)字或特殊字符的混合,用戶名和口令制止一樣SQLALTER PROFILE DEFAULT LIMIT password_verify_function verify_function;但是Oracle口令復(fù)雜度包含的特殊字符不是任意特殊字符都可以,一般以下劃線、$、*等符號為主。17設(shè)置口令使用期限,要求到期后自動更改1.檢查profile文件設(shè)置SQLSELECT * FROM dba_pr

17、ofiles;2.設(shè)置profile密碼策略,建議使用控制臺設(shè)置SQLALTER PROFILE DEFAULT LIMIT password_life_time 30;18設(shè)置策略對口令嘗試次數(shù)進展限制1.檢查profile文件設(shè)置SQLSELECT * FROM dba_profiles;2.設(shè)置profile密碼策略SQLALTER PROFILE DEFAULT LIMIT failed_login_attempts 5 password_lock_time 1;設(shè)置口令嘗試次數(shù)為5次,登錄超過有效次數(shù)鎖定時間為1天。缺陷是萬一有惡意訪問,在輸入屢次錯誤密碼后此用戶就被鎖定導(dǎo)致不可用。

18、審計策略加固19啟用相應(yīng)的審計功能,配置審核策略使系統(tǒng)能夠?qū)徍藬?shù)據(jù)庫管理和安全相關(guān)操作的信息,建議對SYSDBA審計操作1.啟用審計功能SQLALTER SYSTEM SET audit_trail=os scope=spfile;2.啟用對sysdba的活動審計SQLALTER SYSTEM SET audit_sys_operations=true;2.重啟數(shù)據(jù)庫,使設(shè)置生效假設(shè)是windows 平臺,audit trail會記錄在windows的事件管理器中,假設(shè)是linux/unix平臺那么會記錄在audit_file_dest參數(shù)指定文件中;審計功能對數(shù)據(jù)庫的性能和磁盤空間要求較高;

19、需要重啟數(shù)據(jù)庫,應(yīng)提前通知業(yè)務(wù)部門20配置日志策略,確保數(shù)據(jù)庫的歸檔日志文件、在線日志文件、網(wǎng)絡(luò)日志、跟蹤文件、警告日志記錄功能是否啟用并且有效實施1. 配置歸檔模式將數(shù)據(jù)庫正常關(guān)閉SQLSHUTDOWN IMMEDIATE啟動到MOUNT模式SQLSTARTUP MOUNTSQLALTER DATABASE ARCHIVELOGSQLALTER DATABASE OPEN2.配置歸檔日志的名稱格式ALTER SYSTEM SET log_archvie_format=%S_%T_%R.log scope=spfile3.配置歸檔位置ALTER SYSTEM SET log_archive_dest_1=location=oracleoradataarchive1 scope=s

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論