史冬梅 董長山
摘要:本文通過分析目前應用軟件中經常出現的安全問題及對于未來不可預知安全問題的理解,圍繞如何打造更安全的應用軟件框架,從系統(tǒng)安全、數據安全、應急處置、用戶安全等方面設計出一套通用的軟件安全架構,可以很好地與現有和已有軟件的集成,有效提升軟件應用的安全性。
關鍵詞:用戶;行為;審計;應急
中圖分類號:TP316;TP309文獻標識碼:A文章編號:1672-9129(2020)13-0073-01
1引言
隨著日常工作的信息化,越來越多的業(yè)務都實現了軟件系統(tǒng)管理,在提升工作效率的同時,越來越多的重要信息成為數據存儲在軟件系統(tǒng)中,這些數據的泄露或是被篡改都會直接影響到企業(yè)業(yè)務的運行,甚至對企業(yè)照成直接的經濟損失,為此軟件系統(tǒng)的安全顯得尤為重要,目前在企業(yè)應用軟件大多采用分布式的開發(fā)方式,每個軟件都有自己的一套安全機制,標準不統(tǒng)一、安全防范也很難按照安全形勢的變化進行調整,在日新月異的攻擊手段面前顯得蒼白無力,為此考慮搭建一套綜合性的軟件安全架構,能夠實現以下幾方面功能:一是遇到惡意攻擊可以進行應急反應;二是對惡意攻擊有一定感知功能;三是對系統(tǒng)應用的關鍵環(huán)節(jié)要有安全策略;四是方便部署有利于新軟件開發(fā)和老軟件的升級;五是實現統(tǒng)一管理。
2安全框架設計
2.1基本架構體系。
系統(tǒng)框架共分四個層次,分別是應用程序層、任務調度中心層、安全功能層、數據層,四個層次以調度中心為中心,各層之間以標準數據格式進行交互,交互過程采用多種加密方案:
第一層為應用程序程層:系統(tǒng)提供標準接口可以和其他應用程序進行對接,自建系統(tǒng)進行集成開發(fā),只負責具體業(yè)務邏輯,如人事管理、工程管理等,具體數據交互、身份認證、安全管理等內容全部交由此框架來負責;其他已建系統(tǒng)可以將自己的安全部分通過接口導入到此框架中,安全管理部分實現統(tǒng)一管理。
第二層為任務調度中心層:負責進行程序間的數據、消息傳遞,各應用程序或應用的功能模塊都可以項任務調度中心發(fā)出任務,任務調度中心負責任將務轉發(fā)給對應的功能模塊,然后將執(zhí)行結果反饋給任務請求者。
第三層為安全功能層:負責具體應用安全功能,包含四個功能模塊:
(1)環(huán)境監(jiān)測模塊:根據各應用對服務器、客戶端系統(tǒng)的安全基線,對運行環(huán)境進行監(jiān)測,形成監(jiān)測報告,對不符合運行要求的提出解決方案,終止程序運行。包含服務器環(huán)境監(jiān)測、客戶端環(huán)境監(jiān)測兩項功能:
服務器環(huán)境監(jiān)測:服務器硬件配置、各項運行參數、操作系統(tǒng)漏洞情況、數據庫等應用程序補丁及各種病毒監(jiān)測、應用程序依賴基礎插件。
客戶端系統(tǒng)環(huán)境監(jiān)測:客戶端硬件配置、各項運行參數、操作系統(tǒng)漏洞、應用程序漏洞。
(2)用戶認證模塊:自建一套用戶認證體系,提供用戶名密碼、短信、指紋、臉部識別、數字證書等多種認證方式,并根據認證策略可以實現認證次數限制、黑名單、白名單,實現單點登錄,包含用戶認證、權限分配、用戶信息等三項功能。
(3)日志管理模塊:任務調度中心每一個操作都會生成日志,這些日志被收集分類存儲,進行實時分析和離線分析,通過實時分析發(fā)現用戶登錄、用戶操作行為、系統(tǒng)運行狀態(tài)、數據狀態(tài)的異常,通過離線分析發(fā)現一些趨勢性的問題,形成報告發(fā)給預警告警模塊,日志管理具體功能由日志收集、日志實時分析、離線分析三個模塊:
離線分析模塊:這個模塊主要是對放置到離線數據庫的日志數據進行分析,它主要是作為后期行為分析的一個重要組成部分,在海量數據中利用更加復雜的算法,發(fā)現隱形問題,同時可以進行算法測試,形成實時分析算法。
(4)規(guī)則配置模塊:該模塊是整個安全架構的核心,負責用戶認證規(guī)則、日志采集規(guī)則、數據交換加解密算法、環(huán)境監(jiān)測參數、系統(tǒng)運行參數等所有系統(tǒng)及信息交互的規(guī)則參數配置,包含用戶認證策略、信息交互算法、環(huán)境監(jiān)測參數、日志分析規(guī)則、日志采集規(guī)則、預警告警發(fā)送規(guī)則等功能。
用戶認證策略:認證方式應采用模塊化設計,管理員可靈活地進行裝載和卸載,同時還可按照用戶的要求方便地擴展新的認證模塊。認證策略是指認證方式通過與、或、非等邏輯關系組合后的認證方式。管理員可以根據認證策略對認證方式進行增、刪或組合,以滿足各種認證的要求。
(5)預警告警模塊:該模塊進行預警告警信息處理,按照規(guī)則將內容按照短信、內部信、騰訊通等方式發(fā)給指定用戶,同時可以進行該信息的分析,進一步優(yōu)化預警告警發(fā)送規(guī)則。
第四層為數據層:數據層由兩部分功能,一是數據緩沖池,負責將各應用系統(tǒng)需要的數據組織起來,不需要的數及時從緩沖池中去掉,二是數據接口,與oracle、mongdb、hbase等多源頭、多類型數據庫進行數據交互,整個交互過程進行全過程記錄。
2.2運行機制。
一般情況下整個安全架構的運行是建立在各應用系統(tǒng)、各控制模塊之間的相互信任情況下,可以相互自由通訊,用戶訪問應用及后臺信息調度可以分為以下兩部分來完成:
第一步:運行基礎環(huán)境確認,應用程序第一次運行首先判斷客戶端、服務器是否符合安全基線要求,每次應用環(huán)境發(fā)生變化時,重新進行安全基線監(jiān)測,把好客戶端、服務器端的第一道防線。
第二步:任務調度中心收到任務,先將任務形成日志發(fā)送給日志模塊進行實時分析,發(fā)現沒有問題,通知任務調度中心可以執(zhí)行任務。如果發(fā)現違規(guī)問題,任務調度中心將阻斷此次操作,發(fā)送預警告警模塊,通知到相關人。
3結語
以上安全架構根據本人多年來從事軟件開發(fā)工作,總結這些年發(fā)生的安全時間及處理方式,形成的一套軟件安全架構思想,這些思想要具體的開發(fā)工作進行緊密結合,既要方便使用提升軟件運行效率又要盡量做到安全,未來的安全形勢越來越嚴峻很多不可以預知的風險隨時會讓信息系統(tǒng)變得脆弱不堪,安全研究始終不能放松,沒有安全的信息環(huán)境,對企業(yè)社會的發(fā)展都是隱患,力爭讓風險在可控范圍內。
參考文獻:
[1]《軟件安全分析與應用》 清華大學出版社 楊鐵等
[2]《企業(yè)安全建設入門:基于開源軟件打造企業(yè)網絡安全》機械工業(yè)出版社