祁振亞,劉軍杰,王紅偉 ,陳 勛
(1.北京經(jīng)緯信息技術有限公司,北京 100081;2.中國鐵道科學研究院集團有限公司 電子計算技術研究所,北京 100081)
隨著移動互聯(lián)網(wǎng)的發(fā)展,移動App已滲透到各行各業(yè),與人們的工作、生活息息相關。我國工信部發(fā)布的數(shù)據(jù)顯示,截至2019年12月底,我國市場上監(jiān)測到的移動App數(shù)量為367萬款,僅12月份,我國第三方App商店和蘋果App商店的新上架移動App就達17萬款。鐵路領域信息系統(tǒng)移動化建設高速發(fā)展,而鐵路工作人員的移動終端若發(fā)生病毒入侵、丟失或被盜,可導致內(nèi)部系統(tǒng)面臨數(shù)據(jù)泄露、數(shù)據(jù)篡改或非法攻擊等威脅,給鐵路行業(yè)帶來難以估量的損失。
移動智能設備爆發(fā)式增長,廠商眾多, 只讀存儲器(ROM,Read-Only Memory)更新速度參差不齊,國內(nèi)安卓系統(tǒng)碎片化問題嚴重,這些給鐵路移動信息安全管理帶來了較大挑戰(zhàn)。
當前,網(wǎng)絡安全等級保護(簡稱:等級保護)進入2.0時代。等級保護制度已成為新時期國家網(wǎng)絡安全的基本國策和基本制度[1]。建立一套完整的、符合等級保護要求的終端安全管理體系,保證鐵路移動智能終端的信息安全勢在必行。
本文利用虛擬安全域(VSA,Virtual Security Area)技術[2],結合安全網(wǎng)關(MAG,Mobile Application Security Gate)[3]技術及動態(tài)加密通道(DEC,Dynamic Encryption Channel)技術建設一套完善的鐵路移動智能安全管理平臺(MISMP,Railway Mobile Intelligence Safety Management Platform),實現(xiàn)鐵路企業(yè)移動終端的統(tǒng)一認證、有效管理,保障鐵路業(yè)務高效化,管控方式細致化,數(shù)據(jù)傳輸安全化,為鐵路移動App提供多角度的安全保障,為鐵路移動App辦公安全保駕護航。
MISMP的架構如圖1所示。
圖1 平臺架構設計
MISMP的架構設計分為4層,分別為用戶交互層、業(yè)務功能接口發(fā)布層、業(yè)務微服務[4]層及支撐環(huán)境服務層。
用戶交互層可提供與本平臺相關的業(yè)務模塊操作功能及公共平臺管理頁面;業(yè)務功能接口發(fā)布層負責將功能服務以Http RESTFul接口的形式供各終端調(diào)用;業(yè)務微服務層分為2部分服務職能,平臺業(yè)務相關職能和公共支撐能力相關職能,前者用于實現(xiàn)具體平臺功能相關的微服務,后者用于實現(xiàn)通用的邏輯功能;支撐環(huán)境服務層負責為平臺提供基礎環(huán)境服務,如內(nèi)存緩存服務、數(shù)據(jù)庫服務、集群管理、認證中心、消息推送服務、日志收集處理等。
結合鐵路行業(yè)移動終端實際需求,本平臺的主要能力包括業(yè)務能力、管控能力及安全傳輸能力,為各業(yè)務App提供多角度的安全保障。
1.2.1 業(yè)務能力
(1)快速安全加固
平臺基于移動App加固技術及鐵路移動業(yè)務軟件源碼安全保密需求,由用戶提供Android/iOS Native應用、H5應用、混合應用,可快速集成防靜態(tài)工具分析、Dex文件保護、So文件加殼[5]、內(nèi)存保護、反調(diào)試、簽名校驗等多項安全功能,解決核心代碼被反編譯,請求協(xié)議被偽造,應用程序包被植入惡意代碼等諸多安全問題。
(2)數(shù)據(jù)安全隔離
平臺在移動設備上創(chuàng)建VSA,對VSA內(nèi)的App權限和用戶使用行為進行全方位的管理和保護,實現(xiàn)用戶私人數(shù)據(jù)與工作業(yè)務數(shù)據(jù)的安全隔離,在保障鐵路行業(yè)數(shù)據(jù)安全傳輸與存儲的同時,提升用戶的移動辦公體驗。
(3)安全內(nèi)網(wǎng)訪問
本文設計并建立了MAG代理機制,在實現(xiàn)互聯(lián)網(wǎng)用戶安全訪問內(nèi)網(wǎng)服務資源的同時,規(guī)避企業(yè)內(nèi)網(wǎng)服務器直接暴露在互聯(lián)網(wǎng)所帶來的安全隱患,做到內(nèi)網(wǎng)資源、網(wǎng)絡結構對外不直接可見,增強內(nèi)部資源服務器的安全性。
(4)內(nèi)網(wǎng)資源零改造
基于SSL/TLS加密協(xié)議[6],MAG在提供網(wǎng)關功能服務的同時支持TCP協(xié)議內(nèi)網(wǎng)資源服務,適配原有內(nèi)網(wǎng)資源的協(xié)議形勢,從而達成內(nèi)網(wǎng)資源的零改造,最大程度地降低安全改造的成本。
1.2.2 管控能力
(1)基于App的策略配置
MAG集成調(diào)用平臺的VSA應用,可批量指定App準入策略,也可針對每一個業(yè)務App,靈活配置安全接入策略,便于管理人員進行運維管理。
(2)多角度的權限準入
只有用戶、設備、App均符合企業(yè)信息化安全要求才能接入企業(yè)內(nèi)網(wǎng)。MAG的準入控制模塊可識別訪問請求信息中的用戶身份信息、設備信息、App信息,針對不同用戶使用的設備信息和應用信息,準確設置攔截過濾規(guī)則,確保只有用戶、設備和App均符合規(guī)范要求的請求才能通過,對不滿足規(guī)范要求的進行攔截。
1.2.3 安全傳輸能力
(1)SSL協(xié)議加密傳輸
平臺的安全通道采用SSL/TLS協(xié)議,加密算法需支持AES256、SM4,確保所有數(shù)據(jù)在一個安全、可信的通道中傳輸,防止數(shù)據(jù)在傳輸過程中被非法竊取或篡改,保障企業(yè)數(shù)據(jù)傳輸通道的安全性。
(2)SSL雙向認證保護
用戶與MAG建立安全通道,除了普通的用戶名、密碼或者短信認證外,還需做雙向的證書認證。需要客戶端與服務端證書認證通過后才能建立安全通道,增強用戶身份認證的安全性。
(3)支持商業(yè)密碼算法
數(shù)據(jù)加密是信息安全體系中重要的安保環(huán)節(jié),隨著科技的不斷發(fā)展,常用的商業(yè)密碼算法,如DES、RSA、MD5等,已確認可被破解。MAG需要支持國際通用的商業(yè)密碼算法AES256,保障用戶的數(shù)據(jù)傳輸安全。
(4)應用級安全通道
App自動封裝后,具備安全接入能力。業(yè)務App只需關注其業(yè)務能力,不需要在App集成聯(lián)調(diào)方案層面重復投入,降低技術難度以及開發(fā)成本。針對不同的App建立不同的安全通道,實現(xiàn)通道傳輸?shù)奈⒏綦x。
2.1.1 VSA技術
VSA 技術是通過在系統(tǒng)底層實現(xiàn)移動App安全保護能力的技術,無需獲取App源碼及設備Root權限,在設備內(nèi)部形成一個VSA,在該VSA中可實現(xiàn)鐵路行業(yè)各種移動業(yè)務的安全運行。
VSA由策略控制模塊和VSA引擎模塊構成。策略控制模塊負責對整個App運行進行安全管理并配置具體的策略內(nèi)容,包括 DLP模塊、網(wǎng)絡安全訪問、上網(wǎng)內(nèi)容審計、功能安全調(diào)用、隱私保護等,根據(jù)鐵路業(yè)務需求配置不同的安全策略,對App進行全方位、個性化的保護。VSA 引擎根據(jù)配置的App權限對其針對性的請求進行安全判別,在保證App正常運行的情況下,阻斷不安全請求,防止機密信息外泄和外部方式對該類信息的截取。 VSA技術原理如圖2所示。
2.1.2 HTML5跨平臺技術
鐵路行業(yè)開發(fā)人員在面對同一需求時往往需要開發(fā)2套App程序(Android版、iOS版),以滿足不同設備、不同操作系統(tǒng)的需求。
為了節(jié)約開發(fā)時間及資源,平臺結合HTML5[7-8]技術開發(fā)了MISMP JS-SDK[9]組件,界面可通過MISMP WebView顯示到手機上,技術架構如圖3所示。
圖2 VSA技術原理
MISMP WebView組件對系統(tǒng)瀏覽器控件作擴展和封裝,使WebView組件可訪問設備自身API,并可調(diào)用MISMP其他組件接口,打通MISMP組件和WebView之間的交互通道,讓二次開發(fā)人員更好的開發(fā)HTML5應用。通過MISMP JS-SDK組件,開發(fā)人員只需開發(fā)一套HTML5頁面,即可實現(xiàn)在Android和iOS設備上的跨平臺展示。HTML5調(diào)用時序及技術原理如圖4所示。
圖3 HTML5跨平臺技術架構
圖4 HTML5調(diào)用時序及技術原理
(1)將用戶開發(fā)的Web App部署到平臺服務器;
(2)啟動MISMP客戶端,通過WebView加載頁面;
(3)頁面調(diào)用MISMP JS-SDK接口;
(4)MISMP JS-SDK組件通過MISMP JS引擎調(diào)用MISMP能力組件;
(5)MISMP通過JS API,調(diào)用操作系統(tǒng)自身接口或者MISMP能力接口;
(6)返回結果通過JS邏輯處理,并在平臺UI上顯示。
本文將平臺的MAG服務器部署在鐵路網(wǎng)絡的隔離區(qū)(DMZ,Demiliatarized Zone)中,可使工作人員的移動智能終端在不切換內(nèi)外網(wǎng)的前提下安全使用內(nèi)網(wǎng)移動App。從而保障移動辦公App的后臺服務部署在內(nèi)網(wǎng),排除從互聯(lián)網(wǎng)直接訪問帶來的風險隱患。DMZ安全通道中使用了DEC技術。
應用級安全加密通道是保障移動終端安全的核心,加密方式更是安全通道的重中之重。動態(tài)密鑰庫屬于白盒加密。白盒加密[10]是指,可在白盒環(huán)境下抵御攻擊的一種特殊加密方法。通常,算法和密鑰是獨立的,白盒加密是將算法和密鑰結合在一起,由算法和密鑰生成加密表、解密表。安全通道通過查找加密表來加密,通過查找解密表來解密,不再依賴于原有的加解密算法和密鑰。
動態(tài)秘鑰庫保留加密、解密密碼表,將加密算法、密鑰表里選密鑰的算法和密鑰表3者分離開來。保證密鑰選取算法的安全至關重要,該算法需進行高強度的混淆并使用C語言來編寫,進行防反編譯和防調(diào)試處理。
本地預制密鑰庫,密鑰庫為一個密鑰字符串數(shù)組,數(shù)組存放在加密文件中,通過解密代碼讀取文件解析獲得密鑰。
平臺在客戶端和服務端都需要設計密鑰選擇算法,并隨機定義一個密碼表,這樣密碼表就算被攻破,也無法知曉用哪些字符進行解密。算法使用C語言編寫,并編譯成動態(tài)鏈接庫供客戶端和服務端使用,且具備防反編譯和防動態(tài)調(diào)試功能,具體過程如下:
(1)獲取密碼表,根據(jù)對稱加密算法和密碼表版本號,獲取本地的密碼表;
(2)根據(jù)時間戳和隨機字符串裁剪,獲取到密鑰開始索引;
(3)根據(jù)開始索引號從超長密碼字符串中向后移8 bit,獲取到本次交易對稱加密密鑰;
(4)獲取到本次交易的對稱密鑰后,客戶端即可使用該密鑰進行對稱加密,服務端采用同樣的算法,取本地密鑰后進行對稱解密。
因為平臺加密方式為對稱加密,只有選取密鑰需花費較少時間,在服務器內(nèi)存中的耗時可忽略不計,所以平臺的并發(fā)性能夠得到保證。
基于智能終端安全管控、傳輸鏈路安全加密、移動業(yè)務安全準入的MISMP可實現(xiàn)鐵路業(yè)務移動終端的安全防護。平臺可提供面向用戶、設備、App和容器的全方位安全防護,統(tǒng)一的VSA與個人應用空間完全隔離,在保障員工的個人隱私不被侵犯的同時,防止工作數(shù)據(jù)泄露,保護鐵路數(shù)據(jù)安全。平臺可在用戶無感知狀態(tài)下,實現(xiàn)鐵路日常移動辦公設備的安全管理,顯著提升終端設備的信息安全,有效降低企業(yè)管理成本,可為鐵路行業(yè)移動終端的信息安全建設提供參考。