陳艷春
(1.北京理工大學管理與經濟學院,北京 100083;2.石家莊鐵道大學經濟管理學院,河北石家莊
050043)
Mashup應用安全風險評估模型研究
陳艷春1,2
(1.北京理工大學管理與經濟學院,北京 100083;2.石家莊鐵道大學經濟管理學院,河北石家莊
050043)
Mashup應用作為企業情境應用程序,它利用從外部數據源檢索到的內容來創建全新的服務。由于缺乏安全標準和核實鑒別的信任機制,隨著更多的企業用戶構建基于Mashup的應用,潛在的安全風險急劇增加。為了解決這個問題,以開發者的視角,通過解構Mashup應用的開發過程,
集靜態和動態安全風險因素于一體,透視Mashup應用的組件和行為特征,提出Mashup應用的定量風險評估框架,定義風險評估模型,在滿足假設條件基礎上,應用 M arkov鏈予以定量評估,為開發安全的應用提供參考。
Mashup;應用;風險評估;評估模型
一種新型的基于 Web的數據集成應用程序正在 Internet上逐漸興起。通常用術語Mashup表示,它們的流行萌芽于對交互式用戶參與和集成第3方數據的類似于科學怪人方式的重視[1]。在互聯網上,用戶可以借用已有Mashup組件搭建自己的程序,這就是Mashup應用。隨著更多的企業用戶構建基于Mashup的應用,Mashup應用的安全問題日益受到關注,已有文獻從多種視角進行探索。NAONE和來自OpenA jax聯盟、微軟研究院、信息安全公司的MAND IAN T,以及Mashup Maker公司的JACKBE等業界專家一起討論并評估了Mashup安全的現狀以及未來的關注點[2]。來自BEA的RHUBART和GARRISON從部署服務的視角探索安全性,認為應該設計更安全的服務框架。DAN IEL等從組件質量的角度研究安全問題[3],認為應該從組件的API質量、數據質量和性能提高安全性。筆者基于已有成果,采取動態和靜態相結合的思想,通過對Mashup應用組件的質量、應用的體系結構和組件之間的訪問聯結來評估風險,為構建安全的Mashup應用提供參考。

