《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 設(shè)計應(yīng)用 > 數(shù)據(jù)庫安全在電力信息系統(tǒng)等級保護中的應(yīng)用
數(shù)據(jù)庫安全在電力信息系統(tǒng)等級保護中的應(yīng)用
來源:微型機與應(yīng)用2012年第21期
梁智強,胡朝輝,江澤鑫,周強峰
(廣東電網(wǎng)公司電力科學(xué)研究院 智能電網(wǎng)所,廣東 廣州 510080)
摘要: 簡述了數(shù)據(jù)庫安全,詳細介紹了電力信息系統(tǒng)對數(shù)據(jù)庫安全的要求,并介紹了在電力信息系統(tǒng)中用到的保障數(shù)據(jù)庫安全的具體措施。
Abstract:
Key words :

摘  要: 簡述了數(shù)據(jù)庫安全,詳細介紹了電力信息系統(tǒng)對數(shù)據(jù)庫安全的要求,并介紹了在電力信息系統(tǒng)中用到的保障數(shù)據(jù)庫安全的具體措施。
關(guān)鍵詞: 電力信息系統(tǒng);數(shù)據(jù)庫安全;MySql;OracleSybase;SQL Server

1 信息系統(tǒng)安全等級保護
 隨著信息技術(shù)的發(fā)展,越來越多的信息化、自動化設(shè)備被用于政府辦公自動化和企業(yè)的生產(chǎn)經(jīng)營活動,公用信息基礎(chǔ)設(shè)施建設(shè)使得群眾生活、生產(chǎn)日益依靠信息系統(tǒng)。信息系統(tǒng)在給政府、企業(yè)帶來便利的同時,也引入了信息安全問題,黑客入侵和網(wǎng)絡(luò)攻擊的日益增多,信息系統(tǒng)中存在的漏洞、后門,運行維護人員信息安全知識的匱乏等使得部分關(guān)系到國計民生的關(guān)鍵系統(tǒng)受到了前所未有的安全挑戰(zhàn)。特別是信息安全事件所引發(fā)的連鎖安全事故,危害極大,如花旗集團受到黑客攻擊導(dǎo)致36萬多的客戶賬戶信息被竊取,直接導(dǎo)致金融的混亂;四川某水電站無故全廠停機造成川西電網(wǎng)瞬間缺電80萬千瓦引起的大面積停電事故等。這些均說明了信息安全的重要作用。
 為此,公安部、國家保密局、國家密碼管理局、國務(wù)院信息化工作辦公室聯(lián)合頒布了關(guān)于印發(fā)《信息安全等級保護管理辦法》的通知,要求公民、法人和其他組織對信息系統(tǒng)分等級實行安全保護,對等級保護工作的實施進行監(jiān)督、管理。GB/T 22239-2008《信息安全技術(shù) 信息系統(tǒng)安全等級保護基本要求》作為信息系統(tǒng)等級保護的國家標準,從物理安全、網(wǎng)絡(luò)安全、主機安全、應(yīng)用安全和管理安全等方面對其安全強度做出了具體的規(guī)定[1]。
 電網(wǎng)企業(yè)、國家電力監(jiān)管委員會、公安部等同樣非常關(guān)注電力行業(yè)的信息系統(tǒng)安全等級保護,分別制定了相應(yīng)的規(guī)范、作業(yè)指導(dǎo)書用于其等級保護測評。數(shù)據(jù)庫是信息系統(tǒng)的重要組成部分,也是等級保護測評主要的測評實體之一。隨著近年來智能電網(wǎng)研究的發(fā)展,數(shù)據(jù)庫作為重要的技術(shù)之一在電力信息系統(tǒng)中得到越來越多的應(yīng)用,如能量管理系統(tǒng)、調(diào)度自動化系統(tǒng)和配網(wǎng)自動化系統(tǒng)等廣泛使用數(shù)據(jù)庫來保存關(guān)鍵數(shù)據(jù)。因此,保證數(shù)據(jù)庫的安全,防止敏感數(shù)據(jù)被竊取、被篡改有著十分重大的實現(xiàn)意義。
 數(shù)據(jù)庫威脅可以分為物理威脅和邏輯威脅。按照GB/T 22239-2008《信息安全技術(shù) 信息系統(tǒng)安全等級保護基本要求》,數(shù)據(jù)庫物理威脅主要包括物理位置的選擇、物理訪問控制、防盜竊和防破壞、防雷擊、防火、防水和防潮、防靜電等(其中物理位置的選擇主要是指如數(shù)據(jù)庫主機應(yīng)該放置在防震、防風(fēng)、防雨的建筑內(nèi)[1],物理訪問控制主要是指數(shù)據(jù)庫主機所在機房應(yīng)該設(shè)置門禁等),具體的要求可以查看相應(yīng)的國家標準。數(shù)據(jù)庫物理威脅防護措施比較簡單,主要通過機房建設(shè)得以保證。而邏輯威脅的防護內(nèi)涵十分豐富,是本文研究的重點。
 在電力信息系統(tǒng)中,經(jīng)常使用的數(shù)據(jù)庫包括MySql、Oracle、SQL Server和Sybase等。數(shù)據(jù)庫的語法包括三類[2-3]:數(shù)據(jù)操作語言DML(Data Manipulation Language),用于查詢、插入、刪除和修改數(shù)據(jù)庫中的數(shù)據(jù);數(shù)據(jù)控制語言DCL(Data Control Language),用來控制存取許可、存取權(quán)限等;數(shù)據(jù)定義語言DDL(Data Definition Language),用來建立數(shù)據(jù)庫、數(shù)據(jù)庫對象和定義其列,本文將根據(jù)電力信息系統(tǒng)中的數(shù)據(jù)庫實際防護措施,選擇相應(yīng)的配置指令進行介紹。
