剖析ATM惡意軟體家族: PRILEX和CUTLET MAKER

長時間以來趨勢科技都在致力於研究ATM惡意軟體,特別是那些能夠秘密針對銀行客戶的新病毒家族。在本文裡,我們將會介紹最近兩個值得注意的惡意軟體:Prilex和Cutlet Maker。它們都有特別吸引人的地方,不過是不同的原因。

PRILEX – 一種會劫持銀行應用程式的高度針對性惡意軟體

 

如果攻擊者知道關於特定自動提款機的一切,那麼這起針對性攻擊/鎖定目標攻擊(Targeted attack )會發生什麼事?

Prilex惡意軟體會竊取受感染ATM使用者的資訊。本起案例來自一家巴西銀行,但想想看到這類攻擊如果出現在你的地區,無論你是客戶還是銀行都會遭受影響。

這個被稱為Prilex的惡意軟體家族在2017年10月首次由被通報。我們解析了這個惡意軟體並發現一些不尋常的東西:它會掛鉤某些動態連結程式庫(DLL),用自己的應用程式畫面來取代別人的。它所影響的外部DLL包括:

  • dll
  • dll
  • dll

我們在網路上搜尋這些DLL,但無法找到任何相關資訊。鑑於這惡意軟體內的字串全是葡萄牙文,我們詢問了我們在該地區的銀行聯絡人。我們發現那些DLL屬於那裡銀行的ATM應用程式。這成為了高度針對性的攻擊。最重要的是,惡意軟體只影響特定廠牌的ATM,這代表攻擊者可能對其進行分析並製作客製化的攻擊。

攻擊方式很簡單。一旦機器受到感染,惡意軟體會與銀行應用程式一起執行,在螢幕出現詢問使用者帳號安全碼時用自己的畫面加以替換。此安全碼是在巴西常見於保護ATM和線上交易的雙因子認證方式。一旦使用者輸入此安全碼,惡意軟體會擷取並加以儲存。

Figure1:Display screen asking for account security code

圖1、螢幕顯示詢問帳號安全碼

 

趨勢科技針對程式碼進行分析後發現在竊取資料後出現了有意思的事情:惡意軟體嘗試與遠端命令和控制(C&C)伺服器進行通訊,並上傳信用卡資料和帳號安全碼。據我們所知,這是第一個假定自己連到網際網路的ATM惡意軟體。由於攻擊者似乎對這家銀行的作法和流程非常熟悉,所以這銀行的ATM很可能有連線。

這是少數設計成竊取使用者資料的ATM攻擊之一,而不只是要讓提款機吐鈔。這種攻擊的背後很可能是處理大量信用卡憑證並通過其他方式進行貨幣化的犯罪集團。Prilex是針對巴西銀行的超級針對性攻擊。所以我們並不希望它出現在其他地方。

但從Prilex可以學到一些更加重要的東西。任何一家銀行都可能被犯罪份子研究自己的作法和流程,然後用於高度針對性的攻擊。這很值得關心,如果你想保衛你的ATM基礎設施,那有些東西必須看一看。直接讓提款機吐鈔很快就會惡名遠播,但像這樣的沉默式攻擊可能會被忽略幾個月甚至幾年。我們認為在今日必須要強制設定監控工具和保護措施。

針對性惡意軟體可能需要花費大量時間和資源開發。這表示在今日的世界,犯罪分子認為這是值得的投資。銀行被視為固若金湯的日子已經不在 – 現在它們只是海中最大的那條魚。要殺死鯨魚並不容易,但是有可能的 – 這樣做可以讓攻擊者吃很久。

關於Prilex的重點:

  • Prilex劫持銀行應用程式。
  • Prilex擷取使用者輸入和卡片資訊並將其傳送到C&C伺服器。
  • Prilex專門針對一家巴西銀行。
  • 犯罪分子已經深入分析了目標ATM。
  • Prilex用Visual Basic 6.0(VB6)編寫。

 

CUTLET MAKER – 地下市場所提供的ATM惡意軟體

Cutlet Maker是設計來清空提款機內所有鈔票的ATM惡意軟體。有趣的是,雖然它的作者在進行宣傳銷售,但他們的競爭對手已經破解了這個程式,讓任何人都能夠免費使用。

