要黑銀行的ATM有兩條路:編個(gè)惡意程序,直接騙過柜員機(jī)上那個(gè)漏洞百出的Windows系統(tǒng);或者先黑銀行的后臺(tái)系統(tǒng),盜取客戶信息之后再大模大樣到ATM取錢。這兩條路,現(xiàn)在都有得走。
網(wǎng)絡(luò)安全研究人員杰克(Barnaby Jack)在美國(guó)拉斯維加斯的黑帽安全會(huì)議(B lack Hat)上原本有一個(gè)精彩的演講,他準(zhǔn)備演示如何入侵ATM(自動(dòng)柜員機(jī)),以證明多種不同型號(hào)的ATM存在安全隱患?!拔乙恢焙芟矚g《終結(jié)者2》的一個(gè)場(chǎng)景,約翰#8226;康納走到一臺(tái)自動(dòng)柜員機(jī)前,將Atari接入讀卡器并從機(jī)器中取出大量現(xiàn)金。我認(rèn)為已經(jīng)找到了這樣做的關(guān)鍵?!?/p>
杰克為自己的演講取名為“自動(dòng)柜員機(jī)讓你發(fā)財(cái)”,但他最后并沒有“美夢(mèng)成真”,因?yàn)檫@次演講最后被取消了。作為計(jì)算機(jī)網(wǎng)絡(luò)公司瞻博(Juniper)的雇員,杰克被公司告知停止這次演講,理由是ATM生產(chǎn)廠商對(duì)公司施壓。
美國(guó)密歇根大學(xué)研究網(wǎng)絡(luò)安全的哈德曼(J. Alex Halderman)教授在接受記者采訪時(shí)對(duì)瞻博的這一行為表示理解,“ATM生產(chǎn)廠商可以以泄漏秘密為由將瞻博告上法庭,因?yàn)榻芸松埔獾难葜v可能會(huì)被人利用。在找到修補(bǔ)漏洞的辦法之前,ATM不能冒這么大的風(fēng)險(xiǎn)?!泵绹?guó)黑客曾經(jīng)入侵花旗銀行的ATM網(wǎng)絡(luò),讓花旗蒙受至少200萬美元的損失,而這僅僅是ATM漏洞所致巨額損失中的九牛一毛。
ATM的“自動(dòng)”機(jī)制
1967年6月27日,世界上第一臺(tái)自動(dòng)取款機(jī)在倫敦附近的巴克萊銀行分行亮相。時(shí)至今日,據(jù)匯豐銀行估計(jì),95%的取款是通過ATM機(jī)而不是柜臺(tái)出納辦理的。數(shù)億人習(xí)慣了在墻上的“洞”里存錢、取錢。
“洞”的核心秘密在看不見的地方。
“ATM分為硬件和軟件兩部分,人們看到的只是操作臺(tái)?!睆氖隆暗蠈殹盇TM機(jī)銷售工作超過十年的蔡戩告訴記者,我國(guó)現(xiàn)在有大約20萬臺(tái)ATM機(jī)。如果有機(jī)會(huì)拆開穿著厚重盔甲的ATM機(jī),會(huì)看到這樣的情景:上下兩層的布置里,上層有一臺(tái)普通的電腦主機(jī)、屏幕對(duì)外的顯示器(也就是外露的部分)、讀卡器,打印機(jī)、打印卷紙等。下層是幾個(gè)金屬小箱子(鈔箱和廢鈔箱),此外,就是一些金屬杠桿等機(jī)械設(shè)備。
對(duì)用戶(持有銀行卡的人)來說,為了取款,從插卡到取卡的過程可能只需要60秒,但這1分鐘里ATM機(jī)已經(jīng)高速運(yùn)轉(zhuǎn)。以銀行卡(確切的說是磁條)為鑰匙,在輸入個(gè)人核心信息之后,ATM機(jī)會(huì)通過安全微控制器啟動(dòng)一套程序。與其他數(shù)據(jù)終端一樣,ATM必須連接到一個(gè)主處理機(jī)并與其通信。主處理機(jī)類似一個(gè)互聯(lián)網(wǎng)服務(wù)提供商(ISP),它是用戶可以訪問各種自動(dòng)柜員機(jī)網(wǎng)絡(luò)的入口。
簡(jiǎn)單地說,自動(dòng)柜員機(jī)是具有讀卡器和鍵盤兩個(gè)輸入裝置,以及揚(yáng)聲器、顯示屏、憑條打印機(jī)和出鈔口四個(gè)輸出裝置的數(shù)據(jù)終端?!拜斎胙b置可以讓用戶對(duì)ATM機(jī)發(fā)送命令。通過讀卡器,ATM機(jī)獲取銀行卡背面磁條中的信息,通過RS232、RS485USB協(xié)議與外界(比如后臺(tái)數(shù)據(jù)中心)通信的接口傳送給主處理機(jī)。主處理機(jī)根據(jù)此信息將交易路由到用戶的銀行。用戶再通過鍵盤輸入告訴銀行需要進(jìn)行何種交易(取款、查詢等)以及交易金額,在此過程中,銀行需要用戶輸入個(gè)人密碼(PIN)以進(jìn)行身份驗(yàn)證?!?/p>
嵌入式軟件工程師金飛告訴記者,ATM機(jī)將輸入裝置的信息發(fā)送到主處理機(jī),主處理機(jī)將交易請(qǐng)求發(fā)送到用戶的銀行或發(fā)卡機(jī)構(gòu)。如果用戶要提取現(xiàn)金,主處理機(jī)在客戶銀行賬戶和主處理機(jī)賬戶之間執(zhí)行一個(gè)電子資金轉(zhuǎn)賬。資金轉(zhuǎn)賬到主處理機(jī)賬戶后,處理機(jī)向ATM機(jī)發(fā)送一個(gè)批準(zhǔn)代碼,授權(quán)ATM機(jī)來支付現(xiàn)金,這時(shí)候,ATM機(jī)的輸出裝置就協(xié)助用戶完成取款任務(wù)。
取款的風(fēng)險(xiǎn)
從ATM機(jī)的工作原理可以看到,ATM機(jī)通過主處理機(jī)驗(yàn)證了用戶的身份,就會(huì)根據(jù)口令從鈔箱中“吐”錢給用戶。“出鈔口連接了ATM機(jī)的鈔箱,這是ATM的核心,大多數(shù)小型ATM機(jī)的整個(gè)底部都是容納現(xiàn)金的鈔箱?!辈虘煺f,大的ATM機(jī)一般有4#12316;5個(gè)鈔箱,每個(gè)鈔箱里容納20#12316;25萬不等的鈔票,而小的ATM機(jī)也能容納10萬左右的鈔票。
按照這個(gè)程序運(yùn)作,對(duì)用戶來說有一個(gè)潛在的風(fēng)險(xiǎn),特別是對(duì)ATM取款機(jī)而言?!癆TM取款機(jī)本身沒有鈔票識(shí)別功能,所以放入鈔箱里的鈔票和白紙沒有區(qū)別,ATM都會(huì)默認(rèn)為是真鈔。在驗(yàn)證了用戶的身份之后,哪怕鈔箱里放的是假幣乃至牛皮紙,ATM機(jī)也會(huì)像傻瓜一樣如數(shù)吐給用戶?!钡虘煺J(rèn)為這種可能性很小,因?yàn)殁n箱里的鈔票都是經(jīng)過銀行反復(fù)清點(diǎn)的,除了偶爾疏忽造成的小概率假幣事件,大規(guī)模取到假幣基本可以斷定是清點(diǎn)不力,這就說明這家銀行有問題,而不是ATM機(jī)有問題。
ATM存取款一體機(jī)的技術(shù)相對(duì)復(fù)雜一些,加入了驗(yàn)鈔模塊和識(shí)別鈔票的技術(shù),但也不是絕對(duì)安全?!伴_通了循環(huán)鈔票的使用功能之后,誰也不敢說100%沒有假鈔逃過ATM的法眼,但概率真的很小?!辈虘煺f,為了防止點(diǎn)鈔錯(cuò)誤,ATM設(shè)置了電子眼,以及一個(gè)估計(jì)鈔票厚度的傳感器,保證ATM機(jī)不會(huì)吐出比需求更多的錢。
但事情不是沒有例外。2 0 0 7年,一個(gè)叫許霆的小伙子徹底攪動(dòng)了ATM機(jī)的神經(jīng):鍵入1塊錢卻吐出了1 0 0 0元。最終,許霆被判有期徒刑5年,并處罰金2萬元。ATM機(jī)是怎么出錯(cuò)的?
金飛分析,這種情況下ATM機(jī)的硬件沒有問題,而是它本身的運(yùn)行程序出錯(cuò)了,“這種錯(cuò)誤就像運(yùn)行的QQ、Office這些跑特定應(yīng)用的程序出錯(cuò)一樣。所謂特定程序,就是在連接了后臺(tái)銀行數(shù)據(jù)庫(kù)通信之后,再根據(jù)用戶操作存錢取錢的實(shí)際處理程序。具體是什么錯(cuò)誤,這個(gè)就需要銀行對(duì)ATM機(jī)進(jìn)行檢查了?!痹S霆案之后,當(dāng)事的ATM機(jī)生產(chǎn)廠家廣電運(yùn)通宣稱“當(dāng)時(shí)ATM機(jī)在進(jìn)行軟件的升級(jí)”,“就像電腦在升級(jí)時(shí)發(fā)生錯(cuò)誤一樣,許霆當(dāng)時(shí)用的ATM機(jī)也發(fā)生錯(cuò)誤,吐出的錢和銀行發(fā)送的支付口令默認(rèn)的金額發(fā)生了偏差,這種偏差只能在銀行和ATM機(jī)對(duì)賬的時(shí)候發(fā)現(xiàn)。”
哈德曼教授同意了金飛的說法,“美國(guó)也曾經(jīng)發(fā)生類似的案件,有些人輸入100美元,吐出來的是1000美元。但除了ATM自身運(yùn)行出錯(cuò),也可以給它安裝一個(gè)惡意程序欺騙ATM機(jī)?!惫侣治?,在銀行主處理機(jī)發(fā)送支付口令給ATM機(jī)的過程中,如果在數(shù)據(jù)包還未到達(dá)ATM機(jī)之前,惡意程序以更快的速度攔截口令并修改程序,就可以將修改后的支付口令發(fā)送給ATM機(jī),讓它乖乖聽話,吐出更多的鈔票。
最近,安全廠商Trustwave就提示那些運(yùn)行Windows XP的ATM機(jī)銀行,再一次檢查機(jī)器有無受到黑客安裝的惡意軟件的感染,Trustwave方面警示說,當(dāng)黑客將一個(gè)“觸發(fā)卡”插入ATM時(shí),被控制的惡意軟件通過GUI(圖形用戶界面)顯示,觸發(fā)卡會(huì)打開一個(gè)小窗口,顯示出10個(gè)命令選項(xiàng),犯罪分子有10秒的時(shí)間使用ATM機(jī)的鍵盤從中選擇一個(gè)命令,包括允許ATM吐出鈔箱里的所有現(xiàn)金。
黑客的機(jī)會(huì)
利用A T M 機(jī)的工作特點(diǎn)和系統(tǒng)運(yùn)行的漏洞,黑客可以抓到許多發(fā)財(cái)?shù)臋C(jī)會(huì)。2008年11月,一個(gè)黑客組織利用欺詐程序在30分鐘之內(nèi)便從全球49個(gè)城市的130臺(tái)ATM機(jī)上盜走了900萬美元。他們是怎么做到的呢?
黑客侵入了RBS WorldPay系統(tǒng)(蘇格蘭皇家銀行的在線支付系統(tǒng)),盜走了上百?gòu)埞べY卡的信息。他們將所盜竊的卡片信息寫入數(shù)千張空白的磁卡,很容易地就用這些卡取到了錢。
“這和在ATM機(jī)周邊或者機(jī)體上安裝攝像頭來盜取用戶的銀行卡信息差不多,只不過它是從后臺(tái)系統(tǒng)上破解,但關(guān)鍵都是獲取用戶的關(guān)鍵信息(卡號(hào)和PIN密碼等),仿造用戶的銀行卡,對(duì)ATM機(jī)發(fā)出‘正確’的取款口令。”蔡戩說,如果是黑客破解,那就需要加強(qiáng)后臺(tái)的防護(hù)。金飛分析從后臺(tái)攻擊ATM的難度過大。他曾經(jīng)給一家銀行做后臺(tái)維護(hù),對(duì)方顯得十分小心,直接利用ATM嵌入式操作系統(tǒng)漏洞會(huì)相對(duì)容易。
今年年初,黑客破解了ATM廠商Diebold一月份為其基于Windows的產(chǎn)品發(fā)布的軟件更新補(bǔ)丁,并在其中插入了一個(gè)惡意軟件,對(duì)位于俄羅斯的ATM機(jī)發(fā)出了攻擊。Windows CE是許多ATM機(jī)的操作系統(tǒng),而杰克準(zhǔn)備在黑帽大會(huì)上演示的ATM機(jī)漏洞也正是基于這個(gè)系統(tǒng)。
“ W i n d ows最大的好處是操作界面便利,而且用戶可以享受更多的服務(wù)。但Windows被太多人惦記了,木馬、病毒和攻擊總是隨之而來。一旦出現(xiàn)漏洞,就需要對(duì)ATM機(jī)打補(bǔ)丁修復(fù)?!惫侣淌谡f,美國(guó)以前采用IBM OS/2等更簡(jiǎn)單的操作系統(tǒng),因?yàn)楹?jiǎn)單,所以目標(biāo)性不強(qiáng),針對(duì)它的病毒攻擊并不多,“但ATM生產(chǎn)廠商還是喜歡Windows,因?yàn)檫@樣他們可以賣出更多臺(tái)ATM機(jī)?!?/p>
因?yàn)殡y以預(yù)計(jì)木馬、病毒等的發(fā)生情況,所以最理想的狀態(tài)是對(duì)ATM系統(tǒng)及時(shí)修補(bǔ),但這在現(xiàn)實(shí)中不大可能?!俺杀咎撸诳?4小時(shí)都可能對(duì)網(wǎng)絡(luò)進(jìn)行攻擊,但對(duì)所有的ATM機(jī)進(jìn)行24小時(shí)實(shí)時(shí)監(jiān)控并提供補(bǔ)丁程序,不大可能?!苯痫w提到,銀行方面對(duì)給ATM機(jī)打補(bǔ)丁和我們給電腦安裝補(bǔ)丁的原理一樣,但銀行要謹(jǐn)慎許多,正如許霆案中出現(xiàn)的一樣,更新可能導(dǎo)致另外的錯(cuò)誤。
不過,目前ATM所遭遇的攻擊都來自互聯(lián)網(wǎng),一個(gè)可能的解決辦法是,銀行系統(tǒng)專網(wǎng)專用,購(gòu)買或者參股網(wǎng)絡(luò)安全公司,建立專用的金融網(wǎng)絡(luò)?!叭魏魏屯獠拷佑|的網(wǎng)絡(luò)都可能被外部攻擊,同理,如果你是局域網(wǎng)絡(luò),那被攻擊也是自己人作祟。銀行的網(wǎng)絡(luò)在大眾看來穿上了隱身衣跑在公共網(wǎng)絡(luò)上,但黑客有鑒別隱身衣的眼睛?!苯痫w說。