トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS

・PowerShellの悪用 のバックアップ(No.2)


IPA一般公開用? 設定対策?

戦術

悪意あるプログラムの実行

対象OS

  • Windows

概説

"Windowsの設定管理を行うスクリプト言語であるPowerShellを悪用し、悪意あるプログラム(マルウェア)を実行します。この手法は、外部との通信(新たなプログラムのダウンロード)や端末情報や認証情報の窃取など、多種多様なコマンドの実行が考えられます。スクリプトは難読化されることが多く、侵入検知システムやアンチウイルスでの検知が困難な場合があり注意が必要です。

緩和の方針

管理上、PowerShellを使用しない場合は、PowerShellスクリプトを無効にする(Default)ことで、マルウェアの実行を防止できます。
管理上、PowerShellが必要な端末、サーバーでは、署名付きPowerShellスクリプトのみ実行許可とし、文書化して定期的に監査を実施し、マルウェアの検出をするなどが有効です。

運用やNetworkが変更された場合の影響の有無

PowerShellの利用を許可した端末で、メール添付のファイルの実行などで悪意あるプログラムの実行のリスクが高まります。

優先すべき措置

PowerShellスクリプトの実行可能端末・サーバーを限定し、その他はグループポリシーでスクリプト実行を禁止します。
管理上、PowerShellを必要とする端末のログの取得と監査。
WinRMサービスを無効化/制限して、リモート実行でPowerShellが使用されないようにします。

ユーザー運用管理責任

リスクの受容

PowerShellスクリプトの実行可能端末・サーバーは、ポリシーによってリスクが異なります。設定ポリシー及び端末・サーバーのネットワーク構成、運用も大きく影響を及ぼすため、慎重なリスクの見極めが必要です。

実行ポリシー署名付き署名なし ローカル署名なし 非ローカル概要
Restricted×××全てのスクリプトが実行禁止。PowerShellまたはWindows OSインストール直後のデフォルト設定(Windows Server 2012 R2を除く)
AllSigned××署名されているスクリプトのみが実行可能。署名されていないスクリプトは実行禁止
RemoteSigned×ローカルに保存されているスクリプトは実行可能。インターネットからダウンロードしたスクリプト(非ローカルのスクリプト)は、署名されているもののみが実行可能。Windows Server 2012 R2では、この設定がデフォルト
Unrestricted全てのスクリプトが実行可能。ただしインターネットからダウンロードしたスクリプトは、実行するかどうかが確認されるので、ユーザーが明示的に許可した場合のみ実行される
Bypass警告やユーザーへの確認なしに、全てのスクリプトが実行可能

atmarkIT WindowsでPowerShellスクリプトの実行セキュリティポリシーを変更する

啓発・教育

該当なし。

利用規定

管理上、PowerShellが必要な端末、サーバーの監査規程。

情報システム設計開発部門・運用部門(ベンダー代行を含む)

NWデザイン

該当なし。

アクセスコントロール

AppLockerのブラックリストで実行を制限する。
[ソフトウェアの制限のポリシー]で実行を制限する。
WinRMサービスを無効化/制限して、リモートでのPowerShell実行を禁止する。

フィルタリング

UTM(悪意あるスクリプトのブロック)

ロール運用

PowerShellスクリプトブロックのログの有効化。

仮想端末運用

該当なし。

エンドポイント対策

アンチウイルソフト。
Endpoint Detection and Response。

受託開発ベンダー管理責任

セキュアコーディング

作成したPowerShellスクリプトへのタイムスタンプ付き署名の実施。
実行運用環境に限定した実行ポリシーの適用(対象端末・サーバーはAllSigned、対象外はRestricted)。

開発環境管理

ユーザー運用管理責任、情報システム設計開発部門・運用部門責任に準じる。 例外はすべて文書化し、適切な監査を実施する。

サプライチェーン正常性維持"

ユーザー運用管理責任、情報システム設計開発部門・運用部門責任に準じる。 例外はすべて文書化し、適切な監査を実施する。