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

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


情報システム開発契約のセキュリティ仕様作成のためのガイドライン(案)?

PowerShellの悪用

戦術

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

対象OS

  • Windows

必要なアクセス許可

  • User
  • Administrator
  • SYSTEM

概説

Windowsの設定管理を行うスクリプト言語を悪用し、悪意あるプログラム(マルウェア)を実行します。これには、外部との通信(新たなプログラムのダウンロード)や端末情報や認証情報の窃取など、多種多様なコマンドの実行が考えられます。スクリプトは難読化されることが多く、アプライアンスやアンチウイルスでの検知が困難な場合があり、注意が必要です。
管理上、PowerShellを使用しない場合は、PowerShellスクリプトを無効にする(Default)ことで、マルウェアの実行を防止できます。
PowerShellが必要な端末は、署名付きスクリプトの実行とし、文書化して定期的に監査を実施し、マルウェアの検出をするなどが有効です。

攻撃評価

戦術分類119 ValuePen Value
初期侵入33

119 Value:Min:1 Max:3 数値が高いほど攻撃実績が多い
Pen Value:Min:1 Max:3 数値が高いほどペネトレーションテストで攻撃が成功しやすい

MITRE 緩和策

コード署名

PowerShell実行ポリシーを設定して、署名されたスクリプトのみを実行します。

機能やプログラムの無効化または削除

不要な場合はシステムからPowerShellを削除することもできますが、多くの正当な目的や管理機能に使用される可能性があるため、環境への影響を評価するためにレビューを実行する必要があります。WinRMサービスを無効化/制限して、リモート実行でPowerShellが使用されないようにします。

特権アカウント管理

PowerShellが必要な場合、PowerShell実行ポリシーを管理者に制限します。環境の構成に応じて、PowerShell実行ポリシーをバイパスする方法があることに注意してください。

Windows 10 STIG

V-68819 PowerShellスクリプトブロックのログは、Windows 10で有効にする必要があります。
V-70637 システムでWindows PowerShell 2.0機能を無効にする必要があります。
V-63345 オペレーティングシステムは、許可されたソフトウェアプログラムの実行を許可するために、すべて拒否、例外による許可ポリシーを採用する必要があります。
V-68817 コマンドラインデータをプロセス作成イベントに含める必要があります。

Windows 2016 STIG

V-73591 PowerShellスクリプトブロックのログを有効にする必要があります。
V-73301 Windows PowerShell 2.0をインストールしないでください。
V-73235 Windows Server 2016は、承認されたソフトウェアプログラムの実行を許可するために、すべて拒否、例外による許可ポリシーを採用する必要があります。
V-73511 コマンドラインデータを、プロセス作成イベントに含める必要があります。

Others

Windows監査(イベントログ)設定