2 數(shù)據(jù)庫的身份鑒別
 數(shù)據(jù)庫的身份鑒別是數(shù)據(jù)庫安全的第一道門檻,電力信息系統(tǒng)絕大部分是二級信息系統(tǒng)和三級信息系統(tǒng),GB/T 22239-2008《信息安全技術(shù) 信息系統(tǒng)安全等級保護基本要求》對二/三級信息系統(tǒng)均要求:“操作系統(tǒng)和數(shù)據(jù)庫系統(tǒng)管理用戶身份標識應(yīng)具有不易被冒用的特點,口令應(yīng)有復(fù)雜度要求并定期更換;應(yīng)采用兩種或兩種以上組合的鑒別技術(shù)對管理用戶進行身份鑒別”[1]。在實際數(shù)據(jù)庫安全測評時,數(shù)據(jù)庫所處機房的門禁系統(tǒng)可作為第一種鑒別技術(shù),第二種身份鑒別技術(shù)主要通過數(shù)據(jù)庫系統(tǒng)的登錄密碼來實現(xiàn)。數(shù)據(jù)庫的身份鑒別技術(shù)主要包括用戶名和密碼驗證、密碼的定期更換、遠程登錄管理的數(shù)據(jù)防竊聽三部分內(nèi)容[4]。
2.1 用戶名和密碼的驗證
 數(shù)據(jù)庫安全防護的第一步是檢查數(shù)據(jù)庫是否采取用戶名+密碼形式的登錄驗證方式[3,5]。數(shù)據(jù)庫的安全配置及網(wǎng)絡(luò)登錄必須采取用戶名+密碼的驗證形式;密碼在數(shù)據(jù)庫當中以密文的形式保存;且需要及時修改數(shù)據(jù)庫默認帳號的默認密碼。
 在MySql數(shù)據(jù)庫中,使用如下指令查看數(shù)據(jù)庫中的用戶權(quán)限信息(包含是否采用用戶名+密碼的驗證方式登錄):
 Use Mysql;(選擇數(shù)據(jù)庫,數(shù)據(jù)庫的用戶權(quán)限列表保存在Mysql數(shù)據(jù)庫中的user表中)
Select*from user;(查詢用戶權(quán)限列表)
 根據(jù)查詢的結(jié)果檢查相應(yīng)用戶是否設(shè)置了密碼,并通知未設(shè)置密碼的用戶設(shè)置密碼。
Oracle數(shù)據(jù)庫帶有很多默認賬戶,如sys、system、sysman、scott、aqadm和dbsnmp,其默認的密碼分別為change_on_install、Manager、oem_temp、tiger、aqadm、dbsnmp。需要及時修改這些默認賬戶及相關(guān)密碼,防止非授權(quán)用戶通過默認賬戶登錄數(shù)據(jù)庫系統(tǒng)竊取、篡改數(shù)據(jù)等。
2.2 密碼的定期更換
 按照等級保護的要求,系統(tǒng)運維人員需要對數(shù)據(jù)庫的登錄密碼進行定期更換。
