View
6
Download
0
Category
Preview:
Citation preview
10 ■ 財金資訊季刊 / No.86 / 2016.04
本期企劃〡金融科技浪潮下建構安全又便捷的行動支付應用環境
金融科技浪潮下建構安全又便捷的行動支付應用環境
黃建隆 / 財金資訊公司安控部資訊安全組副組長
一、 前言
金融與科技的結合,造就金融科技順勢
發展,也加速金融創新的腳步。世界經濟論
壇 (World Economic Forum,WEF) 的金融科
技研究報告中指出,支付功能項目的創新有兩
項:一為無現金世界 (Cashless World);二為
新興支付 (Emerging Payment Rails),兩者之
關鍵趨勢分別包含手機支付與行動錢包,均與
行動裝置的支付應用有關,由此可窺得行動支
付實為未來金流關鍵趨勢之一。
隨著近來金融科技議題的火熱,行動裝置
於支付的應用儼然已為兵家必爭之地。但因行
動裝置功能日趨複雜,其應用越益豐富,伴隨
而來所衍生的安控議題也漸趨顯著。對於安全
性要求等級較高的支付應用而言,如何突破此
困境實為一大挑戰。本文將針對目前相關挑戰
與防護策略概述之。
二、 行動支付安全挑戰
基於目前行動裝置的高普及度,以及具有
下列特點,其安全威脅更甚於傳統的個人電
腦,也是金流業者亟須面對的重要事項。
(一 ) 行動裝置存有不法分子覬覦之標的,如:
行動支付應用 /行動網路銀行相關的敏
感性資訊 (交易金鑰、帳號密碼等 ) 或
通訊錄所儲存的個人資料、銀行帳戶資
訊等有價值資訊。
(二 ) 行動裝置長時間處於開機狀態,亦可能
持續連接網際網路,不若家中個人電腦
可能僅於使用時才開機上網。開機時間
拉長,風險暴露機會自然竄升。
(三 ) 行動裝置具多元輸出入管道,包括:
NFC (Near Field Communication)、 電
話、簡訊、藍牙、相機等,亦即可能遭
受攻擊的管道變多,例如:由於事前單
從 QR Code本身無法分辨其內容是否
有害,使用者以行動裝置掃描含惡意網
址的QR Code,即可能遭植入惡意程式;
又如:透過簡訊等管道,可能接收到惡
意連結,導致安裝木馬程式。
然而,行動應用程式 (Mobile applications,
簡稱 App) 就行動裝置而言,為行動支付的關鍵
核心之一。無論行動支付的設計是採硬體式安
全元件 (如:NFC SIM、MicroSD等 ) 或使用純
軟體 (如:雲端支付或第三方支付等相關的應
用 ) 方式,均配置所謂的錢包軟體,即 App,
www.fisc.com.tw ■ 11
金融科技浪潮下建構安全又便捷的行動支付應用環境〡本期企劃
圖 1 行動裝置之威脅來源
此 App係安裝於用戶端的行動裝置上,因其
平台環境目前係由各家廠商自行發展的開放系
統,故於平台環境上執行行動應用程式的安全
性恐有疑慮。由於 App的安全性攸關整體行動
支付之安全,尤其是純軟體式的支付設計方式,
不若硬體可保護敏感性資訊,因此其安全性更
須審慎關注。
App的風險與威脅,可參考開放網路
應用程式安全計畫 (Open Web Application
Security Project,簡稱 OWASP) 就技術角度
所發布的行動裝置十大風險,目前所面臨的風
險即可一目了然。2016年十大風險的候選項
目包含:
(一 ) M1 平台使用不當 (Improper Platform
Usage)。
(二 ) M2不安全的資料儲存 (Insecure Data
Storage)。
(三 ) M3 不 安 全 的 通 訊 (Insecure
Communication)。
(四 ) M4 不 安 全 的 認 證 (Insecure
Authentication)。
(五 ) M5 不 正 確 的 加 密 方 式 (Insufficient
Cryptography)。
(六 ) M6 不 安 全 的 授 權 (Insecure
Authorization)。
(七 ) M7用戶端程式碼的品質 (Client Code
Quality)。
(八 ) M8程式碼遭竄改 (Code Tampering)。
(九 ) M9逆向工程 (Reverse Engineering)。
(十 ) M10 額 外 但 有 安 全 疑 慮 的 功 能
(Extraneous Functionality)。
上揭十項均為行動支付的錢包 App所必
須正視的風險與挑戰,若未妥適解決,行動支
付將面臨安全疑慮。
12 ■ 財金資訊季刊 / No.86 / 2016.04
本期企劃〡金融科技浪潮下建構安全又便捷的行動支付應用環境
三、 安全防護策略
針對行動支付的防護策略,大致可區分為
下述兩類:
(一 ) 具硬體設計
係泛指具備安全元件的設計架構,如:
行動金融卡、信用卡等產品,但因基於對硬
體之需求,也因而限制其發展。安全元件主要
包含:NFC SIM (如:臺灣行動支付公司「t
wallet」、群信行動數位科技公司「RicoPay」
等 )、MicroSD ( 如:凱基銀行「X 卡」)、
eSE (如:Apple Pay等 ) 及外掛裝置 (如:
t wallet的 OTI-WAVE嗶嗶熊 ),基本上,以
通過國際組織認證的安全元件儲存交易金鑰、
密碼等,即已完成泰半的防禦工事,其他部分
則須藉由加強錢包軟體的安全性與限制安全元
件的存取對象予以補足。此類錢包軟體大致而
言,屬於目前市場上安全性相對高之支付方
式,其防護策略重點如下:
1. 綁定行動裝置的資訊,如:國際移動設備
識 別 碼 (International Mobile Equipment
Identity,IMEI)、國際移動用戶識別碼
(International Mobile Subscriber Identity,
IMSI) 或 Android ID,以供識別。綁定的
資訊如有異動,即進行相關處理作業。
2. 使用有效的程式碼混淆、偵測等防禦技
術,防止錢包軟體遭逆向工程、惡意程式
注入或程式碼遭竄改的風險。
3. 偵測作業系統是否遭破解而取得最高權限
或處於偵錯 (Debug) 環境,若是,則停
止程式執行。
(二 ) 純軟體設計
市場上現有雲端、第三方等之支付應用,
皆屬純軟體設計,如:Android Pay、雲端行
動金融卡、HCE信用 /借記卡、支付寶、Pi
行動錢包及 GOMAJI Pay等產品,不若前者
有硬體的要求限制,因係純軟體架構,其發展
較不受限,部分產品並可支援跨平台使用。此
類行動支付,基本上缺乏前揭硬體設計之安全
元件的保護,故須更著墨於軟體自身的安全架
構與交易機制,才能維持其安全性。
大體言之,此類錢包軟體的防護策略
重點,除前述具硬體設計者所列事項外,
尚須針對裝置上的交易金鑰、後端認證金
鑰或敏感性資料等,以白箱加密法 (White-
Box Cryptogram,WBC)、 加 密 虛 擬 機
(Cryptographic Virtual Machine) 等軟體加固
方式進行保護,在未具硬體的防護策略上形成
保護。另,交易金鑰部分亦限制為單次使用的
會話金鑰 (session key),並具時限或密碼保
護,以提升其安全性。
四、 可信賴執行環境的防護策略
除上述兩類方式外,因應行動裝置上的
安全需求,GlobalPlatform國際組織 (以下
簡稱 GP) 亦制定可信賴執行環境 (Trusted
Execution Environment,TEE) 相關規格。簡
而言之,TEE是為處於不安全作業環境下的
行動裝置,建構獨立且可信賴的執行環境,以
解決行動裝置上的安全議題。為建構安全執行
環境,TEE須有獨立的硬體,以提供安全的
作業系統、應用程式、使用介面、儲存空間等,
且 TEE環境中的應用程式須先完成授權程序,
方可安裝在 TEE上執行,有別於現行於行動
www.fisc.com.tw ■ 13
金融科技浪潮下建構安全又便捷的行動支付應用環境〡本期企劃
裝置既有的一般作業系統之運行方式,可確保
程式執行的安全;因此,為達成此一目標,
TEE需要晶片廠商與行動裝置廠商密切配合。
另一方面,行動裝置作業系統上的開放式執行
環境 (Rich Execution Environment,REE),
因建構在一般作業系統開放環境 (如:Google
Android) 上,故較無法確保應用程式執行的安
全性 (二者差異詳見表 1) 。
開放式執行環境 (REE) 可信賴執行環境 (TEE)
程式安裝
之控制權使用者可自行安裝 須完成授權程序,方可安裝。
獨立性視作業系統而定,部分作業系統提供
虛擬化或類似沙箱 (sandbox) 的架構。與一般作業系統實體分離,其獨立性
依廠商之實作方式可能具差異性。
認證 不須認證
須認證 (GP本身的認證外,尚提供 Protection Profile 供 Common Criteria (CC)認證用 )。
作業系統核心
與驅動程式等
• 偏重彈性與執行速度考量• 提供較豐富的 API
• 偏重安全與執行速度考量• 提供較少的 API
安全防護性
軟體
非法攻擊
未認證過的作業系統,無法確保機密
性及完整性。
經 GP/CC認證之作業系統,可確保機密性與完整性。
外部
硬體攻擊無防護力
具防護性,但強度依廠商實作之硬體
架構可能具差異性。
表 1 REE與 TEE比較表
圖 2 TEE架構圖
14 ■ 財金資訊季刊 / No.86 / 2016.04
本期企劃〡金融科技浪潮下建構安全又便捷的行動支付應用環境
為確保運作安全,具備 TEE的行動裝
置在開機或重新開機時,先啟動 TEE,再啟
動一般作業系統。完成開機程序後,可信賴
應用程式即可建立擬開放予用戶端應用程式
(Client Application,如:金融機構開發的支
付應用程式 ) 使用的可信賴應用程式介面 (TA
Interface),REE用戶端應用程式便可透過用
戶端應用程式介面 (TEE Client API) 與可信賴
應用程式進行溝通,以存取 TEE管理之特定
資源或進行資料交換。舉例而言,進行交易
時,經由可信賴的使用者介面 (Trusted User
Interface) 輸入卡片密碼驗證 (不用擔心密碼
被側錄的風險 ),成功後再以 TEE環境中受
保護的交易金鑰產生交易授權資料,回傳給
REE的用戶端程式以進行交易驗證作業,即
屬其中一種應用方式。
更進一步說明,TEE的架構基本上可分
三部分,說明如下:
(一 ) REE端應用程式介面
TEE用戶端應用程式介面,基本上是以
C語言撰寫,提供 REE用戶端應用程式與可
信賴應用程式進行溝通的媒介,主要包含:會
談 (Session)、命令 (Command)、共享記憶體
(Shared Memory) 等操作與資料交換,提供一
般用戶端應用程式介接 TEE環境使用。
(二 ) TEE端相關資源
1. 可信賴應用程式 (Trusted Application;
TA):係採行命令導向模式,主要提供
用戶端 (REE用戶端應用程式或另一可
信賴應用程式 ) 相關安控服務 (透過 TA
Interface)。用戶端存取可信賴應用程式時,
須先建立會談,並下達命令,可信賴應用
程式再據以執行相關作業,並回傳結果。
2. 可信賴作業系統 (Trusted OS),包含:
(1) 內部應用程式介面 (Internal API):以 C
語言撰寫,提供可信賴應用程式使用,目
前具下列幾項子集合功能:
- 密 碼 學 操 作 應 用 程 式 介 面
(Cryptographic Operations API): 提
供密碼學相關應用。
- 可 信 賴 核 心 框 架 應 用 程 式 介 面
(Trusted Core Framework API):提供
一些基本作業系統功能,例如:時間、
記憶體管理、排程、通訊、系統資訊
的取得等。
- 供資料與金鑰使用的可信賴儲存空間
應用程式介面 (Trusted Storage API
for Data and Keys):提供可信賴儲存
空間予金鑰及一般資料使用。
- 時間應用程式介面 (Time API):提供
多種時間相關應用等。
- 可信賴的使用者介面之應用程式介面
(Trusted User Interface API):提供建
立使用者介面相關的應用,供可信賴
應用程式使用。
- 安 全 元 件 應 用 程 式 介 面 (Secure
Element API):提供存取安全元件的
相關應用,供可信賴應用程式使用。
www.fisc.com.tw ■ 15
金融科技浪潮下建構安全又便捷的行動支付應用環境〡本期企劃
(2) TEE 通 訊 媒 介 (TEE Communication
Agent):提供用戶端應用程式與可信賴應
用程式間訊息之安全傳輸。
(3) 可信賴驅動程式 (Trusted Drivers):存取
TEE硬體週邊的驅動程式。
3. 安全的硬體週邊設備,包含可信賴使用者
介面 (如:鍵盤、螢幕等 )、密碼學應用、
安全元件及儲存空間等。
(三 ) 用戶端應用程式
係指在一般作業系統開放環境下所開發的
行動應用程式 (App),可透過 TEE用戶端應用
程式介面與可信賴應用程式提供的介面溝通,
取得 TEE的相關安控服務。
目前 TEE 商業實作的產品有 Kinibi、
securiTEE及 Sierra TEE (同時為商業產品
與開放源碼授權 ),其他開放源碼的實作則有
OP-TEE、TLK、T6、Open TEE。現行產品
可應用於行動支付、數位版權管理、VPN等
領域,GP亦推動運用是類產品於 POS (Point
of Sale) 裝置上,以強化其安全性。另,對於
TEE的關鍵核心- TA,亦可由 TSM (Trusted
Service Manager) 以 OTA (Over-The-Air) 方
式部署至行動裝置,使得管道更為多元、便
利,有利於未來產業發展。
至於未來的行動支付應用,可考量:若使
用具備 TEE環境的手機,設定僅允許內部可
信賴應用程式存取手機之安全元件,每筆交易
皆須經使用者於可信賴應用程式確認後才放
行,即如同在手機上安裝網際網路確認型讀卡
機,可確保交易之安全。此外,亦可考量純軟
體式支付應用,如:雲端支付 (Cloud-Based
Payment) 應用、第三方支付應用等與 TEE整
合,以更進一步提升安全強度。
五、 結語
經由下表三種方案的比較可得知,TEE居
於中間位置,具發展性。若未來每台行動裝置
上皆配備 TEE,藉此可提升純軟體式支付方式
的安全性,無非是件好事。惟,此技術有待觀
察其發展及與行動支付生態系統之搭配性。
安全元件 可信賴安全執行環境 純軟體
資源豐富性 低 高 高
安 全 強 度 高 中 低
執 行 速 度 低 高 高
使用者介面 無介面或僅有非常受限之介面 豐富 極豐富
處 理 速 度 低 高 高
額 外 成 本 高 低 低 /無
表 2 安全元件 /可信賴安全執行環境 /純軟體三種方案的比較表
16 ■ 財金資訊季刊 / No.86 / 2016.04
本期企劃〡金融科技浪潮下建構安全又便捷的行動支付應用環境
綜上,金融科技的無現金世界有賴於行動
支付的創新,以達成其目標。現今國內對於行
動支付的應用,仍處於方興未艾之階段,至於
可否蓬勃發展,關鍵在於消費者支付習慣的轉
變,以及消費者終日期盼兼顧便捷與安全行動
支付方式的早日問世。然而,無論對任何行動
支付類型而言,錢包軟體的安全防護都不容小
覷,業者應投入大量心力確保其安全性。對於
逆向工程與防止軟體竄改的防護、軟體所處環
境的偵測、金鑰等敏感性資料的儲存等,均須
確保其安全,再者,行動支付軟體的黑箱 (動
態 )、白箱 (靜態 ) 及滲透測試 (Penetration
Test) 的檢測亦須併入考量,方能維護相當程
度的安全性,建構優質與安全的行動支付環
境。
※參考文獻 /資料來源:1. 世界經濟論壇的金融科技研究報告,
http://www3.weforum.org/docs/WEF_The_future_of_financial_services.pdf。
2. 「Mobile App Security應用與實務」課程教材,恆逸教育訓練中心。
3. OWASP Mobile Security Top 10 (2016), https://www.owasp.org/index.php/Mobile_Top_10_2016-Top_10。
4. GlobalPlatform 的 TEE 相 關 API, h t tp : / /www.g loba lp la t fo rm.org /specificationsdevice.asp。
金融消費評議中心處理金融消費爭議流程
Recommended