圖1 Mashup應用開發模型Fig.1 Development model for Mashup app lications
Mashup應用是跨組織的系統集成,就像搭積木一樣,可以把來自外部的內容嵌入到自己的網頁,不同部件之間可以調用。Mashup應用從架構上來說由3部分組成,它們在邏輯上和物理上都是相互脫離的(可能由網絡和組織邊界分隔):API/內容提供者、Mashup站點和客戶機的 Web瀏覽器[1]。對于開發者,混搭的安全存在于開發的每個部件和環節,圖1從開發的角度描述了Mashup應用的開發過程。最頂層是Mashup應用,這是應用內外部的數據和組件搭建的Web程序,每個程序有一些混搭網頁組成,網頁被劃分為若干區域,這些區域是組件所在地,組件通過API接口隱藏了內部復雜的實現細節。組件開發完成后在Mashup站點發布供開發者使用,開發者可以通過專有工具去構建應用。從圖1可知:組件的功能和非功能因素如體系結構、數據格式、語言、協議等影響組件的性能,這也是評估組件質量的參數。
1.1 Mashup站點
Mashup站點是存放Mashup的地方。值得注意的是,它僅僅是Mashup邏輯所在的地方,而不是執行這些邏輯的地方。從一方面來說,Mashup可以直接使用服務器端動態內容生成技術(如Java servlets,CGI,PHP或ASP)實現類似傳統的 Web應用程序。
1.2 Mashup應用
Mashup應用的頁面被分割成幾個長方形區域,每個區域用于顯示1個部件。1個部件就是它隸屬的服務器端的輸入和輸出窗口,可以與服務器端獨立交互。微軟將含有多個部件的網頁叫部件頁,含有外來部件的部件頁叫混搭網頁,或者混搭部件頁。簡單的混搭部件頁中,各個部件獨立工作。在復雜的混搭部件頁中不同部件之間存在調用關系。含有混搭網頁的網站叫Mashup網站,提供內容的網站叫Mashup供源。Mashup供源提供的服務分為 SaaS和DaaS。
1.3 API/內容提供者
內容提供者是正在進行融合的內容的提供者。比如在 ChicagoCrime.org Mashup的例子中,提供者是Google和芝加哥警察局[1]。為了方便數據的檢索,提供者通常會將自己的內容通過 Web協議對外提供。然而,很多有趣的潛在數據源可能并沒有方便地對外提供API。如從Wikipedia,TV Guide和所有政府及公共領域的Web站點上提取內容的Mashup都是通過一種稱為屏幕抓取(screen scraping)的技術實現的。在這種情況中,屏幕抓取就意味著使用一種工具從內容提供者那里提取信息的過程。該工具可以對提供者的頁面進行分析。
與安全風險評估相關的國際標準來自ISO/IEC,ISO 8402—86專注應用軟件質量或對于一個給定的評估過程。標準ISO 8402-86定義質量的總體特征和特定的軟件產品應滿足規定或隱含需求,標準ISO/IEC 9126-1定義軟件產品的質量特征組合,通過代表軟件產品屬性的6個特征來描述和評價軟件產品。對每個參數,標準也提供了一系列子參數來評估質量。
基于ISO/IEC標準,國內外的學者面向傳統的Web應用提出質量控制模型[4]。對Mashup應用的安全性從不同方面予以研究,如文獻[5]從組件的內部和外部特征建立評估Mashup組件的質量模型;有的學者探討Mashup軟件的開發過程,以加強安全性,如文獻[6]。上述做法可以歸納為從組件的特征來評估質量和風險,但是應用的運行不僅涉及組件本身,還涉及組件之間的聯結,因此需要從動態和靜態結合的角度來制定評估標準。

圖2 安全風險評估模型Fig.2 Framework of security risk evaluation model
基于上述研究成果,依據ISO/IEC標準,抓住組件和組件之間調用的動態特征,構建Mashup應用的安全評估模型。框架如圖2所示,該安全風險評估框架包括3層:第1層是安全風險評估的目標,根據國家標準 GB/T 20269-2006和GB/T 20273—2006,信息安全等級分為D類、C類、B類、A類和超A類,共5級,安全等級與評分結果的對應關系參見文獻[6]。為了實現目標控制要求,從2個方面來評估:一是Mashup組件的質量,二是組件與組件之間聯結。
安全風險評估依據風險評估模型。風險評估模型驅動風險評估:評估方法依靠良好的風險模型框架和可識別的維度劃分,并且對維度能正確度量[3]。評估的整體思路為構建評價指標、指標的量化處理、進行綜合評價等若干步驟[7]。
3.1 Mashup組件的風險評估
3.1.1 Mashup組件的風險評估指標
國際標準ISO/IEC 9126從功能性、可靠性、可用性、有效性、可維護性和可移植性來評估信息系統質量。Mashup組件的質量是由多種因素決定的,開發者更在乎的是API、數據質量和性能。基于國際標準,從開發者的角度出發,綜合組件的內部和外部質量屬性,按照傳統應用MVC(表示層 —邏輯層 —數據層)架構分解,分析影響用戶使用的性能指標。表1從API、數據質量和性能描述3個維度來衡量。針對每個給定指標給出具體的子參數,如API維度又可從互操作性、可靠性、安全性和可用性方面來評估[4]。