我們以前就看過這種ATM惡意軟體,它有什麼特別?從技術上來說,這是一個帶著有趣介面的普通程式。實際上,Cutlet Maker被設計成從USB隨身碟執行。開發的犯罪份子在影片中宣傳此一特殊功能,只需要打開一個ATM機器,找到USB端口,連接隨身碟和外接鍵盤。之後就可以執行程式。但還有更多其他的。

此故事首次在媒體上爆出時,此服務的價格很高。對犯罪份子來說重點是保護吐鈔功能的使用,好讓他們的商業計劃可以持續下去。畢竟,如果可以無限制使用吐鈔功能會影響到犯罪分子的收入。

每次執行程式都會建立並顯示一個代碼。使用者必須聯絡開發者並提供此代碼。開發者在收到錢後會提供解鎖吐鈔功能的許可碼。沒付錢就不吐鈔。每次要對不同的ATM機使用Cutlet Maker時都會出現此情況。

Figure2:Cutlet Maker being offered on the deep web

圖2、在深網提供的Cutlet Maker

 

仔細檢查會發現許可碼並非基於時間,只是種演算法。也就是說相同的輸入會產生相同的輸出。有些其他犯罪份子發現了這一點,製作了會自動計算傳回碼的許可碼產生器。這可以在網路上取得也相對容易找到。這代表任何人現在都可以攻擊自動提款機而不必再為程式付錢 – 只要找到具備可供存取USB端口的ATM。

從技術上來說,這惡意軟體並不復雜。只用Diebold Nixdorf DLL(CSCWCNG.dll)來送命令給ATM的發鈔元件。

其他犯罪分子已經開始出售此版本的工具以及跟原始開發者比起來便宜許多的許可碼產生器。看來盜賊之間是沒有信譽可言。

到目前為止,原本的開發者看來沒有任何反應。並沒有製作使用不同許可碼演算法的新“改進”版本,而只是默默地希望其他人不要發現他們的競爭對手。

“Cutlet Maker”的獲利方式似乎是這樣:“搶劫自動提款機有利可圖。盜版軟體有利可圖。兩件都做可以賺雙倍“。

 

Cutlet Maker的重點:

  • Cutlet Maker是個能夠清空ATM的單一且有彈性的應用程式。
  • Cutlet Maker被設計從USB隨身碟執行。技術上來說不會感染ATM。
  • Cutlet Maker在俄羅斯地下市場以計次使用方式販賣。
  • 許可碼是透過演算法。系統每次執行都會產生一個數字。然後使用者在網站上為該次執行訂購許可碼。
  • 有人逆向演算法並寫了免費的許可碼產生器。
  • 兩個版本同時都在販賣。“破解”版更加便宜。
  • 目標ATM是Wincor Nixdorf(現在是Diebold Nixdorf)。
  • Cutlet Maker利用VMProtect進行高度混淆。

 

惡意軟體相關雜湊值(SHA256):

 

PRILEX(偵測為BKDR_PRILEX.A):

  • 77f99b6e6aa603a4e416ce09864ff0b8815987e56f9c31c609586017e1260027
  • d10a0e0621a164fad0d7f3690b5d63ecb9561e5ad30a66f353a98395b774384e

 

CUTLET MAKER(偵測為BKDR_ATMLETCUT.ASU):

  • 4a340a0a95f2af5ab7f3bfe6f304154e617d0c47ce31ee8426c70b86e195320c
  • afae0190f085ce4a8d3414dc48b7aa45732970c5bab3c562014921451e165729
  • 3635b0f89bf932a3722c1ea538fb3ba911f570788b6a996ffd8b807fdfe8ac26
  • a8a71e483645005b64b7be2b258539d1c38da1d575e663886cd6f0ef11fbd2af
  • f888a85406c9349e93d682ff2a3ff48deb4b87e3ce8cf80346d0028086d6240c
  • 05fae4bef32daf78a8fa42f8c25fdf481f13dfbbbd3048e5b89190822bc470cd

 

@原文出處:Dissecting PRILEX and CUTLET MAKER ATM Malware Families 作者:趨勢科技前瞻性威脅研究團隊(David Sancho和Fernando Merces)