MySql數(shù)據(jù)庫使用SET PASSWORD FOR root=PASSWORD(′new_password′)指令更換密碼(注:在該模式下需再次使用FLUSH PRIVILEGES指令告訴服務(wù)器再次讀入授權(quán)表,使密碼更換生效),如在shell模式下,可采用mysqladmin-u root password new_password指令更換密碼。
 如果使用Oracle數(shù)據(jù)庫[6],則可以使用select*from dba_profiles指令查看數(shù)據(jù)庫用戶密碼策略,其查詢結(jié)果PASSWORD_GRACE_TIME XX 表示賬戶密碼的生命周期(單位為“天”)。
2.3 遠程登錄管理的數(shù)據(jù)防竊聽
 電力信息系統(tǒng)一般要求數(shù)據(jù)庫不開放遠程登錄功能,但并未是強制性要求。如果開放了遠程管理的功能,則需采取必要的網(wǎng)絡(luò)防護措施對網(wǎng)路通信進行加密,如采用加密模式對網(wǎng)絡(luò)通信進行加密或開啟數(shù)據(jù)庫的OpenSSL功能等。
 在SQL Server數(shù)據(jù)庫當中,可以采用exec sp_configure "remote access"指令來查看是否可以對數(shù)據(jù)庫進行遠程連接,其結(jié)果:1表示容許遠程訪問,0表示不容許遠程訪問。
3 數(shù)據(jù)庫的訪問控制
 電力信息系統(tǒng)要求數(shù)據(jù)庫啟用訪問控制功能,其主要包括:用戶的權(quán)限管理、權(quán)限最小原則等。
3.1 用戶權(quán)限管理
 數(shù)據(jù)庫的用戶權(quán)限管理主要是指對不同的用戶分配不同的權(quán)限,不使用特權(quán)用戶對數(shù)據(jù)庫操作及配置。
以MySql數(shù)據(jù)庫為例,數(shù)據(jù)庫的用戶權(quán)限查看及修改指令如下:
 Use Mysql;(選擇數(shù)據(jù)庫)
 Select * from user;(查詢用戶權(quán)限列表)
 根據(jù)查詢到的用戶權(quán)限結(jié)果,使用GRANT和REVOKE指令對用戶的權(quán)限進行修改,語法如下:
 GRANT priv_type[(column_list)]
 [,priv_type[(column_list)]...]
 ON {tbl_name|*|*.*|db_name.*}
   TO user_name [IDENTIFIED BY ′password′]
   [,user_name [IDENTIFIED BY ′password′] ...]
   [WITH GRANT OPTION]
 其中,GRANT代表對用戶進行授權(quán)操作,可用于授權(quán)及創(chuàng)建用戶;priv_type指的是數(shù)據(jù)庫操作權(quán)限,可以從如下集合中取值{ALL PRIVILEGES, FILE,RELOAD,ALTER,INDEX,SELECT,CREATE,INSERT,SHUTDOWN,DELETE,PROCESS,UPDATEDROP,REFERENCES,USAGE};參數(shù)ON{tbl_name|*|*.*|db_name.*}為用戶權(quán)限的使用范圍,*.*代表用戶權(quán)限范圍為所有數(shù)據(jù)庫的所有表,db_name.*代表db_name數(shù)據(jù)庫的所有表。
3.2 權(quán)限最小原則

 


 權(quán)限最小原則是指針對不同的用戶,為其分配使用數(shù)據(jù)庫的最小權(quán)限,若使用MySql數(shù)據(jù)庫,其指令如下:
 REVOKE priv_type[(column_list)]
  [,priv_type[(column_list)]...]
    ON{tbl_name|*|*.*|db_name.*}
    FROM user_name[,user_name...]
 其中REVOKE用于用戶權(quán)限的收回,其他參數(shù)的含義同GRANT指令參數(shù)。
 對于數(shù)據(jù)庫的多余用戶賬戶,應(yīng)及時刪除。在MySql數(shù)據(jù)庫中,可以使用Delete user where User=‘username′指令刪除多余賬戶。在Oracle數(shù)據(jù)庫中,可以使用指令select*from dba_users;select*from dba_users t where t.expiry_date<sysdate;select LOCK_DATE, username from dba_users;來查看數(shù)據(jù)庫中是否有多余、過期或被鎖定的賬號。
4 安全審計
 除了數(shù)據(jù)庫的身份鑒別、訪問控制以外,還需對數(shù)據(jù)庫進行安全審計。審計的范圍包括服務(wù)器及重要的客戶端,審計的內(nèi)容包括用戶行為、系統(tǒng)資源的使用情況和重要系統(tǒng)指令的使用情況等。
