Fox on Security

セキュリティリサーチャー(インシデントアナリスト)で、セキュリティコンサルタントのキタきつねの独り言。専門はPCI DSS。

Visaのセキュリティアラートを読み解く

Visaの新しいセキュリティアラートに関する記事が出ていました。コロナ禍を受けて海外や日本のカード情報を狙う攻撃は非対面取引(CNP)の加盟店が狙われる傾向が強いのですが、各国の経済活動再開を受けて対面取引(CP)の加盟店にまたハッカーが戻ってきた可能性を感じます。

securityaffairs.co

Visaは、2つの名前のない北米のホスピタリティ加盟店がPOS(point-of-sale)マルウェアのいくつかの株に感染していることを明らかにしました。
米国の支払い処理業者Visaは、北米の2つのホスピタリティマーチャントがハッキングされ、攻撃者が2つの名前のない組織のシステムにPOS(point-of-sale)マルウェアを感染させたことを明らかにしました。

先週発行されたセキュリティアラートによると、攻撃はそれぞれ2020年5月と6月に発生しました。

(Security Affairs記事より引用)※機械翻訳

 

 

公式発表(VISA)

 

 

キタきつねの所感

今年9月25日発行のVisaの新しいセキュリティアラートです。

Visaのセキュリティアラートは米国の加盟店向けサイト(※ページの下の方にあります)で平均すると月1回程度出ていますが、あまり日本で注目される事はありません。

私も海外記事で気づいた時に見る程度なのですが、カード情報のインシデントの詳細を知る立場にあるVisaだけに、攻撃を受けた加盟店情報は出ない(匿名かされている)ものの、詳細な攻撃手口が書かれているので、セキュリティ関係の方はウォッチしておいても良いソースと言えるかも知れません。

 

こんな感じで掲載されているのですが・・・読みにくいので、

f:id:foxcafelate:20201006053954p:plain

 私はいつもChromeGoogle翻訳をONにして表示しています。

 

f:id:foxcafelate:20201006054302p:plain

 

アラート内容は、非常に乱暴に要約すると「POSマルウェア亜種」のマルウェアの攻撃をホスピタリティ系の2社が受けたので注意して下さい、という内容です。

※ホスピタリティの定義には一般的に、レストラン、ホテル、カジノ、エンターテイメント、旅行業等、幅広い企業が入るので、どこが影響を受けたのか想像しにくいのですが、Visaがアラートを出す位なので、名の知れた企業でインシデントが発生した可能性を感じます。

f:id:foxcafelate:20201006052511p:plain

 

アラートの中身を見ていきます。

概要を説明します。
2020年5月と6月に、Visa Payment Fraud Disruption(PFD)は、北米の加盟店2社の独立した侵害事件から回収されたマルウェアサンプルを分析しました。これらのインシデントでは、犯罪者が加盟店のPOS(Point-of-Sale)端末を標的にして、ペイメントカードのデータを採取して流出させようとしました。分析の結果、最初の攻撃はマルウェアの亜種であるTinyPOSに起因するものであり、2番目の攻撃はRtPOS、MMon(別名Kaptoxa)、PwnPOSなどのPOSマルウェアファミリーが混在したものであることが判明しました。今回の攻撃は、カードの現在の支払い口座データを盗み出すために、加盟店のPOSシステムを標的にした脅威の継続的な関心を示すものです。PFDは、これらのマルウェアの亜種とそれに対応する危殆化の指標(IOC)の分析を行い、マルウェアを利用した攻撃の識別、予防、緩和を支援しています。

脅威の評価

最初の侵害では、脅威者はPOSマルウェアの亜種であるTinyPOSを使用して、北米の接客業の加盟店を標的にしました。加盟店のネットワークへの最初のアクセスは、加盟店の従業員を標的としたフィッシング キャンペーンによって行われました。このフィッシング攻撃の一環として、管理者アカウントを含む正規のユーザーアカウントが侵害され、脅威行為者によって加盟店の環境にログインするために使用されました。その後、正規の管理ツールを使用して、加盟店のネットワーク内のカード会員データ環境(CDE)にアクセスしました。

CDEへのアクセスが確立されると、アクターはメモリスクレーパーを展開してトラック1とトラック2の支払いアカウントデータを収集し、その後、バッチスクリプトを使用してマルウェアを加盟店のネットワーク全体に大量に展開して、さまざまな場所とそれぞれのPOS環境をターゲットにしました。メモリスクレーパーは、ペイメントカードのデータを収集し、ログファイルに出力しました。分析の時点では、サンプル内にはネットワーク機能や脱出機能は存在しませんでした。したがって、アクターは他の手段を使ってネットワークから出力されたログファイルを削除した可能性が高い。

2 番目の侵害では、脅威のアクターは POS マルウェアを使用して再び北米のホスピタリティ企業を標的にしました。分析の結果、脅威行為者はRtPOS、MMon(別名Kaptoxa)、PwnPOSというマルウェアの亜種を使用していることが判明しました。この攻撃で脅威の行為者が使用した戦術についてはあまり知られていませんが、行為者がさまざまなリモート アクセス ツールやクレデンシャル ダンパーを使用して、最初のアクセスを獲得し、横方向に移動し、POS 環境にマルウェアを展開したことを示唆する証拠があります。侵害のこれらの段階で利用されたマルウェアは回収されませんでした。この攻撃で使用された POS マルウェアの亜種は、トラック 1 とトラック 2 の支払口座データを標的としています。

(Visaセキュリティアラートから引用)※機械翻訳

 

