上禮拜從iThome看一篇新聞,英國研究人員只花6秒就能破解盜刷Visa信用卡,於是想了解更多:新堡大學原文。
原來英國新堡大學博士班學生駭的是CVV2,也就是俗稱卡片背後末三碼(美國運通卡在正面,有4位數字)的卡片驗證碼,通卡支付交易驗證(郵購、網路常使用在無交易),原文整理出兩個關鍵點:
- Unlimited guesses (後台主機沒有錯誤上限控制)
- Distributed Guessing Attack(分散攻擊)
由於沒有上限保護,於是讓暴力攻擊很快得逞。
怎麼猜:
1.猜有效期限:首先研究人員假定Hacker擁有一批卡號,接著駭客開始猜測有效期限,通常期限最常可能到5年-7年,於是大約花了60次-84次就可以猜對了。
(我們持卡人可能有保險用信用卡扣繳,有的保險公司在卡片到期後,聯繫不上持卡人,也會用這招。)
2.猜CVV2: 接著透過程式的方式到各上購物網站驗證(selected website),由於通常無卡支付交易會以卡片背後的CVV2驗證,CVV2是3位的數值(000-999),最差最差1,000次可以猜對。
在無法取得有效期限的情境下,排列組合:
60 x 1000 = 6萬分之一機會
預防措施
1.國際信用卡組織的預防:從新堡大學的文中發現,Mastercard的目錄服務(Directory)有10次的上限。
2.商店端的預防:商店端加入3D驗證,用MPI。
3.持卡人的預防:選擇有加入3D驗證的發卡銀行,即使商家不提供3D驗證,當風險發生時,損失通常會由商家端負擔。
台灣大多數銀行都有加入。
4.發卡行的預防:
A.授權主機設計密碼錯誤上限,當錯誤超過上限,不再提供驗證,並自動警示授信人員。這個機制也會擴展到其他卡片驗證碼(CVV、iCVV),台灣部分銀行也有此機制。
B.短時間內過度頻繁的交易偵測: 台灣部分銀行也有此機制。
通報之詐欺金額統計
從政府資料開放平台查到的NCCC聯合信用卡處理中心會員機構信用卡詐欺型態分析:
無實體信用卡交易(CNP)從2013年的2.6億,去年高達7億台幣。
下一篇我們來試著用常規作法運算出信用卡檢查碼2(CVV2),觀察她的加密等級及不可逆性。
參考: