【スポンサーリンク】

ウェブページのスクリプトがマルウェアを「組み立てる」危険とは?【HTMLスマグリング】

ウェブページのスクリプトがマルウェアを「組み立てる」危険とは?【HTMLスマグリング】

Microsoft Security Intelligenceによると、近年 「HTMLスマグリング(HTML Smuggling:HTMLの密輸)」というサイバー攻撃の手法が増えているそうです。

ウェブページのJavaScriptが、コンピュータ内にマルウェアを構築する」という話を見て、「ウェブページを見るだけで、マルウェアが保存されてしまうのか」と思ってびっくりしました。
ただ、「見るだけで感染する」というわけではなさそうです。

注意点は「フィッシング詐欺」と一緒。

怪しいメールのリンクをクリックしたり、
偽サイトの「ダウンロード」ボタンを押したり、
という操作に注意すれば大丈夫です。

今回は、「詐欺メール」が誘導する「HTMLスマグリング」について、見てみましょう。

ポイント
  • HTMLスマグリングは、セキュリティソフトに見つからないようにマルウェアをダウンロードさせるための手口。
  • フィッシング詐欺の一種で、HTMLスマグリングで「ダウンロード」したファイルは、セキュリティソフトのチェックをすり抜けてしまうことがある。
  • 大事なことは、怪しいリンクはクリックしない。怪しいファイルはダウンロードしない。
\記事が役に立ったらシェアしてね/
【スポンサーリンク】

1. 怪しいリンクはクリックしない

HTMLスマグリング」は、「詐欺メール(フィッシングメール)」によるサイバー攻撃の一つの手法です。基本的な対処法は「怪しいメールのリンクはクリックしない」ということに尽きます。

Microsoft Security Intelligenceのツイートをみると、「HTMLスマグリング」のメールのスクリーンショットをみることができます。

怪しいリンクはクリックしない

件名は、「CNPJ (ブラジル国家法人登録簿)が【一時停止】されたことをお知らせします(Viemos atraves deste informar que seu CNPJ se encontra SUSPENSO!)」。
まるで、法人登記停止の警告メールを偽装していて、メール内にリンクがあります。

もし、メール内のリンクURLにアクセスして、ページ内の「ダウンロード」ボタンを押すと、端末内に「悪意のあるソフトウェア(マルウェア)」が保存されてしまいます。

Attackers increasingly use HTML smuggling in phishing and other email campaigns to stealthily deliver threats, but Microsoft Defender Office 365’s detonation technology provides durable protection against this evasive delivery technique.

(攻撃者は、フィッシングやその他の電子メールキャンペーンでHTMLの密輸を使用して脅威を密かに配信することが増えていますが、Microsoft Defender Office 365の爆発テクノロジーは、この回避的な配信手法に対する永続的な保護を提供します。)

In a malware campaign that we have been tracking for weeks, attackers are sending out emails with malicious links that, when clicked, drops components embedded in an HTML page via HTML smuggling. This eventually leads to the dropping of a ZIP archive containing a JavaScript file.

(私たちが数週間追跡しているマルウェアキャンペーンでは、攻撃者は悪意のあるリンクを含む電子メールを送信しており、クリックすると、HTMLの密輸によってHTMLページに埋め込まれたコンポーネントをドロップします。これにより、最終的にJavaScriptファイルを含むZIPアーカイブが削除されます。)

The JavaScript file connects to a malicious website to download another ZIP file with a .PNG file name extension, which contains two DLLs and one .EXE file. One of the DLL files is the payload: the banking Trojan Casbaneiro, which is loaded via DLL sideloading.

(JavaScriptファイルは、悪意のあるWebサイトに接続して、拡張子が.PNGの別のZIPファイルをダウンロードします。このZIPファイルには、2つのDLLと1つの.EXEファイルが含まれています。 DLLファイルの1つはペイロードです。これは、DLLサイドローディングを介してロードされるバンキング型トロイの木馬Casbaneiroです。)

Microsoft Security Intelligence @MsftSecIntel 午前7:57 · 2021年7月24日

2. スクリプトがマルウェアを組み立てる

スクリプトがマルウェアを組み立てる

ん?
これって、詐欺メールと一緒だよね。

確かに、これだけなら、ほかの詐欺メールと一緒です。

HTML Smuggling」の特徴は、マルウェアのデータを直接ダウンロードさせるのではなく、ページに埋め込まれたスクリプトが、攻撃者のサーバから取得したデータを材料にして、デバイス内で組み立てるところにあります。

スクリプトがマルウェアを組み立てる

わざわざこんな回りくどいことをするのは、セキュリティソフトの監視を逃れるためです。