以O(shè)racle數(shù)據(jù)庫為例,數(shù)據(jù)庫安全審計的檢查應(yīng)該包含如下內(nèi)容:
?。?)檢查數(shù)據(jù)庫是否開啟了審計功能:
show parameter audit_trai;
?。?)檢查數(shù)據(jù)庫中的日志使用情況:
select*from V$LOG
?。ㄗⅲ簷z查結(jié)果中的group表示日志組號,bytes顯示日志文件大小,ARC顯示日志文件是否歸檔,status表示日志有狀態(tài))
?。?)檢查數(shù)據(jù)庫的審計級別:
select*dba_stmt_audit_opts
?。?)根據(jù)數(shù)據(jù)庫的審計級別查看審計內(nèi)容:
 select*from dba_stmt_audit_opts;
 select privilege,user_name from dba_priv_audit_opts;
 select owner,object_name,object_type,INS,SEL from dba_obj_audit_opts;
5 資源控制功能
 除了對數(shù)據(jù)庫本身的訪問控制以外,還需對安裝數(shù)據(jù)庫的服務(wù)器進行資源控制,包含對服務(wù)器的CPU、硬盤、內(nèi)存和網(wǎng)絡(luò)資源使用情況進行監(jiān)視,設(shè)置客戶端操作超時鎖定等[7]。
6 入侵防范及網(wǎng)絡(luò)數(shù)據(jù)安全傳輸
 如同大部分網(wǎng)絡(luò)服務(wù)器一樣,在裝有數(shù)據(jù)庫的服務(wù)器上需要部署入侵防范措施。在電力信息系統(tǒng)中,通常在網(wǎng)絡(luò)邊界上部署防火墻或者其他IDS設(shè)備實現(xiàn)服務(wù)器的保護。在實際應(yīng)用中,可以結(jié)合網(wǎng)絡(luò)SSL協(xié)議、IPSec協(xié)議和HTTPS協(xié)議等保護數(shù)據(jù)的安全傳輸。
 還可以使用在數(shù)據(jù)庫表中加入校驗字段的方式實現(xiàn)數(shù)據(jù)加密[7-8],客戶端在對服務(wù)器數(shù)據(jù)庫數(shù)據(jù)進行操作之前,使用加密算法,將需要傳輸?shù)臄?shù)據(jù)由明文轉(zhuǎn)化為密文;在服務(wù)器端,使用特定的程序?qū)⒚芪霓D(zhuǎn)化為明文,并通過校驗字段的檢查來判斷通信的數(shù)據(jù)是否被修改。此外,對于特別重要的數(shù)據(jù)還可以采用硬件加密的形式對其加密等。
 本文主要討論了電力信息系統(tǒng)中數(shù)據(jù)庫安全防護的具體措施,總結(jié)了電力信息系統(tǒng)中使用的數(shù)據(jù)庫安全技術(shù),并給出了相應(yīng)操作的代碼。在實際的工作中,需根據(jù)實際情況采取相應(yīng)的防護措施,及時形成電力信息系統(tǒng)數(shù)據(jù)庫安全防護規(guī)范,以便在實際應(yīng)用中開展安全防護工作。

參考文獻
[1] GB-T 22239-2008.信息安全技術(shù) 信息系統(tǒng)安全等級保護基本要求.2008.
[2] 王珊,薩師煊.數(shù)據(jù)庫系統(tǒng)概論[M].北京:高等教育出版社,2010.
[3] 朱良根,雷振甲,張玉清.數(shù)據(jù)庫安全技術(shù)研究[J].計算機應(yīng)用研究,2004(9):127-138.
[4] 王靜,易軍凱.基于入侵檢測的數(shù)據(jù)庫安全模型研究[J].微計算機信息,2006,22(9-3):84-86.
[5] 馬鮮艷.數(shù)據(jù)庫安全技術(shù)探析[J].西安郵電學(xué)院學(xué)報,2008,13(3):99-102.
[6] 李東風(fēng),謝昕.數(shù)據(jù)庫安全技術(shù)研究與應(yīng)用[J].計算機安全,2008(1):42-44.
[7] 胡志奇.數(shù)據(jù)庫安全與加密技術(shù)研究[J].計算機與現(xiàn)代化,2003(11):58-61.
[8] 張剡,夏輝,柏文陽.數(shù)據(jù)庫安全模型的研究[J].計算機科學(xué),31(1):101-104.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。