線上購物方便快速,彈指間就能採購所需物品,對台灣民眾而言,已經成為生活中不可或缺的交易管道,然而線上購物背後的交易資訊傳輸,夾帶著詳細的個人資料,一旦外洩後果不堪設想,本(12)月初,線上金流平台供應商紅陽科技傳出資料外洩事件,這一次不是因為駭客攻擊而是內控疏失所造成的資安危機。
2011年12月4日晚上10點,Mobile01論壇上刊出一則「〈01獨家新聞線上交易平台漏洞,洩漏個人購買資料~〉」的文章,發文者ient表示,無意間發現一個線上交易平台(即紅陽)洩露個資,可以看到每一筆交易的詳細資訊,如:交易店家、交易時間、訂單編號、交易金額、消費者姓名、電話、IP位置…等,而且只要改變網頁參數,資料日期還可以追溯到更早以前。
事件發生 肇因內控不佳
而紅陽對外的說明,一開始是Windows系統設定的問題,之後又發表聲明指出為人員控管稽核疏失所造成。紅陽科技協理李宏鑫坦承,此次是因為程式開發人員為了趕工所造成的疏失,程式開發是一項與時間賽跑的工作,工程師為了回家後可以繼續作業,將原本不對外開放的後台管理網站開啟到Internet上,又忘了加上權限控管機制,才會被搜尋引擎的蜘蛛程式收集成庫存頁面,導致資料外洩。
李宏鑫進一步指出,程式開發與後台管理系統的權限原本互相切割開來,程式開發人員必須提出申請,呈交主管批核,後台管理系統才能開放權限,但在機制未落實的情況下,工程師便宜行事,才會出現外網可以連至後台系統的狀況,為免造成更大損失,事件發生當下便已關閉後台管理系統的外部連結,請Google、bing、Yahoo、百度…等搜尋引擎移除快照與庫存頁面,並制定三項補救措施:
1.所有對內的後台管理系統一律禁止外部連結;
2.系統更新時必須填寫申請單,由最高主管簽核後才可放行;
3.所有系統更新結果及驗收狀況都會留下記錄。
其實,上述第2和3項補救措施原本就是PCI-DSS要求,如今只是要確保員工的落實狀況,而合作的兩家銀行未來也會針對此機制做每季1次的稽核,確保不會發生相同情況,此外,紅陽也發函向特約商店說明此次事件,至於特約商店所接到的消費者詢問電話,則是透過E-mail或簡訊來說明。李宏鑫強調,紅陽本身不保留消費者的信用卡卡號及驗證碼,此次外洩事件應該不會造成信用卡盜刷的情況,但若有消費者因為此次資料外洩事件而造成損失,紅陽一定會全權負責。
網友指出:網頁原始碼亦隱含安全危機
對於紅陽的處理方式,某資安顧問建議,紅陽內部應該要有監控機制,確保員工按照公司所訂的系統更新作業程序來進行,不能只靠外部稽核的力量。
一位不願具名的Mobile01網友認為,在家趕工開發程式有很多方法可以用,如:限制IP連線、遠端VPN存取…等方式,不應該大喇喇地將後台開啟到網路上。再者,他當時還發現另一個程式語法上的問題,一般的網頁原始碼只會有網頁上所顯示的資料,比較不會有註記資料在裡面,然而,當時看到的Google庫存網頁,在每一筆資料的原始碼都有做註記顯示,指出這一個交易是做什麼用的,而一般的作法是用變數來取代,不會直接顯示,以程式的可讀性來說當然很方便,但對於安全來說卻是危險的,有可能是工程師要將一些資料做DEBUG動作的中斷點測試,事後卻忘了拿掉。也因此,他認為,紅陽的解決方式,不過是頭痛醫頭、腳痛醫腳罷了。
對此,李宏鑫解釋,在程式原始碼中,只有訂單內容、也就是交易的商品,其他都是呈現在網頁上的交易資訊,並沒有特別的註記資料。
綜觀各家說法,紅陽的問題其實就是OWASP Top 10中的限制URL存取失敗(Failure to Restrict URL Access),亦即網站並未有效定義權限控管,導致攻擊者(甚至一般民眾)可以透過修改url路徑或參數,直接存取含有機敏資訊或管理權限的頁面,回顧歷史,這種因為網頁權限管控不當造成外洩的事件比比皆是,像花旗銀行、戰國策…等(表1),但真正能記取教訓的企業又有多少?!
表1、網頁權限管控不當所造成的資料外洩事件
時間 |
主角 |
事件說明 |
事件原因 |
2003年 |
花旗銀行 |
配合信用卡行銷活動,委外開發線上申請的活動網頁,並加掛於網站上,然而該網頁的程式設計缺乏檢核功能,未經國際安全標準及駭客測試。 |
委外控管 |
2007年 |
疾管局 |
資訊系統的權限管控機制有暇疵,民眾可在公開網站上查到列管中結核病患者的個人資料。 |
內部疏忽 |
2008年 |
職訓局 |
委外建置的職訓e網網站,被民眾發現只要更改報名課程網頁網址後五碼的報名序號,即可輕易查到其他報名民眾的身分證字號。 |
委外控管 |
2009年 |
智財局 |
委外建置的校園二手書教科書網,被民眾踢爆認證功能太簡單、可輕易被破解,已經造成16,000名學生的個資外洩。 |
委外控管 |
2009年 |
戰國策 |
網站後台管理頁面的存取權限管控失當,約有4,270筆客戶訂單資料被Google快取抓走變成公開網頁資料,網友推論是系統做了異動,忘記加上身份認證功能所造成。 |
內部疏忽 |
2011年 |
紅陽科技 |
Mobile 01網友撰文表示,可看到每一筆交易的詳細資訊,網友推論工程師為了方便遠端趕工,開放後台系統到網路上,又忘記加上權限控管功能,紅陽表示是人員控管稽核疏失。 |
內部疏忽 |
資料來源:《資安人》整理,2011/12。
解決之道無他 惟落實管控機制而已
多奇數位總經理黃保翕表示,這種疏忽在網頁開發上相當常見。網頁開發通常會將權限管控機制留到最後再做,因為系統功能可能有很多種,每一種都與權限管控有關,如果每做一個功能就要整理一次權限,會大大拖累程式開發速度,所以通常會放到最後再來做,也因此容易發生人為疏忽造成資料外洩,企業必須謹記,無論何種狀況,開發中的網頁如果要對外,就要先做好權限管控,更多關於網頁權限控管的內容,穿上個資保護新衣」一文。
除了內部開發人員疏忽外,很多企業將網站系統委外開發,在錯估開發時程、太過價格導向、未做安全性驗證…等因素影響下,導致系統安全品質低落,也有可能造成網頁權限管控不當,關於委外開發專案常見的安全性問題,請見本期「錯估時程、價格導向 專案安全品質低落」一文。
Mobile01網友指出,此類資安事件的問題都是出在人身上,解決方法其實很簡單,只要落實檢查機制就可以,但卻有很多企業做不到。一般企業都以為買了一個好的或是高價的資安設備,就代表自身的安全防護已經足夠,卻忘了所有資安事件的發生,幾乎都是落在人的身上,惟有建立一套良好標準作業守則(SOP),才有可能提高安全防護,舉例來說,上傳網頁設定好了以後 要先經過內部人員自行測試沒有問題才可以放行。
再者,有可能含有機密資料或檔案的網頁,就要加入不可以被搜尋引擎找到的文件,以下有兩個方法可供參考。第一個是使用robots.txt檔案來攔截或移除網頁(可參照Google提供的教學說明),方法是從server端著手,至根目錄下(假設為/var/www/html)建一個robots.txt檔,假設設定語法為User-agent: *Disallow:/home/資料夾名稱,這代表所有的搜尋引擎都不能將123這個資料夾內的東西納入索引。第二個是在不想被看到的頁面加上標籤,可參考使用中繼標記攔截或移除網頁的做法,這些都可以降低此次事件發生的可能性。
對於含有個資或機密資料的網頁,資策會專案支援處組長陳培德認為,至少要做到以下5點保護措施:
1.移除洩漏資料之頁面或檔案:若為非必要公開或保存於網站上之資訊,建議直接移除該頁或檔案,避免個資遭有心人士竊取或利用;
2.限制存取權限:若為必須存放於網站上,但屬內部或限制特定身份才能使用的資料,建議對此類資料設定存取權限,例如:要求使用者登入後才能存取資料、限制存取IP…等方式;
3.隱藏部份資訊:若為必須存放於網站上,且必須公開之資料,建議隱藏部分敏感性資訊,如:將姓名其中一個字以X表示,以*號遮蔽身分證字號…等方式;
4.妥善設定robots.txt檔案:設定robots.txt檔案(方式如上所述),可以避免搜尋引擎存取網站內容,防止包含個資或機敏資訊的網站內容被公開;
5.移除搜尋引擎頁庫存檔:定期檢視搜尋引擎的快取狀況,若發現網頁或檔案仍被暫存且可被搜尋引擎列出,應移除搜尋引擎上之頁面庫存檔,避免個資遭有心人士竊取與利用。
由於新版個資法還未上路,而紅陽又屬於資訊服務業,不在現行法的適用範圍內,從法律面來看,若有民眾因為此次資料外洩事件而蒙受損失,只能透過民法來求償。身為主管機關的經濟部商業司,該司七科科長陳威達指出,已經主動致電瞭解事件始末,雖然紅陽不受現行法規範,但若有民眾因此蒙受損失,仍會協助處理。一旦未來新法正式上路,商業司將會定期執行個資保護檢查,並比照現行禮卷發行是否遵照定化契約的抽查方式,挑選規模較大或是該年度曾經爆發資安事件的企業,做重點式地抽查,希望能減少個資外洩事件發生。