パソコンやスマホにセキュリティソフトが入っていれば、仮に詐欺メールに騙されて、ウェブサイトから「悪意のあるソフトウェア(マルウェア)」をダウンロードしてしまっても、警告を出して自動的に削除します。

これは、通常のダウンロードについては、セキュリティソフトがデータの流れを監視していて、マルウェアのパターンを検知するとブロックするからです。

しかし、「HTMLスマグリング」の場合は、送られてくるデータは「材料」です。
従って、セキュリティソフトが判別しにくい点があります。

「Smuggling」は「密輸」という意味です。

HTMLスマグリングは、マルウェアをダウンロードするときに、セキュリティソフトに見つからないようにするための手口。

スクリプトがマルウェアを組み立てる

確かにドラマでよくある、拳銃の部品をバラバラにして「密輸」する話みたいだね。

2-1. スクリプトが作るダウンロードリンク

スクリプトが作るダウンロードリンク

実際には、どうやってマルウェアが組み立てられているの?

偽サイトのソースコードの一部を見てみましょう。

var fileName = "CBQMN2929_VOSOUMCN-4577223681_09072021.zip";
...
var a = document.createElement("a");
...
var url = window.URL.createObjectURL(blob);
a.download = filneName;
a.click();

確かにHTMLにダウンロードのリンクを作って、スクリプトで生成した blobデータをファイルとして保存するように書かれてあることが読み取れます。

blob(Binary Large OBject)は、バイナリデータの塊を表現したものです。

つまり、ダウンロードリンクを押したときに、「CBQMN2929_VOSOUMCN-4577223681_09072021.zip」というファイル名でマルウェアのデータが保存されます。

出典:Microsoft Security Intelligence @MsftSecIntel 午前7:57 · 2021年7月24日
出典:Microsoft Security Intelligence @MsftSecIntel 午前7:57 · 2021年7月24日
スクリプトが作るダウンロードリンク

逆に言うと、ダウンロードしなければ、大丈夫です。

2-2. DLLサイドローディング

とはいえ、ダウンロードされて、すぐに問題があるわけではありません。
マルウェアが「実際に動作を開始する」のには、さらにいくつかの手順が必要です。

まず、ダウンロードされた zipファイルを展開してしまうと、コンピュータ内で「悪意のあるDLL」が生成されてしまいます。

DLL(ダイナミック・リンク・ライブラリ)」というのは、いろんなプログラムに共通する機能をまとめたデータファイルです。

もし、「悪意のあるDLL」がシステム内の特定の場所に保存され 正しいDLLに偽装すると、通常のプログラムは「悪意のあるDLL」を呼び出してしまうようになります。つまり、正しいプログラムが、マルウェアに置き換わってしまうのです。この方法を「DLLサイドローディング」といいます。

ただし、システム内の保護された領域は、データを保存しようとすると、必ず「管理者権限」を確認してきます。ですので、ここで許可しなければ「侵入」を防ぐことができます。

DLLサイドローディング

これだけ聞いたら、なんでこんな危険なものを自分で入れてしまうのか、不思議に思いますよね。

ただ、マルウェアは「なにか便利なアプリ」に偽装していることが多いので、ただの「インストール」と思って、許可してしまうケースがあるのです。

3. セキュリティソフトの更新

この手法自体は 2010年代半ばから知られた手法ですが、2019年以降 増えてきています。

現在の多くのウェブサービスは、JavaScriptで動作しているので、JavaScript自体を無効にするのは、なかなかハードルが高いです。

Microsoft Security Intelligenceによると、「Microsoft Defender for Office 365」なら、「HTMLスマグリング」でダウンロードされたマルウェアでも検出できるが、メールセキュリティ製品を使用していない場合は 気づかない可能性があると警告しています。

セキュリティソフトの更新

「だから、Microsoft Defender を購入してね!」という話なのね。

セキュリティソフトの更新

セキュリティソフトには、有効期間があって、そのたびごとに支払い必要です。

それは、「HTMLスマグリング」のような新しい手法にも対応できるように、日々 改良を重ねているからでもあるのです。

セキュリティソフトは「命綱」。

人間が間違えてダウンロードしてしまったときに、ブロックしてくれる。

クリエイティブ・コモンズ・ライセンス
この 作品 は クリエイティブ・コモンズ 表示 - 継承 4.0 国際 ライセンスの下に提供されています。
http://creativecommons.org/licenses/by-sa/4.0/
https://chiilabo.co.jp/licenses-image/
セキュリティソフトの更新
セキュリティソフトの更新
セキュリティソフトの更新
QRコードを読み込むと、関連記事を確認できます。

ウェブページのスクリプトがマルウェアを「組み立てる」危険とは?【HTMLスマグリング】
【スポンサーリンク】
タイトルとURLをコピーしました