0
世界上最遠的距離不是 520 我站在你面前,你沒有發(fā)紅包給我,而是你拿著一張百夫長黑金卡,而我,拿著一張每月余額艱難在正負間掙扎的銀行卡。
銀行卡怎么了?誰還沒有么?
有,現(xiàn)在遠程開戶就能辦理。
不僅是銀行卡,電話卡、社??ǖ纫捕伎梢赃h程辦理。
呵,就算擁有的余額一言難盡,還是有人盯上我的銀行卡,不過背后黑手的目標并不是簡簡單單這張“銀行卡”。
今天,雷鋒網(wǎng)編輯與梆梆安全的高級安全顧問趙千里聊了聊,揭秘背后黑手如何在你遠程開戶的過程中搞小動作,他們的目的又是什么。
以銀行卡開戶為例。
話說現(xiàn)在的銀行儲蓄卡基本分為三類:一類卡、二類卡、三類卡。
1.持有數(shù)量不同
一類卡一個銀行只可以有一張;
二類、三類卡不限制。
2.交易限額不同
一類卡沒有限額;
二類卡非綁定賬戶轉(zhuǎn)入資金、存入現(xiàn)金日累計限額合計為1萬元,年累計限額合計為20萬元等。
三類卡余額不得超過1000元;非綁定賬戶資金轉(zhuǎn)入日累計限額為5000元,年累計限額為10萬元等。
在銀行的操作中,一類卡開戶必須用戶到銀行現(xiàn)場開戶,但是二、三類卡可以遠程開戶。
遠程開戶的中心要義是:證明我是我,還要證明我是合法的我。
具體操作步驟是,先通過手機卡和對應(yīng)的驗證碼通過第一層驗證,再上傳身份證的正反面信息,通過人臉識別通的驗證,接著關(guān)聯(lián)一類銀行卡賬號,最后,填寫個人信息、電子簽名等完成開戶。
[圖片來源:央視新聞]
看上去這些步驟都很簡單,而且大大節(jié)約了去銀行窗口現(xiàn)場開卡的時間,但是有很多安全風險,可以直接造成幾類后果:
1.在銀行搞活動時,批量開卡薅羊毛,套取現(xiàn)金;
2.利用第三方支付平臺漏洞,用虛假賬號盜取資金;
3.有些人向黑產(chǎn)販賣虛假賬戶的信息,自己搞一把虛假賬號,又通過黑產(chǎn)來販賣做好的虛假賬號的信息,實現(xiàn)“完美閉環(huán)”;
4.通過虛假的賬號信息實施詐騙、洗錢等非法活動。
總之一句話,搞錢,干壞事。
我們來看看黑產(chǎn)的招數(shù):
第一招,偷梁換柱。
攻擊者想用別人的身份信息注冊,但手里沒有別人的手機卡,得不到驗證碼,怎么辦?他想到了一招——自己找一個170號段的非實名制手機號接收短信,通過第一關(guān)。
但是,問題來了,這個170的手機號也不是別人的真手機號,他是怎么蒙混過關(guān)的?
原來,最終提交的數(shù)據(jù)是非法手機號,服務(wù)端驗證會出錯,但是攻擊者將提交驗證的數(shù)據(jù)劫持并將手機號改成了別人的真手機號。
第二招,臨門一腳截胡。
攻擊者上傳假照片,虛假手機驗證碼等,雖然這些驗證環(huán)節(jié)均失敗,但是在最后后臺結(jié)果返回時,篡改結(jié)果,由于這幾項信息沒有連接起來統(tǒng)一認證,服務(wù)端認為“結(jié)果對”則“程序?qū)Α?,前面一系列認證都算通過。
第三招,誰真誰假?
攻擊者用真實信息開戶,真實信息開戶上傳到服務(wù)端時,服務(wù)端明確信息沒有問題,返回的數(shù)據(jù)允許正常開戶,你以為他要開具一張真卡?錯,攻擊者把服務(wù)端發(fā)回的數(shù)據(jù)包改成驗證失敗,客戶端拿到服務(wù)端驗證失敗的結(jié)果后選擇再提交一次,由于客戶端身份已經(jīng)被認可,服務(wù)端會接受后續(xù)客戶端發(fā)送的數(shù)據(jù),這時攻擊者通過篡改的方式提交一次虛假信息,就能實現(xiàn)使用虛假信息的虛假開戶。
第四招,搞定客戶端。
攻擊者直接破解客戶端的源碼,篡改運行中的業(yè)務(wù)數(shù)據(jù),實現(xiàn)虛假開戶。
第五招,見招拆招。
由于身份證識別系統(tǒng)和一些人臉識別系統(tǒng)存在缺陷,攻擊者可以通過身份證生成器、PS 照片通過驗證。
攻擊者“隔空”截胡銀行卡手段這么多,搞起運營商來也不含糊。
趙千里說,運營商的渠道商,包括虛擬運營商可通過實名制遠程開卡,有專門的開卡設(shè)備。在一次監(jiān)測中,他發(fā)現(xiàn)運營商在實名開卡中,服務(wù)端暴露了異常開卡的信息,運營商的 POS 系統(tǒng)顯示,客戶端存在虛假設(shè)備、虛假地理位置和虛假身份證。
攻擊者是如何暴露的?
比如,開卡的時間間隔很短,十秒鐘來一個。
業(yè)務(wù)日志里也存在蛛絲馬跡,安全研究員發(fā)現(xiàn),數(shù)據(jù)中缺少一些正常的手機字段,比如設(shè)備識別信息、IMEI、OS info、安卓 ID 等,基本可以判斷是模擬器開的卡。
員工在 A 地,卻頻繁在 B 地開卡等。
攻擊者展開了“釣魚”的騷操作,他們首先提供了真實的個人信息,利用這些個人信息實現(xiàn)了虛假身份證的制作,然后使用模擬器攻擊框架,破解客戶端,獲得內(nèi)存數(shù)據(jù),或者利用通訊協(xié)議對數(shù)據(jù)進行批量的篡改。這些數(shù)據(jù)傳到服務(wù)端時,服務(wù)端通常照單全收,N 個假賬戶出來了。
雷鋒網(wǎng)發(fā)現(xiàn),判斷一個客戶端行不行,也許就跟找對象一樣復(fù)雜。
第一,要考察對象自身的人品——這個終端是否安全可靠。
第二,他都跟什么人來往——終端所處的環(huán)境是否可以信任?
趙千里說,需要檢測運行過程,防止動態(tài)注入。防止內(nèi)存數(shù)據(jù)被篡改,判定運行環(huán)境中是否存在模擬器、攻擊框架,以及代理是否被截獲。
通過歷史運行數(shù)據(jù)判定運行環(huán)境是否在合理的范圍內(nèi),比如是否有地理位置欺詐,還要防止代碼被反編譯,邏輯被暴露,同時也要通過滲透測試這樣的手段來明確業(yè)務(wù)中存在的安全風險,及時修復(fù)。
比如,他曾遇到一個這樣的案例——一家電商 App 的業(yè)務(wù)邏輯被人發(fā)現(xiàn)了。
“你能輸出的金額是一塊錢到 9999,你下個單,后臺的服務(wù)器不會驗證你發(fā)過來的金額。如果這件商品的正常價格就是 98 元,后臺只要提交數(shù)據(jù),不會再次驗證金額,就會直接給你發(fā)貨?!壁w千里對雷鋒網(wǎng)說。
你以為攻擊者會改成 1 塊錢嘗試性付款嗎?
不!1塊錢都不會給你。
攻擊者破解 App 后,找到了客戶端到服務(wù)端的接口,然后制作一個假客戶端,登陸賬號,把值改成了“-1”。
什么,還倒欠人一塊錢???
原來,很多字段定義時,不能識別“-1”。而有時數(shù)據(jù)庫定義字段時,“-1”等于最大數(shù),攻擊者輸入“-1”后獲得了 9999 的購買力。
“但是電商在做這個 App 時,首先不會考慮這個問題,它沒有考慮到攻擊者攻破App 后手動生成了一條交易,所以核心點是,它最初認為移動端是可信的,現(xiàn)在發(fā)現(xiàn)不可信后,就需要基于客戶端不可信的情況做監(jiān)管手段。”趙千里說。
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。