“Heartbleed”,意即“心臟出血”。今年,以其為代號的事件成為互聯網史上最大的信息安全問題。無數臺計算機、成千上萬的用戶都遭到這個小小的“緩沖區越邊界讀取”問題的考驗。業內權威雜志《電子周刊》(eWeek)預估美國方面的損失高達5億美元。然而,這一安全事件完全可以避免——只需在發布產品前做個安全評估測試即可,費用僅需幾千美元。在安全評估測試期間,源代碼會得到仔細的檢測,還會采取滲透測試來核查產品對現有攻擊手段的安全保障力度。
采取不同級別的審核和滲透測試,安全檢測評估可以讓用戶知曉產品安全的保障級別。由于信息安全產品的層次各有不同,這也導致評估內容千差萬別,但在實際應用中,主要有三種最為常見的安全評估認證類型:
·通用準則(CC)認證;
·安全智能卡產品的認證;
·支付終端和相關設備的認證;
而在每種類型的認證中,都有三方面的參與:認證機構負責頒布證書;安全評估實驗室負責測試;以及開發商或者賣家提供測試樣本,并提供源代碼和文檔等認證所需材料。
通用準則安全評估認證
通用準則(CC)作為國際標準,專用于計算機的安全認證方面。而信息和通信行業(ICT)的爆炸性發展為如何應對安全問題帶來一系列挑戰。簡單說來,ICT行業一方面需要大量的數據接入處理,但另一方面在處理其中的重要信息時又要確保這些數據的安全和完整。倘若沒有得到授權,任何第三方都無法泄露或篡改原始數據。但是,一般的消費者難以對此作出評判,評估某個ICT系統的安全性(主要有機密性、完整性和可用性)。因此,我們需要來自獨立公正的第三方的測評服務,普通的消費者也能藉此了解所使用產品的安全特質和性能。
通用準則實際上是一套針對ICT產品的安全品質進行評估和檢測的標準,便于業內對產品開展定性定量的分析。通用準則幫助公眾理解兩個方面的問題:“這個產品的用途是什么?”(安全功能)和“您對其安全功能有多少信心?”(安全保證)。任何一位ICT系統的用戶都可通過這個標準框架確定他們的安全要求;賣家也可通過這個框架確定或者宣揚他們產品的特質和優勢;測評實驗室還可通過這一框架來得出測評結果,便于公眾理解。通用準則為ICT行業帶來整個流程的安全保證 —— 保證其規范設計、實現和評估都遵循了正確、標準的方式。
通過安全測評,評估對象(TOE)的安全性能都需要一一驗證。為保證其安全功能的實際使用,凡是涉及到TOE安全特征的功能都需要得到認證。
評測過程也是一個確立對其安全性信心的過程,通過各種質量保證檢測手段,測試出產品的安全性能。業內通常采取評估保證級(EAL)以量化評估內容,這樣用戶就對評估深度和嚴格程度有了一個確切的了解,不同產品間的比較衡量也有了一個通用平臺。必須要指出的是,更高級別的EAL并不一定總意味著“更好的安全性”——這只不過說明評估對象的受檢范圍更為廣泛,評測實驗室對其性能的檢測更為細致。從國際層面上看,國際通用準則認證互認協定(CCRA)給通用準則(CC)認證帶來更為廣泛的適用性。通常,只有不高于EAL 2(包括EAL2)的評測結果才能得到國家間的互相承認。
安全智能卡產品的安全評估認證
同通用準則(CC)不一樣,某些安全評估認證的對象僅以智能卡產品為主,例如EMVCo、萬事達CAST、維薩VCSP、運通卡、發現卡、銀聯,以及JCB等。這些都是國際知名的信用卡組織,它們的智能卡產品遍布全球各個角落。因此,這些機構極為關注它們產品的安全保證和認證問題。從實際檢測中看,它們委托多個評估實驗室來開展安全檢測,一般都按照如下程序來檢測:
文檔研究 代碼評估/脆弱性分析 初步測試 攻擊選項 滲透測試 攻擊評級 最終報告
其中,滲透測試是評估過程的核心,包括了智能卡產品的兩種滲透測試:旁路攻擊和干擾攻擊。旁路攻擊嘗試通過旁路信號以獲取敏感數據,譬如密鑰或者個人識別碼(PIN)等。旁路信號通常包括執行安全相關指令時智能卡芯片的電流變化、電磁泄露、執行時間以及音頻信號等。下面這幅圖說明了在運行RSA密碼算法的過程中,一張智能卡的RSA密鑰是如何通過電流變化來獲得的。我們日常生活中RSA密碼算法無處不在,每次用網銀U盾做交易時就會進行RSA密碼計算,上網瀏覽時瀏覽器和服務器之間通信時也會進行RSA密碼計算,等等。目前世界上商用的RSA密鑰通常有1024位或2048位,通常一次RSA密碼運算需要做上千次或幾千次平方和乘法運算(圖1),當密鑰的那一位是“1”時需要做一次平方運算(綠色所示)及一次乘法運算(紅色所示),當密鑰的那一位是“0”時則只需要做一次平方運算。
干擾攻擊則試圖改變IC卡芯片的正常運行使得安全相關的指令執行過程出現漏洞,進而導致密鑰或個人識別碼(PIN)等敏感數據的泄露。干擾的方式多種多樣,有些很好理解。例如,改變正常的電壓/頻率范圍、用光/激光脈沖、電子感應或電涌影響電子行為特征等。這些都可能導致密碼計算錯誤、程序流程變動和數據變更等。當前光攻擊在干擾測試中應用最為廣泛。(圖2)
除了智能卡,支付終端以及各種相關設備的安全保障問題也得到公眾的密切關注,其中最為常見就是PED和POS,分別表示個人識別碼(PIN)輸入設備和銷售點終端。
眾所周知,PED/POS設備的安全保障至關重要,因為大量的金融欺詐都與此有關。在整個交易環境中,支付終端總是最薄弱的一環。易于接入、無人值守、設備龐雜等客觀原因都對這個環節造成巨大的壓力。
在PED設備的評測中,我們一般采取三種測試方法:
篡改證據——證明有攻擊發生的證據;
針對篡改行為的抵抗措施——對攻擊采取被動的物理保護措施;
針對篡改的偵測和反應——當攻擊發生時,會采取主動的反應行動,阻止其發展。

