本ブログ記事は、2021年8月12日に米国で公開されたBlackBerryのブログ記事の抄訳版です。原文はこちらからご覧頂けます。
Ficker は悪意のあるインフォスティーラ(情報窃取型マルウェア)であり、ロシアの地下オンラインフォーラムで @ficker と名乗る脅威アクターによって販売・配布されています。この MaaS(Malware-as-a-Service)は 2020 年半ばに初めて発見されました。
Ficker はこれまで、トロイの木馬化した Web リンクや侵害された Web サイトを介して配布されています。たとえば、Spotify や YouTube Premium など、正規有料サービスの無料ダウンロードを提供すると称したページに被害者を誘導することがあります。また、最近では既知のマルウェアダウンローダである Hancitor を介して配布されています。
Ficker は Rust 言語で書かれている のが特徴で、Web ブラウザー、クレジットカード情報、暗号通貨ウォレット、FTP クライアント、その他のアプリケーションなど、さまざまな情報を窃取対象とします。また、解析妨害のためのチェック機能を持つほか、システムの侵害成功後にさらなる機能を展開し、追加のマルウェアをダウンロードすることもできます。
オペレーティングシステム
リスクと影響
Ficker はいくつかの有料パッケージを提供しており、悪意のあるプログラムのサブスクリプション利用料が段階的に設定されています。マルウェアのサブスクリプションが購入されると、被害者から窃取した情報の収集・調査用の Web ベースのパネルや、インフォスティーラ本体の実行可能ファイルがマルウェアの作成者から購入者に提供されます。
図 1: Ficker の名前はマルウェアの作成者 / 推進者に由来
以下の図に示すように、このマルウェアの作成者はマルウェア関連のフォーラムで頻繁に活動しています。
図 2: マルウェアの作成者による「アップデートログ」の翻訳版
昨年の登場以来、Ficker はさまざまな方法で展開されています。これは、複数の脅威アクターが、各々実施している小規模のキャンペーンでこのマルウェアを使用しているためと考えられます。
当初、Ficker の被害者のほとんどは、侵害された Web サイトにアクセスしたり、悪意のある Web リンクを誤ってクリックしたりすることで、意図せず脅威をダウンロードして実行していました。多くの場合、脅威アクターは人気の正規サービスの偽広告を作成し、無防備なユーザーがトロイの木馬化したコンテンツにアクセス(またはクリック)するように仕向けます。
たとえば、Ficker は以前「Microsoft® Store」の Web ページになりすましてユーザーを誘い込むページでホストされており、ユーザーの油断を誘って悪意のあるアプリケーションをダウンロードさせようとしていました。
Hancitor
ここ数か月、Ficker は既知のマルウェアファミリーである Hancitor によって展開されドロップされています。多くの場合、Hancitor の攻撃チェーンは脅威アクターによる偽の DocuSign マルスパムメールの送信から始まります。結果として、ユーザーは本物の DocuSign 文書を受け取ったと思い込み、トロイの木馬化した Microsoft® Word 文書を知らず知らずのうちにダウンロードします。
偽の DocuSign 文書が開かれて悪意のあるマクロコードの実行が許可されると、多くの場合、Hancitor はコマンドアンドコントロール(C2)インフラストラクチャに接続し、ダウンロード対象の Ficker のサンプルを含んだ悪意のある URL を受信します。この様子を以下に示します。
図 3: Hancitor が Ficker インフォスティーラをダウンロードする例
Hancitor の C2 から送信されるコマンドにもよりますが、以下に示すように、Ficker は被害マシン上の svchost.exe のインスタンスに注入されることがよくあります。これは、検知を回避しやすくし、悪意のある実行可能ファイルの活動を隠蔽するために行われます。
図 4: Hancitor の初期感染を介した Ficker の処理の流れ
解析妨害と初期チェック
ファイルを静的解析した結果、Ficker が高度に難読化されていることがわかりました。また、解析を妨害し、仮想化環境でのマルウェア実行を防ぐことを目的とした、解析を妨害するための複数のチェック機能も備わっています。
マルウェアの作成者は、特定の国でマルウェアが実行されないようチェックする機能も用意しています。これは、このようなマルウェアを購入する傾向にある脅威アクターを保護するためと考えられます。Ficker は被害マシンのキーボードレイアウトを調べることでこの機能を実現しており、キーボードレイアウトが以下のいずれかの国に関連している場合は自身を終了します。
キーボードレイアウト
|
国
|
ru-RU
|
ロシア
|
be-BY
|
ベラルーシ
|
Uz-UZ
|
ウズベキスタン
|
hy-AM
|
アルメニア
|
kk-KZ
|
カザフスタン
|
az-AZ
|
アゼルバイジャン
|
このチェックを行うために、Ficker は api[.]ipify[.]org の Web API にアクセスします。これはパブリック IP アドレスの Web API であり、マルウェアが被害デバイスの外部 IP アドレスを収集するために使用されます。API 呼び出しに対する正常な応答がない場合は C2 インフラストラクチャに接続できないため、マルウェアはこの API を仮想化環境対策のチェック手段としても利用している可能性があります。
被害デバイスの IP アドレスが得られると、マルウェアは C2 サーバーへの接続を試みます。応答が正常に送信された場合、マルウェアは必要な行動をとるための構成コマンドを受信します。この API 呼び出しからそのような情報が得られない場合、マルウェアはインターネット接続が再び確立されるまで待ってから C2 に再接続します。
データの窃取
従来のインフォスティーラとは異なり、Ficker は窃取したデータをディスクに書き込みません。多くの場合、従来のインフォスティーラファミリーは窃取対象とするデータのローカルコピーを保存し、一定時間後にそれを抜き出します。Ficker はそうではなく、命令を繰り返し実行しながらマルウェアオペレーターに情報を直接送信します。
マルウェアの作成者は、Ficker にもう 1 つのユニークな機能を持たせています。それは、窃取したデータを「被害者サイド」ではなくサーバーサイドで復号するというものです。これは検知を回避するためと考えられますが、この機能により、Ficker の作成者は誰にマルウェアの使用を許可するかをより細かく管理できるようにもなっています。
窃取したデータを送信する際、Ficker はまず XOR (排他的論理和) によってデータを暗号化します。解析の結果、すべてのサンプルで同じ XOR 鍵(0x0A)が使用されていることがわかりました。
Ficker はコマンドに応じて以下の情報を抜き出そうとします。
- Chromium Web ブラウザー
- 保存されたログイン認証情報
- Cookie
- オートコンプリートの履歴
- Mozilla ベースの Web ブラウザー
- 保存されたログイン認証情報
- Cookie
- オートコンプリートの履歴
- クレジットカード情報
- 暗号通貨ウォレット
- FileZilla FTP クライアント
- WinSCP FTP クライアント
- Discord のログイン情報
- Steam アカウント
- Pidgin アカウント
- Thunderbird アカウント
また、以下のようにシステム情報も収集します。
図 5: Ficker から C2 に送信されるシステム情報のデコード結果
さらに、スクリーンショットの取得機能も備えており、これによりマルウェアオペレーターは被害デバイスの画面をリモートでキャプチャできます。C2 接続の確立後には、以下に示すようにファイルの取得や追加ダウンロードの機能も有効になります。これにより被害デバイス上で様々な悪意ある活動を行うことが可能となります。
図 6: Ficker のダッシュボードの例
Ficker の C2 に情報が送り返されると、マルウェアオペレーターは抜き出されたすべてのデータにアクセスし、データを検索できます。
YARA ルール
以下の YARA ルールは、この記事で説明した脅威を捕捉するために BlackBerry のリサーチ・インテリジェンスチームが作成しました。
import "pe"
rule Mal_Infostealer_Win32_Ficker_Stealer
{
meta:
description = "Yara rule to detect Ficker Stealer"
author = "Blackberry Threat Research Team"
date = "04-08-2021"
strings:
$x1 = "kindmessage"
$x2 = "SomeNone"
$x3 = ".Kind"
condition:
//PE File
uint16(0) == 0x5A4D and
// Must have the following sections in the following order
pe.section_index(".text") == 0 and
pe.section_index(".data") == 1 and
pe.section_index(".rdata") == 2 and
pe.section_index("/4") == 3 and
pe.section_index(".bss") == 4 and
pe.section_index(".idata") == 5 and
pe.section_index(".CRT") == 6 and
pe.section_index(".tls") == 7 and
// Must be less than
filesize < 300KB and
//One of $x
(2 of ($x*))
}
|
侵入の痕跡 (IOC)
オペレーティングシステム: Windows
ミューテックス
- serhershesrhsfesrf
- hrth
- o;jtfytyjftyjftyjftyj;ijo;
- ijlhlkwaftyjftyjftjftyh;joi;i
- ah;waeh;jftyjftyjfiftfdgaf
- hotyjftyj;afdh
- whftyjftyjftyjtfyjtfyjtfyj;ijo;h
- whoareyoutellmeandilltellwhoyou
ネットワーク通信
Ficker によるダウンロードの IOC:
ドメイン
|
作成日
|
登録者
|
s0lom0n[.]ru/7hsjfd9w4refsd[.]exe
|
|
-
|
min0sra[.]ru/7t4dfgnmkk7[.]exe
|
|
-
|
falan4zadron[.]ru/7hsjfd9w4refsd.exe
|
|
-
|
4a5ikol[.]ru/7jkio8943wk[.]exe
|
|
-
|
pirocont70l[.]ru/7hjujnfds[.]exe
|
|
-
|
Ficker の C2:
ドメイン
|
作成日
|
登録者
|
pospvisis[.]com
|
2021 年 1 月 19 日
|
-
|
functionalrejh[.]com
|
2020 年 9 月 22 日
|
-
|
asfasfvcxvdbs[.]com
|
2021 年 7 月 7 日
|
-
|
|
BlackBerry によるサポート
もし Fickerマルウェア のような脅威にさらされているなら、BlackBerry にお任せください。現在 BlackBerry 製品を利用していなくても問題ありません。
BlackBerry の インシデント対応チーム は、世界的に活躍するコンサルタントから構成され、ランサムウェアや持続的標的型攻撃(APT)など、さまざまなインシデントへの対応と封じ込めのサービスを専門としています。
弊社はグローバルコンサルティングチームを常に待機させており、ご希望があれば、24 時間サポートと現地支援を提供できます。次の URL からご相談ください。https://www.blackberry.com/ja/jp/forms/enterprise/contact-us
・お問い合わせ:https://www.blackberry.com/ja/jp/forms/enterprise/contact-us
・イベント/セミナー情報:https://www.blackberry.com/ja/jp/events/jp-events-tradeshows
・BlackBerry Japan:https://www.blackberry.com/ja/jp