<span id="7ztzv"></span>
<sub id="7ztzv"></sub>

<span id="7ztzv"></span><form id="7ztzv"></form>

<span id="7ztzv"></span>

        <address id="7ztzv"></address>

            原文地址:http://drops.wooyun.org/tips/13008

            Author:[email protected]

            0x00 前言


            一、簡介

            如今,互聯網金融比較火熱,金融欺詐也變得非常普遍,金融反欺詐也應運而生。本文將主要介紹下金融交易中的一些基本內容,并簡單介紹下歷史悠久的并且還未淘汰的磁條卡的風險,這些也是了解金融欺詐需要的基本知識。對于具體的黑色產業鏈、信用卡套現、芯片卡的攻擊、金融反欺詐風險防控等本文先不涉及。

            二、背景

            我們先來看幾則最近國內銀行卡盜刷的新聞報道

            1. 男子ATM取完錢后被盜刷近17萬

              “黃先生發現,自己卡里近17萬元的存款,被分14次刷走,僅剩下幾千元,整個過程只有2分鐘左右。黃先生趕緊報警。”

              “經警方初步核查,事發前一天晚上,黃先生曾在云霄縣江濱路一銀行ATM取過款,這部取款機被人安裝類似刷卡器的裝置”

            2. 男子假身份應聘服務員 復制50多張顧客銀行卡

              “經審訊,嚴某對其攜帶并利用測錄設備復制他人信用卡信息的犯罪行為供認不諱。據交代,嚴某為牟取不法錢財,租住快捷酒店作為實施犯罪的落腳點,為掩人耳目,冒用“雷某某”這一“假身份”,通過網上查找門檻較低、管理松散的高檔餐飲企業的招聘信息,應聘并獲取服務員崗位后,在顧客結賬時,趁其不備,利用提前購買的磁條卡測錄讀寫器復制客戶銀行卡信息,并偷窺和記錄刷卡密碼。”

            3. 七浦路市場十余店主銀行卡遭盜刷

              “為了能夠找到被盜刷的原因,店主們將消費明細打印出來發現,他們均曾在去年9月份參加過哈根達斯1元換購的活動(偽造的活動),當時是用移動POS機進行的消費。”

              “瑩瑩向記者出示了2015年9月19日哈根達斯一元換購冰淇淋的促銷海報,海報生上稱:“為回饋新老客戶,哈根達斯特推出1元購活動……”海報上還明確注明:“優惠僅限儲蓄卡刷卡消費,不接受信用卡及現金。”

            上述三個最近的新聞中都是用戶在看似正常的消費或取款后,但自己的卡卻被盜刷了,在國內這種現象很常見。而在銀行卡欺詐中,國外的已經形成了比較成熟的黑色產業鏈,借助匿名網絡暗網比特幣等變得愈發猖獗。如下是國外的一個銀行卡信息交易網站,用戶可根據卡的類型等選擇購買,購買后再通過線下制卡或線上使用等各種渠道去套現。

            p1

            0x01 交易基礎信息


            交易分為線上的交易與線下的交易。線下交易(swiped transaction/card present),簡單點講就是必須要物理刷卡來消費。線上交易(card not present transaction-CNP),簡單點講就是不需要線下刷卡,但需要提供賬號、密碼、手機驗證等信息,比如信用卡支付,填寫卡號、過期時間、CVV2即可完成支付。

            目前銀行卡類的欺詐中,線下的主要就是復制卡,線上的主要是盜取你的線上支付的憑證,比如過期時間、CVV2等信息。

            一、交易角色

            在一次消費行為中,主要涉及到五個角色,分別為持卡人、商戶、收單行、發卡行、卡組織。其中每個角色對應的描述如下:

            1. 持卡人(cardholder)

              銀行卡的合法持有人,即與卡對應的銀行賬戶相聯系的客戶。

            2. 發卡銀行(issuing bank/card issuer)

              發行銀行卡的銀行,即開戶行。比如中國銀行、中國招商銀行、中國建設銀行等各大銀行。

            3. 商家、特約商戶(merchant)

              與收單機構簽有商戶協議,受理(可使用)銀行卡的零售商、個人、公司或組織。

            4. 收單行(Acquirer Bank)

              負責商戶與買家之間的資金結算。收單行需要向卡組織申請,在中國則是向中國銀聯提交申請。 中國一般各大銀行都是中國銀聯的機構成員,也開展收單業務,同時中國銀聯卡組織也有自己的專業收單公司為銀聯商務;同時中國銀聯還會授權其他第三方公司為收單機構,比如一些第三方支付公司等。

            5. 卡組織(Card brand)

              卡組織負責建設和運營全球或區域統一的支付卡信息交換網絡,負責支付卡交易的信息轉換和資金清算,制定并推行支付卡跨行交易業務規范和技術標準。

              國際上的卡組織,主要有威士國際組織(VISA International)、萬事達卡國際組織(MasterCard International)、美國運通國際股份有限公司(America Express)、發現卡(Discover)、大萊信用卡有限公司(Diners Club)、JCB日本國際信用卡公司(JCB)等,中國的則為中國銀聯(China Unionpay)

            中國銀聯:簡單來講,中國銀聯通過制定一些標準與規范,構建一個完整支付網絡,使得你能跨地區跨行使用銀行卡。

            二、交易流程

            在一次消費過程中,各個角色的關系圖大致如下

            p2

            (一)線下刷卡

            比如有如下的消費場景: 本人在西餐店刷卡消費150,其資金是如何流向的呢?

            1. 商家

              首先商家需要刷卡工具,即常見的pos機,其需要向收單機構申請pos機。 收單機構主要有中國銀聯的成員機構各大銀行、中國銀聯自己的收單公司銀聯商務、以及第三方支付平臺收單機構,比如拉卡拉等。

              商家可以根據收單機構的手續費(商家需要給收單行手續費的)、服務費等選擇使用哪個收單機構。準備一個對公的賬號(用來收錢)以及營業執照等信息向收單機構申請,簽署相關協議。 收單機構審核通過后會發放pos機等(像拉卡拉這種可能會發放自己的刷卡器),并負責安裝調通,接入銀聯網絡。 至此商家即可以用pos機進行收款了。

            2. 客戶刷卡消費后,需要在簽購單上簽字,查看本次消費的簽購單如下圖

              p3

              其中主要信息如下:

            3. 交易說明:

              商戶在向這里是向建設銀行,提交pos機申請。申請成功后建設銀行負責安裝pos機并調通。?

              刷卡結算時候,首先操作員在pos機設置消費金額,然后在pos機刷卡,并輸入pin密碼,pos機將卡號、金額、pin密文等通過加密方式發送到收單機構(建設銀行),

              收單機構將信息通過卡組織的銀聯網絡將信息轉發到發卡行(招商銀行),招商銀行校驗卡類型以及金額、pin等信息,確認無誤將校驗結果通過銀聯網絡發送給商家,支付成功。

              支付成功后此時發卡行會把用戶的卡金額凍結,等待卡組織進行資金清算。而此時買家的錢還未打到商家的賬號,收單機構會與商戶簽訂結算周期,比如T+1(第二天錢到賬)、T+0(當天到賬)的方式,收單機構通過匯總商戶的收單信息通過銀聯網絡發送給不同的發卡行請求扣款,各發卡行確認無誤后將錢通過銀聯網絡轉到商戶的對公賬號里。至此交易完成。

            4. 手續費

              這次交易的手續費,若商家與收單結構簽訂的協議中規定手續費為2%,假設發卡行、收單行、卡組織按7:2:1的比例扣費,那么商家繳納的手續費為150*2%=3元,那發卡行(招商銀行)的收益為3*0.7=2.1元、收單機構收益3*0.2=0.6元、卡組織中國銀聯收益3*0.1=0.3元。而商家最終收到的錢為150-150*2%=147元

            (二)線上支付

            線上支付與線下支付類似。商戶在需要接入在線支付的功能時,需要向銀聯或相應的收單機構申請,收單機構審核后會提供相關的支付接口。比如其會提供開發包供商戶進行調試(注意,用戶的敏感信息(卡號、過期時間、cvv2等)是不允許存儲的,開發測試時候為方便調試,可能會將敏感信息打到log文件里,從而可產生安全問題),聯調無誤了即可線上使用了。

            商戶接入銀聯的在線支付網關,分兩種情況:

            p4

            所以通常在線上購物會出現如下的支付頁面。

            p5

            中國銀聯支付平臺提供各大銀行的綜合在線支付收單系統、同時各大銀行也會提供自己的收單接口。

            線上交易的資金流向以及結算與線下交易的描述類似。

            三、銀行卡信息

            (一)銀行卡分類

            1. 銀行卡可按卡組織進行分類,比如帶有中國銀聯標志的銀行卡稱為銀聯卡,帶有Visa標志的為Visa卡。?
            2. 銀行卡按使用方式又可以分為借記卡和信用卡:

            3. 銀行卡按信息存儲方式又可分為磁條卡與芯片卡。

            (二)銀行卡的制卡標準

            金融類的卡片遵循ISO/IEC 7813標準,不同的卡組織可能稍微有差異。?

            中國銀聯卡組織,根據ISO相關的標準以及國標的相關標準制定了銀行卡卡片規范(Q/CUP 005-2014),該規范了屬于中國銀聯成員機構制作銀行卡的標準,制定了銀聯卡的外形、卡片要素、標識、全息防偽標志、簽名條、磁條、芯片、安全要素等。?銀聯的相關標準可以參考其官方技術資料

            (三)銀行卡的信息

            查看一張信用卡的正面信息,如圖

            p6

            卡正面主要有發卡行、卡組織、卡號、持卡人姓名、卡過期時間等信息。

            查看信用卡的背面信息,如圖

            p7

            卡背面主要有簽名條、磁條,卡后四位、CVV2安全碼等信息,卡背后信息主要用于線上交易,比如卡后四位、CVV2。

            所以銀行卡有關的信息主要有如下內容:

            1. 卡號(Primary Account No)

              銀行卡號(13-19位的數字),卡號并不是隨意生成的,在中國,中國銀聯制定了銀聯卡發卡行標識代碼及卡號標準(QCUP 002-2006)。其中卡號的前6位為中國銀聯指定(若是國際卡,則銀聯向ISO申請),之后的(6-12為發卡行自定義),最后一位為校驗位。

            2. BIN(Bank Identification Number)?

              發卡行識別碼,用來驗證發卡銀行的,一般是銀行卡號的前6位。

            3. 過期時間(Expiration date)

              卡過期時間,格式為YYMM

            4. 姓名

              為字符形式,中文的則為拼音,姓名主要應用在信用卡上。

            5. 安全碼(Security Code)

              安全碼是用來校驗銀行卡的合法性的,平時所說的CVV(主要是針對信用卡的), 其實有兩種:

              ?第一種叫CVV(Card Verification Value->Visa),不同的卡組織命名不同,visa卡組織叫CVV,MasterCard卡組織叫 CVC1(Card Validation Code->MasterCard),而在國內,中國銀聯稱之為CVN ,其存儲在銀行卡的磁條里,主要用于線下刷卡消費中卡的合法性校驗。

              第二種即平時所說的信用卡的CVV,其真實是叫法為CVV2(Card Verification Value 2->Visa),也是visa卡組織叫CVV2,MasterCard卡組織叫CVC2(Card Validation Code->MasterCard),在國內,中國銀聯稱之為CVN2。 CVV2的設計是主要用于線上的交易卡的合法性校驗,一般是3-4位數字,打印在銀行卡的背面。

            6. PIN(Personal Identification Number)

              即平時在ATM機取款所使用的6位數字密碼,注意在計算機和網絡系統中任何環節都不允許PIN以明文的方式出現。

            7. 磁條(Magnetic Strip):

              銀行卡后的磁條,其包含了3個磁道(Tracks),每個磁道存儲了不同的信息。

            8. IC芯片

              內部封裝一個或多個集成電路用于執行處理和存儲功能的卡片。

            9. QuickPass

              銀聯卡帶有該標志的表示該卡支持NFC?功能,即可以通過NFC設備讀取卡內存儲的信息。通常我們使用支持NFC功能的手機或設備去讀取帶NFC功能的銀行卡信息時,會讀到銀行卡的卡號、最近消費的10筆記錄、有時銀行卡設計不當還會讀取到身份證等信息。

            四、卡受理終端設備信息

            (一)銀行卡受理終端是指可以處理銀行卡的設備終端,主要有如下分類

            1. POS機(Point of Sale)

              能夠接受銀行卡信息,具有通訊功能,并接受指令完成金融交易信息和有關信息交換的設備。(有通過電話網絡接入、有通過安裝SIM卡撥入CDMA網絡、有通過以太網接入的)

            2. ATM機(Automatic Teller Machine)

              自動取款機,接入卡組織網絡,實時通信的設備。國內的很多是Windows XP的主機

            3. mPOS

              mPOS為整體概念,包括終端設備和相關應用。具體指,通過移動通訊設備(所搭載的支付應用軟件)進行商戶收銀操作,由外接專用受理終端完成銀聯卡相關信息的采集和加密,通過移動通訊設備與后臺處理系統交互完成交易。日常看到的一些個人刷卡器,比如拉卡拉的mini手機刷卡器,其通過NFC等功能讀取卡信息,然后通過音頻接口發送到手機應用再執行相應的處理。

            (二)卡受理終端設備的系統結構圖

            p8

            可以看到,支付設備可以通過PSTN網絡、GPRS/CDMA網絡、以太網進行通信,所有的通信數據最終流向了POS前置,POS前置部署在內網,用于對所有的收單行發送的支付訂單信息進行處理。

            0x02 磁條卡風險


            一、磁條卡背景

            磁條利用磁性載體記錄字符與數字信息。其主要有兩種高矯頑磁性(high-coercivity ->HiCo)和低矯頑磁性(low-coercivity ->LoCo)。其中高矯頑磁性的磁條需要更高的磁場能量去編碼,因而也較難擦除。高矯頑磁性的卡主要應用在頻繁使用的場景,比如銀行卡、會員卡等。通常銀行卡背后右上角處寫有HiCo字母代表的就是高矯頑磁性的卡。低矯頑磁性的磁條易于擦除,使用壽命較短。

            二、磁條卡標準

            ISO/IEC 7813規定了金融交易卡的標準,包括物理特征以及磁條的存儲信息結構。中國基于ISO標準制定的金融類卡的標準為GB/T 17552—2008,不同的發卡組織也會基于ISO、國標等指定自己的相關標準,所以有的卡存儲數據可能會稍有差異。

            銀行卡的磁條包括三個磁道(Track)信息,如下

            p9

            其中磁道1是用7個比特位來表示一個字符或數字;磁道2和磁道3采用5個比特位來表示一個數字字符。

            磁道1最長可以包含79個字母字符或者數字字符;磁道2最長可以包含40個數字字符;磁道3最長可以包含107個數字字符。

            1. 磁道1的存儲結構如下

              p10

              說明:

            2. 磁道2的存儲結構如下

              p11

              說明:

              磁道2的信息與磁道1的信息很多都一致,不過磁道2信息都為數字,其中與磁道1不同的信息有如下內容:

            3. 磁道3的存儲結構如下

              p12

              說明:磁道3也是只能有數字字符,里面記錄了過期時間、國家代碼等數據,現在使用的還較少。

            三、銀行卡(磁條)的復制

            1.讀寫卡設備

            如上述描述,磁條的信息存儲都是明文存儲的,因而需要可以讀取的設備即可。?

            在eBay或Amazon上搜索MSR等關鍵字可以搜索到很多這種讀卡設備,如圖

            p13

            其具體技術參數如下

            p14

            該設備支持HiCo 和LoCo的磁卡(300 oe -4200 oe),同時支持讀取三個磁道的信息,并且有讀、寫、擦除磁條的功能。?

            2.實際測試

            我們使用如下的MSR 605設備來讀取卡數據,其中白色的卡為空白卡,支持多次擦寫數據。

            p15

            讀取一張普通的借記卡(磁條),查看磁條信息如下

            p16

            該普通磁條卡只在磁道2存儲了卡數據,存儲了卡號、CVV、過期時間等值。

            對于純磁條卡,我們將讀到的數據全部寫到一張空白的卡里,即復制出與原卡一模一樣的卡,且可在ATM機、POS機等處正常使用。

            當然,現在的很多芯片卡也都帶有磁條,我們讀取一直信用卡(芯片卡)的磁條信息,查看具體的磁條信息如下。

            p17

            字段說明:

            磁道1?的數據

            磁道2?的數據都可由磁道1的數據推出。

            注意,芯片卡的磁條里存儲了卡信息,其芯片里也存儲著用于交易的磁道信息。若讀取芯片卡上磁條的數據,然后將數據寫入一張空白的卡里,去取款機里使用,會提示使用芯片功能,如圖。

            p18

            現在的POS機、ATM機在發現卡是芯片卡的時候交易都會使用芯片,而不會去使用磁條,當拿著芯片卡,在POS機刷磁條結賬時會提示請優先使用芯片。

            如上面的芯片卡的service code為201,第一位2就表示了是芯片卡。如果我們修改service code為101,即普通磁條卡的,刷卡會提示卡不合法。因為CVV校驗出錯,即這不是一張合法的卡,若要能修改數據必須知道銀行的密鑰才可以。

            四、銀行卡的加密算法

            簡單介紹下三個主要的加密算法,具體可以參考中國銀聯的相關標準。

            1.銀行卡的CVN校驗算法(參考中國銀聯的CVN加密算法)

            算法描述:該算法主要用于校驗卡信息的合法性的。在如上復制卡的過程中我們修改service code重新寫卡后,會被識別為非法卡,即通過該算法進行校驗。由于密鑰并非我們可控,因而不能隨意篡改數據。該算法通過卡號、卡失效期、服務代碼計算出一個CVN(銀聯叫CVN,Visa叫CVV)值,與卡里的CVN值進行比較判斷卡合法性。

            具體算法:

            1. 計算數據源:主賬號(PAN)、卡失效期和服務代碼,從左至右順序編排。??
            2. CVN算法:計算CVN時使用二個64位的驗證密鑰,KeyA和KeyB。

            計算步驟如下:?

            1. 將數據源擴展成128位二進制數據(不足128位右補二進制0);
            2. 將128位二進制數據分成兩個64位的數據塊。最左邊的64位為Block1,最右邊的64位為Block2;??
            3. 使用KeyA對Block1進行加密;
            4. 將Block1的加密結果與Block2進行異或。使用KeyA對異或結果進行加密;?
            5. 使用KeyB對加密結果進行解密;?
            6. 使用KeyA對解密結果進行加密;
            7. 從左至右將加密結果中的數字(0-9)抽出,組成一組數字;??
            8. 從左至右將加密結果中的字符(A-F)抽出,減10后將余數組成一組數字,排列在步驟(7)的數字之后;
            9. 步驟(8)的左邊第一組三位數即為CVN值。

            2.CVN2加密算法(參考銀聯標準QCUP 015-2005)

            算法描述:CVN2(銀聯叫CVN2,Visa叫CVV2)的設計就是用于線上交易的,所以我們平時在一些購物網站輸入銀行卡號、姓名、卡過期時間,CVN2碼即可購物,那該算法則通過用戶提交的卡號、過期時間、銀行的加密密鑰計算出CVN2的值與用戶提交的值進行對比,從而校驗卡是否合法。

            1. 計算數據源

              計算CVN2的數據源包括:

              示例?:?19?位?PAN、4?位卡失效期和?3?位長常數“000”組成?26?個字符?CVN2?數據源。

            2. CVN2?算法:計算CVN2時使用二個64位的驗證密鑰,KeyA和KeyB。

            計算步驟如下:?

            1. 將數據源擴展成128位二進制數據(不足128位右補二進制0);?
            2. 將128位二進制數據分成兩個64位的數據塊。最左邊的64位為Block1,最右邊的64位為Block2;?
            3. 使用KeyA對Block1進行加密;?
            4. 將Block1的加密結果與Block2進行異或。使用KeyA對異或結果進行加密;?
            5. 使用KeyB對加密結果進行解密;
            6. 使用KeyA對解密結果進行加密;?
            7. 從左至右將加密結果中的數字(0-9)抽出,組成一組數字;?
            8. 從左至右將加密結果中的字符(A-F)抽出,減10后將余數組成一組數字,排列在步驟(7)的數字之后;?
            9. 步驟(8)的左邊第一組三位數即為CVN2值。

            3.PIN校驗碼算法(參考銀聯標準QCUP 032-2008)

            算法描述:該算法主要是校驗用戶輸入的密碼是否正確。該算法通過PVK(通過PVKI密鑰索引定位到銀行的密鑰)、用戶卡號、用戶PIN進行計算,將計算的值與卡里PVN(即PIN校驗碼,銀聯的叫PVN,Visa的叫PVV)進行比較,從而校驗PIN的正確性。

            具體算法:

            1. 計算數據源

              計算PVN的數據源包括:

            2. PVN算法:計算PVN時使用KeyA和KeyB。

            計算步驟如下:?

            1. 取PVK索引號約定的某個128位長的密鑰PVK,PVK的左側64位為KeyA,右側64位為KeyB。?
            2. 取主賬號右端除校驗位以外的11位數字、密鑰PVK的索引號、PIN明文左端4位數字,依次構成一個16位數字串,每位數字用壓縮BCD碼表示,形成1個64位長的二進制計算塊Block。?
            3. 用KeyA對Block做DES加密運算,得到結果Block1。
            4. 用KeyB對Block1做DES解密運算,得到結果Block2。?
            5. 用KeyA對Block2做DES加密運算,得到結果Block3。?
            6. 對Block3從左到右抽取出所有的數字(0~9)。?
            7. 對Block3從左到右抽取出所有的十六進制字符(A~F),并對每一個十六進制字符減十進制10,使之變為數字。?
            8. 將步驟6和7得出的數字依次從左至右排列,步驟7得出的數字放在步驟6得出的數字之后。?
            9. 取步驟8結果的前4位數字,即為PVN值。

            五、磁條卡的攻擊場景

            (一)盜取卡磁條信息

            盜取卡磁條信息,這種主要是線下的風險。

            1. 在ATM機安裝記錄儀 通常是在ATM機器上安裝卡槽,同時在ATM機上安裝針孔攝像頭,在插卡過程中記錄磁條信息,同時針孔攝像頭拍攝用戶輸入的PIN密碼。這種案例還是比較多的,比如新聞1里介紹的。其中磁卡記錄器可以做的很小且帶電源、無線藍牙模塊,帶電源的針孔攝像頭也很常見。如下圖

              p19

              p20

            2. 改裝POS機

              比如在新聞2中出現的改造的POS機(在POS增加自己的記錄儀)、或在持卡人不注意時候用設備記錄儀盜取。新聞3中利用用戶貪圖小便宜的心理,用自己的設備記錄儀來盜取用戶的磁條信息。

              磁條卡的信息都是明文存儲,因而被復制的風險也一直有,因而出現了芯片卡,但芯片卡也不是完全安全的,其也可能面臨一些卡復制、中繼攻擊、降級攻擊等安全問題。

            (二)盜取線上交易憑證

            盜取線上交易憑證通常涉及到信用卡的CVV2碼、網銀登陸密碼、支付密碼等。當然盜取這些線上的交易憑證在線下也可以盜取,比如刷信用卡時候看到了你的CVV2,并記錄了你的磁條信息(如前面對于芯片卡磁條的分析,磁條是記錄了卡號、姓名和過期時間的),其實有些在線網站可能不會去校驗CVV2,使用磁條里的信息足以用于支付。

            再者主要是通過釣魚郵件、偽基站發送短信、偽造網銀登陸的界面記錄你的信息。當然其他的像利用漏洞攻擊個人電腦、攻擊商戶、銀行機構的案例也是有的。

            而對于我們普通用戶而言,如何保護自己。即不貪小便宜,去消費刷卡時盡量保證卡在視線內,取款時仔細查看ATM機,盡量使用芯片卡,信用卡背面信息遮擋等。

            0x02 總結


            從上面的分析可以發現,磁條卡的信息都是明文存儲,因而可以通過設備隨意讀寫,使得復制卡成為可能。磁條卡存在安全問題,芯片卡可以解決問題。 所以現在很多銀行新辦理的卡都是芯片卡,通常還會附帶磁條。另外銀行卡的過期年限通常很長,所以磁條卡完全退出歷史舞臺還有很長的路要走。

            云譽介紹:
            云譽反欺詐是基于阿里巴巴的信譽數據,通過領先的行為收集技術和機器學習模型,輸出大數據風控服 務能力,解決賬號、活動、支付等關鍵業務環節存在的欺詐威脅,降低企業經濟損失。

            0x03 參考


            <span id="7ztzv"></span>
            <sub id="7ztzv"></sub>

            <span id="7ztzv"></span><form id="7ztzv"></form>

            <span id="7ztzv"></span>

                  <address id="7ztzv"></address>

                      亚洲欧美在线