PowerShell悪用ウイルス感染の無料対策 迷惑メールからファイルレスマルウェア攻撃
[最終更新日 2018年8月9日]
Windows 7、Windows 8、Windows 10 に標準で使えるよう最初から実装されてるスクリプト実行環境 Windows PowerShell をうまく悪用して、ターゲットの PC に効率よくマルウェアを送り込むウイルス感染攻撃が広く確認されてます。
https://docs.microsoft.com/ja-jp/powershell/
PowerShell パワーシェル とは?
PowerShell は Windows や Windows Server 向けの自動化環境とスクリプト言語で、システムの管理を簡素化できます。他のテキストベースの Shell(シェル) とは異なり、PowerShell は .NET Framework の機能を活用することで、豊富なオブジェクトと Windows 環境を制御する多くの組み込み機能を提供します。
PowerShell 悪用のウイルスメール実例
PowerShell が悪用される場面なんてある???
家庭や企業など世界中の Windows ユーザーを無差別に狙って ファイルを暗号化して身代金を要求するランサムウェア を感染させる場面だったり、日本国内の Windows ユーザーを集中的に狙って ネットバンキング不正送金、クレジットカード不正利用で暗躍する Ursnif/Dreambot ウイルス や Bebloh/Shiotob ウイルスを感染させるキャペーンでも PowerShell の悪用が普通に行われてます。
- [2016年10月] 日本国民税金庁!? 迷惑メール.jsファイル開くとウイルス感染被害 対策は?
http://fireflyframer.blog.jp/19064268.html - [2017年6月〜] 請求書発注書xlsファイルはウイルス 迷惑メール対策2つで100%感染せず
http://fireflyframer.blog.jp/19064387.html - [2017年12月〜] 楽天カード利用お知らせEdyチャージ迷惑メールでウイルス感染 対策は?
http://fireflyframer.blog.jp/19064477.html - [2018年3月〜] 楽天市場注文内容ご確認自動配信メールはウイルス 対策2つで感染防ぐ
http://fireflyframer.blog.jp/19064445.html - [2018年6月〜] 楽天カードご請求金額のご案内迷惑メールはウイルス 対策2つで感染防ぐ
http://fireflyframer.blog.jp/19064533.html
Windows パソコンを使ってインターネットに接続してる以上、PowerShell を悪用するウイルス感染攻撃が身に降りかかってくると思った方がいいです。
決して、特定の組織のみ限定的に狙われる標的型サイバー攻撃(APT)だけのお話ではありません。
■ ウイルスメールのファイル形式
PowerShell が悪用される攻撃の起点の1つが、一般ユーザーも受信する英語や日本語で書かれた 迷惑メール(スパムメール) です。
その手口はメールの添付ファイル、あるいはメール本文中のリンクからダウンロードした不正なファイルを Windows ユーザーの意思でポチポチッとダブルクリックして開いてもらう古典的な手法です。
実在する楽天カードや楽天市場に成りすました巧妙なウイルスメールもその代表例です。
楽天カード詐欺メールも PowerShell を悪用するウイルス攻撃
具体的に、次のファイル形式をユーザーに掴ませます。 (赤は特に人気の形式)
PowerShell 悪用ファイル | |
---|---|
スクリプトファイル 拡張子 .js .jse .vbs .wsf |
Officeファイル - マクロ 拡張子 .doc .docm .xls .xlsm |
ショートカット 拡張子 なし ( .lnk ) |
Office Excel Webクエリ ファイル 拡張子 .iqy |
HTMLアプリケーション 拡張子 .hta |
Office Wordファイル - DDE 拡張子 .doc .docx |
Office Excel SLK ファイル 拡張子 .slk |
DOSファイル 拡張子 .cmd |
これらファイルは セキュリティソフト のウイルス定義データで脅威と判定されるまでスリ抜けることもザラにある形式 です。
結局、自力で ”怪しい” と見抜く知識のない Windows ユーザーさんが複数出現し、誰からも阻止されることなく不正なファイルをポチポチッと踏み抜く光景が日本を含む世界各地で発生することになります。
■ ウイルス感染被害者が発生中!
残念ながら、この PowerShell が使われるファイルレス攻撃によりネットバンキングウイルスに殺られてしまう陥落者が日本国内で複数出現してる深刻な報告が挙がってます。
PowerShell の処理を含むスクリプトファイル実物
インターネットバンキングに係る コンピュータウイルスDreamBotに関する注意喚起
警察庁では、インターネットバンキングに係るコンピュータウイルスDreamBotに感染したことにより不正に窃取されたインターネットバンキングのユーザID・パスワード等が急増(平成29年7月〜9月は月20件程度であったが、10月以降は月70件程度となっている。)していることを確認しています。
http://www.npa.go.jp/cyber/policy/20171211.html
実例で学ぶネットの危険:「ディズニーランドの入場券をご獲得になりました!」 - トレンドマイクロ
「URSNIF」が感染することにより、被害者は各種金融機関やクレジットカード、仮想通貨取引所などのサイトの認証情報を詐取される可能性があります。トレンドマイクロ SPN の統計では、今回のメールから拡散された不正プログラムについて、国内で 300 台以上の検出を確認しています。今回のメールに関しては不自然な日本語など「不審」と気づける点も多かったものと言えますが、それでも実際に URL をクリックし、ファイルをダウンロードまたは開いてしまった受信者もいたことがうかがえます。
http://blog.trendmicro.co.jp/archives/16602
PowerShell 悪用に気づけない!? ファイルレス攻撃
そもそも PowerShell のコマンドが記述されたスクリプトファイル(拡張子 .ps1
) をユーザーがポチポチッと開く場面はなく、攻撃の引き金を引いた Windows ユーザーさんに対して PowerShell のウィンドウ画面が表示されることもありません。
黒い画面コマンドプロンプトの次世代版 Windows PowerShell
つまり、多くの場合に PowerShell が悪用されてる事実にユーザーはまったく気付けません。
これを 「ファイルレスマルウェア」「ファイルレス攻撃」 といった用語で紹介して危険性を指摘するセキュリティ記事を目にするけど、Windows PowerShell はマイクロソフトの正規プログラムなのでセキュリティ製品は必ずしもブロックしてくれません。
ファイルレス とは?
英語で fileless。名詞に付ける接尾辞 「-less」(…の無い、…を持たない、…を欠く) からなる表現。
■ PowerShell 悪用時のプロセス例
ウイルスメールとそのウイルス感染手口を紹介するブログ記事 では、フリーソフトの Process Explorer を使って視覚化したイメージ画像を掲載することで PowerShell が悪用されてる事実を紹介してます。
ファイルレスマルウェアの処理を発動させる スクリプトファイル(拡張子 .js) を開いた直後の Windows のプロセスの様子がコチラ♪
ファイルレス攻撃でメモリ上に展開された PowerShell スクリプト
.js ファイルをポチポチッとダブルクリックして開く
↓
powershell.exe が起動して攻撃処理が発動する
ファイルレスマルウェアの処理を発動させる Excel ファイル(拡張子 .xls) や Excel Webクエリ ファイル(拡張子 .iqy) を開いた直後の Windows のプロセスがコチラ♪
.xls ファイルをポチポチッとダブルクリックして開く
↓
マクロの動作を許可する [コンテンツの有効化] ボタンをポチッと押す
↓
powershell.exe が起動して攻撃処理が発動する
.iqy ファイルをポチポチッとダブルクリックして開く
↓
外部データへのアクセスを許可する [はい] ボタンをポチッと押す
↓
powershell.exe が起動して攻撃処理が発動する
PowerShell の実行ファイル powershell.exe
がシレッと動き出すと、ネットバンキングウイルスをダウンロードする PowerShell スクリプトがメモリ上に展開されます。
PowerShell悪用ウイルスにファイアウォールで対策
対岸の火事ではない PowerShell の悪用に Windows ユーザーさんはあらかじめ手を打っておくことが大事です。
それこそ 『怪しいファイルを開かない』 的な精神論だと、PowerShell を使ったウイルス感染被害を防ぐ根本的な対策になりません。
ここではファイルレスマルウェアのファイルレス攻撃に対抗するため セキュリティソフトに実装されてるファイアウォール や Windows ファイアウォール の出番です。 (*´q`)<PowerShell のためだけに追加の投資は不要
セキュリティが強化された Windows ファイアウォール で powershell.exe をブロック
PowerShell は 外部ネットワークからウイルス本体、あるいは攻撃に必要なデータをダウンロードする役目(ダウンローダー) を担うことが多く、ファイアウォールの送信側(アウトバウンド)で powershell.exe
の通信をあらかじめブロックしておくことをオススメします。 (^o^)<手っ取り早くできて効果も強力なウイルス対策♪
- スクリプトファイルのウイルス感染を防ぐ無料対策 … 拡張子 .js .jse .vbs .wsf
- マクロウイルスの感染を防ぐ無料対策 … 拡張子 .doc .docm .xls .xlsm
- ランサムウェア対策に効果的なファイアウォールの設定 ← PowerShell 悪用にファイアウォールを使う対策の解説
なお、Windows Update は一般的なセキュリティ対策としては重要事項だけど、こと PowerShell を悪用するファイルレスマルウェアの前では感染被害を回避する効果がいっさいありません。
■ ウイルス対策確認スクリプト
Windows の コマンドプロンプト を起動して、次のパラメータをコピペしエンターキーを押します。
処理内容は、例示で使われる安全なサンプルドメイン example.com に接続してHTMLファイルをダウンロードし、その内容を Windows のデスクトップにテキストファイル 「powershell-download-test.txt」 という名前で保存します。 (^w^)b<危険な処理なし
cmd /c powershell(new-object System.Net.Webclient).DownloadFile('http://example.com/','%USERPROFILE%\Desktop\powershell-download-test.txt')
ファイアウォールで powershell.exe
の通信をブロックしておらず攻撃に悪用されうる状態だとテキストファイルがシレッと作成される一方、正常にブロックできてるなら 『リモート サーバーに接続できません』 というエラーになります。