表1 Mashup組件風險評估指標Tab.1 Evaluation inder of Mashup component
由表1可以看出,指標體系為樹狀結構,即每個下級指標只與一個上級指標相關聯;每個屬性的邊際價值是線性的,每2個屬性都是相互價值獨立的,很難判斷哪個維度更重要。
3.1.2 Mashup組件風險指標量化
目前,缺乏組件的質量標準和規范,對 Mashup組件的質量評估數據來源于 http://www.p rogrammableweb.com網站。該網站發布的組件主要有2個特點:一是每一分類標簽下的組件數目懸殊,如地圖組件占27%,圖書、插件、消息組件各占4%;二是每天均有大量新組件上傳,新組件單獨列表,用戶還沒有開始聲譽評價。
為了定量評估,首先需要對每一個參數進行標準化和歸一化處理,如安全性的變化范圍限定到0和1,如果支持SSL協議是1,否則是0。總有一些屬性無法或很難量化,這時就給不出決策矩陣,只能給出每個維度下各組件的優劣次序,采用基于估計相對位置的方案排隊法給出每類組件的優先順序,對開發者來說,也只能在上述網站中選擇組件。但每天都有大量的新組件出現,對組件的評估實際是與已知的最好的比較給出的相對值,也就是說對組件的定量評估要實現動態調整其排名。
3.2 Mashup應用的行為模型
Mashup應用通常稱為企業情境應用程序,是針對特定場景創建的,并且通常僅在該場景存在的時間段內使用。在對Mashup應用建模中,稱系統的各個組成部分為組件,組件之間的通信鏈路為聯結。Mashup應用不僅包括系統行為和界面等功能性的屬性,還包括非功能性屬性,因此有必要研究Mashup應用的行為模型。
圖3是Mashup應用的行為模型,采用分層的思想:首先把應用分解成若干任務,直到成為不可分解的原子任務為止。為了完成該任務,需要至少1個組件來完成,筆者研究的組件數目大于等于2個。圖3中,任務 X開始執行,首先調用組件Ci,Ci可以調用組件Cj或者Ck等完成任務X,“結束”是任務的中止點。pij代表組件Ci在運行后執行組件Cj的條件概率 。轉移概率矩陣用 P表示。其中,pij=nij/ni,nij是在執行任務 Tx過程中i組件調用j組件的次數;ni= ∑ nij是任務 Tx執行過程中i組件調用其他組件的次數總和。

圖3 Mashup應用的行為模型Fig.3 Behavior model fo r Mashup app lication
為了便于分析,提出3點假設。
假設1:假定不同任務之間的關系是單向的,系統執行有唯一的起點和終點。筆者先研究此種情形下的模型,然后依此類推,可以擴展到多維的情形。
假設2:假定系統不同組件執行的活動具有Markov特性,即在已知受控組件狀態下,系統下一步活動僅與前一步活動有關,與所有其他過去活動無關。
假設3:假定系統中各個組件和聯結具備風險獨立性,即某個組件出現問題,都不會影響其他組件和聯結本身的性能或安全性[8]。
3.3 基于Markov鏈的風險評估模型
基于上述假設,任務執行的狀態只與當前受控組件有關,而與以前的組件狀態無關,因此這是離散的M arkov鏈。設{Xn,n∈T}為M arkov鏈,其中(X1,X2,…,Xn)表示組件調用序列(或系統運行狀態等),其狀態空間為應用中所有組件調用的集合。假設給定應用共需要調用l個組件,則該M arkov鏈具有l+1過渡狀態,1個吸收態,其值代表不同的安全風險狀態。轉移概率不僅包括組件還應包括組件之間的聯結。首先,通過統計方法計算一步狀態轉移概率矩陣P,pij定義為組件Ci執行后成功執行Cj的概率,pij=nij/ni,其中ni表示組件Ci調用所有組件的次數,nij表示組件Ci調用組件 Cj的次數。設 ri為組件Ci發生安全事件風險概率,rij表示Ci與Cj之間的聯結發生安全事件的風險概率,因此,轉移概率修正成(1-ri)pij(1-rij),記為p′ij,表示當 Ci且Ci與Cj之間的聯結沒有發生安全事件的情況下 Ci到Cj的轉移概率[8]。令 R是(l+1)×(l+1)階矩陣,表示過渡態之間的轉移概率,A為(l+1)×l向量,表示過渡態到吸收態轉移矩陣,U為單位矩陣,則轉移概率矩陣可寫為