未來的安全評估會是怎么樣的?
總之,ICT產品的安全程度必須要得到用戶認可,這一點是整個行業發展的關鍵。唯有如此,人們才會確信信息安全產品能真正保護他們的資產,如密鑰或個人識別碼(PIN)。
如今移動支付發展的勢頭如火如荼。中國2013年的移動支付總額就高達1.2萬億人民幣。可以預見,人們對移動支付安全程度的要求將會越來越高。(圖3)
盡管目前移動支付發展勢頭很猛,廣受公眾歡迎,但業內迄今未建立起國際性的安全評估/認證標準。主要有如下三個原因:
1 各方意見不一,難以統一。市場中不同的參與方提出不同的方案,而其方案均源于不同的細分行業。例如,傳統支付機構、移動服務供應商、移動設備制造商以及第三方支付機構等。硬件技術也有各方的訴求。例如,安全硬件模塊(IC)、主機卡模擬技術(HCE)、信標技術以及在線(支付)賬戶等。
2 證實安全性的過程耗時費力。我們需要投入大量的時間和精力來部署測評策略,這樣才能確信產品能達到用戶期望的安全等級。目前,從產品設計制造到下線上市的時間總是很短。如此短的時間里測評報告的意義不是很大。
3 大眾對安全意識的理解有偏差。盡管負面的事件會對整體移動支付的業態環境造成不利影響,但按照墨菲法則,凡是可能出錯的事必定會出錯,技術進步過程中這種事情終究無法避免。現在市面上針對移動支付的解決方案千差萬別,多數仍處于研發試行的階段,部署規模尚不夠大,因此各種瑕疵或差池帶來的損失也有限。從供應商和用戶的角度看,人們的注意力還在應用開發上,相對來說,對于安全評估的關注還沒有提升到一個應有的水平。

成熟完備的解決方案當然會廣受歡迎,但現實是我們需要時間來滿足各方的需求。更為重要的是,產業鏈中的參與者必須認識到安全屏障被破壞而帶來的損害。文首提及的“心臟出血”事件就已讓我們清楚看到:必須將安全因素納入核心的設計策略,嚴格執行評測標準,這樣才能開發出一流的ICT系統/產品,為整個行業奠定互利互益的基礎。