1件目の侵害事件は「フィッシング」が起点です。ここで管理者IDまで窃取された後に、内部侵入されて、正規の管理ツールが悪用され、TinyPOS亜種をPOSネットワーク全体に拡散されています。

大きなシステムの場合、管理者の正規アクセスを悪用された場合には検知が難しいかと思いますが、まずは最初の外部からのアクセスに関して多要素認証が入ってなかった(と思われる)点、あるいは入っていた多要素認証(OTP)も同時にフィッシングで窃取されていた(と思われる)点が侵入を防ぐべき最初のポイントだったかと思います。

また、内部侵入された後も、特権IDの管理(監視)がしっかりとしていれば、不正な動きを検知できる可能性がありますので、2番目の防御ポイントはここかと思います。

もう1点、一部のカード取扱企業にしか要求されていませんが、内部管理者アクセスへの多要素認証が有効(3番目の防御ポイント)だったかと思います。

 

マルウェア拡散フェイズまで入ってしまうと、特権IDを乗っ取られていると影響を最小限に食い止めるのは難しいかと思いますので、偵察・侵入フェイズで攻撃者をどう抑えられるのか、VISAアラートから、各企業への気づきとしては、その点になるのかと思います。

 

2件目の侵害事件は、侵入経路(手口)が具体的に書かれていませんが、リモートアクセスツール・・・とありますので、例えばVPN装置の脆弱性を突いた攻撃などが考えられます。

foxsecurity.hatenablog.com

 

内部に侵入された後は、 (RtPOS、MMon(別名Kaptoxa)、PwnPOS)の亜種が使われて、POSシステム全体が侵害を受けますが、マルウェアが残って無い(ファイルレスか、痕跡を消された?)様です。

 

いずれの侵害事件も「トラック 1 とトラック 2 の支払口座データを標的」と書かれていますので、磁気カード情報が攻撃対象だった様ですが、管理者権限が奪われ、内部カード環境(CDE)まで侵入を受けている場合は、あるいはPOS端末のメモリの中を攻撃された場合は、ICカード情報であっても影響を受ける可能性もありますので、こうした攻撃を早い段階で検知(防御)する事に、対面加盟店は留意した方が良いかと思います。

 

 

最後に、アラートの後半部分、攻撃手口の詳細部分の機械訳を(必要な方のために)貼っておきます。元の英語アラートと併せてご覧ください。

PowerShellBMP/PNG画像など・・攻撃手法の変化を感じます。

※ファイル名やハッシュ値などは割愛しています

メモ PowerShell ローダ
バッチファイルには powershell.exe の呼び出しと base64 エンコードされたコマンドが含まれています。コマンドは多くのオープンソースで普及している PowerShell を使用した反射型インジェクションの標準実装フレームワークを使用しています。特に、このサンプルでは、C:\tempフォルダのMahjongMCE.pngをロードしています。


シェルコード付きPNG画像ファイルに注意
攻撃者はPNGファイルのファイルエンド(EOF)マーカーの後に生のシェルコードを追加しました。これは昔からある手口で、以下のようなものがあります。
を使用すると、ファイルを画像ビューアで適切にレンダリングしつつ、付加されたデータを隠すことができます。このシェルコードはPowerShell Loaderによって呼び出され、メモリ上で実行されます。


シェルコードの抽出に注意 - TinyPOS POS(POS)マルウェア
シェルコードは、TinyPOS Point-of-Sale (POS) マルウェアファミリーの進化版です。最初にシェルコードははシェルコードの残りの部分をデコードする小さなスタブを実行します。シェルコードは
最終的には、クレジットカード情報をスクレイピングし、脱出のためにそれを準備するための責任があります。


抽出されたシェルコード(復号化された)に注意 - TinyPOS POS(POS)マルウェアプロセスリストスキャンシェルコードは、システム上で実行されているプロセスを列挙し、特にプロセス名を探します。には、特定の POS ソフトウェアの部分的な名前が含まれています。
メモリスクレーパーとログファイルターゲットプロセスが特定されると、シェルコードはクレジットカードのトラックデータ(具体的にはトラック1と2のデータ)、文字列データの一連のチェックを完了することで、データを追跡するためにフォーマットされていることを確認します。
標準です。シェルコードはその後、データに有効なクレジットカード番号を入力します。これらのステップが完了すると、シェルコードXORはスクレイプされたデータをエンコードしてを以下のログファイルに出力します。

メモ PowerShell ローダバッチファイルには powershell.exe の呼び出しと base64 エンコードされたコマンドが含まれています。コマンドは多くのオープンソースで普及している PowerShell を使用した反射注入の標準実装フレームワークを使用しています。特に、このサンプルでは、C:\journalフォルダのcloud_Thumbnail.bmpをロードしています。


攻撃者は、BMPファイルのファイルエンド(EOF)マーカーの後に生のシェルコードを追加します。これは昔からある戦術で、以下のようなものがあります。を使用すると、ファイルを画像ビューアで適切にレンダリングしつつ、付加されたデータを隠すことができます。このシェルコードは PowerShell Loader によって呼び出され、メモリ上で実行されます。


シェルコードの抽出に注意 - TinyPOS POS(POS)マルウェアシェルコードは、TinyPOS Point-of-Sale (POS) マルウェアファミリーの進化版です。最初はシェルコードは、デコードを担当する小さなスタブを実行します。

 (Visaセキュリティアラートから引用)※機械翻訳

 

 

本日もご来訪ありがとうございました。

Thank you for your visit. Let me know your thoughts in the comments.

クレジットカードのイラスト(番号なし)

 

更新履歴

  • 2020年10月6日 AM(予約投稿)