從過渡狀態到達吸收狀態的概率矩陣B可寫成:

矩陣B是應用的風險指標,其取值的高低分別代表5個安全風險狀態。
3.4 算例分析

圖4 房源管理應用行為模型Fig.4 Behavio r model fo r housing info rmation management
例如,房地產交易網站,可以將該城市的地圖影像與住宅小區的房源信息關聯,購房者在地圖中圈出期望的新家所在地,這個區域的房源信息就會立即顯示出來。在Mashup應用主頁面首先加載地圖組件(記為C1)和數據顯示組件(記為 C2),然后集成房源信息和安全狀況數據(記為C3),該應用的行為模型見圖4。房源信息是網站自己的數據,而地圖組件可以選擇的有 Google M aps,Yahoo Maps,M icrosoft Virtual Earth等5個組件,這些組件被評為四星級以上,公司的聲譽很好,是目前地圖組件的首選,組件風險取值為1。

以開發者的視角,通過解構Mashup應用的開發過程,從靜態和動態相結合方法分析影響安全風險的因素,透視Mashup應用的組件和行為特征,定義風險評估模型,定量計算應用的風險指標,為開發者選擇組件提供參考。
[1] M ERRILL D.Mashups:The New Breed of Web App[EB/OL].http://www.ibm.com/developerworks/xm l/library/x-Mashups.htm l,2006-10-16.
[2] ROBB INS S.服務和Mashup的安全性[EB/OL].http://www.kuqin.com/web/20080421/7233.htm l,2008-04-21.
[3] DANIEL F,MATERA M.Turning web applications into Mashup components:Issues,models,and solutions[A].International Conference[C].[S.l.]:[s.n.],2009.
[4] CAPPIELLOO C,DAN IEL F,MA TERA M.A quality model for Mashup components[A].International Conference[C].[S.l.]:[s.n.],2009.
[5] OLSINA L,SASSANO R,M ICH L.Specifying Quality Requirements for the Web 2.0 Applications[M].[S.l.]:IWWOST,2008.
[6] 韓利紅.電網企業投資效益數學評價方法研究[J].河北科技大學學報(Journal of Hebei University of Science and Technology),2009,30(2):180-184.
[7] 毛建偉.廣義模糊綜合安全評價模型及其在鐵路橋梁評價中的應用[J].河北科技大學學報(Journal of Hebei University of Science and Technology),2008,29(3):246-249.
[8] L IH T,L IU Y,HED Q.Security risk evaluation for IT systems based on the Markov chain[J].Journal of the China Railway Society,2007,29(2):50-53.
Security risk evaluation model for Mashup application
CHEN Yan-chun1,2
(1.School of Management and Economics,Beijing Institute of Technology,Beijing 100083,China;2.Economic and Management Institute,Shijiazhuang Railway University,Shijiazhuang Hebei 050043,China)
An exciting type of data-integrated app lication based on Web is sp routing up all across the Internet,w hich is called Mashup app lication.A t the same time,some new technologies and social challenges reveal themselves sequentially.This paper researches in Mashup app lication from a perspective of security,discusses how to assess the risks of Mashup app lication,and puts fo rward a risk evaluation model and some possible metrics for the actual assessment.
Mashup;app lication;risk assessment;evaluation model
TP393.08
A
1008-1542(2011)01-0052-05
2010-05-11;責任編輯:李 穆
河北省社會科學規劃項目(HB10EYJ102)
陳艷春(1974-),女,河北玉田人,副教授,博士研究生,主要從事信息系統安全評估、知識管理等方面的研究。