Excelに追加されたJavaScriptカスタム関数機能を悪用してさっそく仮想通貨マイニングスクリプトが埋め込まれる
Microsoftは2018年5月7日に、ExcelにJavaScriptカスタム関数を加えることを発表しましたが、この機能を悪用して仮想通貨マイニングスクリプトを仕込む概念実証デモがセキュリティ専門家によって行われています。
JavaScript Coinhive in Excel – Charles Dardaman
https://charles.dardaman.com/js_coinhive_in_excel
Microsoft Adds Support for JavaScript in Excel—What Could Possibly Go Wrong?
https://thehackernews.com/2018/05/javascript-function-excel.html
開発者がExcelの組み込み式関数セットを拡張できるように、InsiderプログラムのExcel(build 9325)でJavaScriptカスタム関数がサポートされました。
セキュリティ研究者のチャールズ・ダーダマン氏が、さっそくこの機能を悪用してExcelスプレッドシート内に仮想通貨マイニングによって収益化するツール「CoinHive」のマイニングスクリプトを埋め込んでみると、あっけなく成功したそうです。
GOT IT! #coinhive #Excel #Microsoft #Malware pic.twitter.com/QvHkgnGFkQ
— Chase Dardaman (@CharlesDardaman) 2018年5月8日
手順は「Office Insiderプログラムに参加して、build 9325(Macの場合は13.329)のExcelをインストールする」→「レポートのREADME.mdの指示通りにExcelアドインを起動して、コードを変更、デバッグする」→「任意のセルに『=CONTOSO.ADD42(1,2)』と入力し、エンターキーを押してカスタム関数を起動する」という3ステップだとのこと。「Microsoftのドキュメント通りに機能を追加しただけ」で簡単にマイニングスクリプトの埋め込みに成功したとダーダマン氏は報告しています。
なお、JavaScriptカスタム関数を実行するAPI自体は、スプレッドシートを開いた直後には起動されず、Excelアドイン機能を使ってJavaScript関数を手動でロードして実行する必要があるとのこと。また、外部サーバーに接続するExcelスプレッドシートでJavaScript関数を実行しようとすると、接続の許可が要求されるので不正なコードの実行を予防できるそうです。
このため、ユーザー側の操作なしでJavaScriptカスタム関数を悪用した仮想通貨マイニングスクリプトを実行する方法が編み出されるまでは、「知らないうちにマイニングさせられていた」という事態にはならないとのことなので、今のところは過敏になる必要はなさそうです。
・関連記事
Excelの最深部に手動でたどり着いた猛者が登場、キーを押し続けること9時間半で約100万行に到達 - GIGAZINE
4000以上の政府系サイトで閲覧者に対して仮想通貨マイニングを行わせるスクリプトが埋め込まれていたことが判明 - GIGAZINE
銀行口座情報を盗むマルウェア「Tinba」をマクロ実行なしで感染させる新手のPowerPoint添付ファイル攻撃が発見される - GIGAZINE
ウェブサイト訪問者のPCリソースを秘密裏に借り受けてブラウザを閉じても仮想通貨をマイニングし続ける手法が見つかる - GIGAZINE
画像に人間の目には見えないコードを埋め込んで広告が表示されるだけで悪質マルウェアを感染させる「ステガノグラフィー」が発見される - GIGAZINE
GmailでのJavaScriptファイルの添付が不可に、2月13日からスタート - GIGAZINE
・関連コンテンツ