情報システム開発契約のセキュリティ仕様作成のためのガイドライン
・PowerShellの悪用
をテンプレートにして作成
開始行:
[[情報システム開発契約のセキュリティ仕様作成のためのガイ...
[[MITRE ATT&CKに基づく詳細設定対策]]
*戦術:悪意あるプログラムの実行[#f2437572]
-MITRE ATT&CK
--[[T1059.001 Command and Scripting Interpreter: PowerShe...
*概説 [#raff5281]
Windowsの設定管理を行うスクリプト言語であるPowerShel...
スクリプトは難読化されることが多く、侵入検知システムやア...
DefaultではPowerShellの実行は無効に制限されています...
古いバージョンである PowerShell2.0 は、ログ機能など...
*緩和の方針 [#cc0ff728]
さまざまな緩和策に対して、それをバイパスする方法が研究さ...
-管理端末以外はPowerShellスクリプトを無効(Default)にしま...
-PowerShell が許可された端末、サーバーでは、PowerShellス...
*運用やNetworkが変更された場合の影響の有無 [#ea5988f3]
-PowerShellの実行が有効とした端末では、メール添付の...
*優先すべき措置 [#e3c52f83]
-ダウングレード攻撃を阻止するため、役割と機能の削除ウィザ...
-PowerShell スクリプトの実行可能端末・サーバーを限定し、...
-管理上、PowerShell を必要とするサーバー、端末のログの取...
-AppLocker もしくは、Windows Defender アプリケーション制...
--powershell.exe、powershell_ise.exe、pwsh.exe (32bit, 64...
--System.Management.Automation.dll (32bit, 64bit)
--System.Management.Automation.ni.dll (32bit, 64bit)
--[[WinRMサービスを無効化/制限>・PowerShellの悪用#h913566...
-グループポリシーでもPowerShellの禁止設定が可能です。(202...
--[ユーザーの構成]>[ポリシー]>[管理用テンプレート]>[シス...
--[実行しないアプリケーションの一覧]>[powershell.exe、pow...
*ユーザー運用管理責任 [#f6993622]
**リスクの受容 [#v060ce86]
PowerShellスクリプトの実行可能端末・サーバーは、設定...
-ドメインコントローラー、DHCPサーバー、開発用端末、管理用...
これらはシステム設定管理上、PowerShell は必須といえ...
-アプリケーションサーバー、ファイルサーバー、業務端末~
これらは PowerShell は必須といえないので、AppLocker...
~
|150|70|70|70||c
|COLOR(WHITE):BGCOLOR(#44546A):CENTER:実行ポリシー|COLOR(...
|Restricted|×|×|×|全てのスクリプトが実行禁止。PowerS...
|AllSigned|○|×|×|署名されているスクリプトのみが実行...
|RemoteSigned|○|○|×|ローカルに保存されているスクリプ...
|Unrestricted|○|○|△|全てのスクリプトが実行可能。ただしイ...
|Bypass|○|○|○|警告やユーザーへの確認なしに、全てのスクリ...
~
-atmarkIT WindowsでPowerShellスクリプトの実行セキュ...
https://www.atmarkit.co.jp/ait/articles/0805/16/news139.h...
|180|||c
|COLOR(WHITE):BGCOLOR(#44546A):CENTER:業務|COLOR(WHITE):B...
|プログラム開発担当者|Local Administrator|PowerShell スク...
|Help Desk 担当者|Domain/Local Administrator|AllSigned適...
|システム管理者|Enterprise/Domain/Local Administrator|~|
|部門管理者(OUの委任)|OUのパスワードリセット、グループ...
|役職者、研究者、秘書|標準ユーザー|Restricted適用、Local ...
|上記以外の一般業務担当者|標準ユーザー|Restricted適用、Lo...
**啓発・教育 [#qa4fa30f]
-対象:ローカル Administrator メンバー、開発者
--PowerShell を利用した攻撃方法の理解を求め、Po...
**管理規程 [#r7cb1504]
以下の規程の整備を検討してください。
-業務上、PowerShellが必要な端末、サーバーの文書化及...
*情報システム設計開発部門・運用部門(ベンダー代行を含む) ...
**ポリシー [#ha094e85]
以下のポリシーの適用を検討します。
-[[・レベル1セキュリティ構成(Windows 10)]]及び[[・Windo...
-PowerShell 2.0 の無効化。PowerShell 2.0 を無効化すること...
--[コントロールパネル]>[プログラム]>[プログラムと機能]>[W...
- グループポリシーで PowerShellのログを有効にする。~
--[コンピュータの構成]>[ポリシー]>[管理用テンプレート]>[W...
--[モジュール名] の入力画面で、[値] に [Microsoft.PowerSh...
&ref(https://www.softwareisac.jp/ipa/image/data/powershel...
**モニタリング [#l68de27a]
ポリシーを設定した上で、PowerShell スクリプト実行のログを...
-[イベントビューアー]-[アプリケーションとサービス ログ]-[...
-最大ログサイズを10048KB以上にし、[イベントを上書きしない...
-定期的に [イベントビューアー]-[アプリケーションとサービ...
攻撃者はレジストリを書き換え、PowerShell のログを無効にす...
-[[・Windows Group Policyの再読み込み]]を設定していない場...
~
|COLOR(WHITE):BGCOLOR(#44546A):CENTER:項目|COLOR(WHITE):B...
|レジストリハイブ|HKEY_LOCAL_MACHINE|
|キー|\SOFTWARE\Policies\Microsoft\Windows\PowerShell\Scr...
|名前|EnableScriptBlockLogging|
|種類|REG_DWORD|
|データ|0x00000001(1) (有効)|
**ネットワークデザイン、アクセスコントロール、フィルタリ...
以下を参考にWindows Defender アプリケーション制御 もしく...
-WDAC または AppLocker のどちらを使用するかを選ぶ:~
https://docs.microsoft.com/ja-jp/windows/security/threat-...
Microsoft が推奨するブロックの規則:~
https://docs.microsoft.com/ja-jp/windows/security/threat-...
ただし、PowerShell without PowerShell などの Bypass 方法...
https://www.ired.team/offensive-security/code-execution/p...
-PowerShell Constrained Language Mode (制約付き言語モー...
-WinRMサービスを無効化する。(WinRMサービスを無効化/制限...
**仮想端末運用 [#k53a311c]
これは将来のためのプレースフォルダーです。
**ゲートウェイ及びエンドポイント対策 [#y7f8d442]
Endpoint Detection and Response もしくは、侵入検知システ...
*受託開発ベンダー管理責任 [#oac483c2]
**セキュアコーディング [#se219e91]
-作成したPowerShellスクリプトへのタイムスタンプ付き...
-実行運用環境に限定した実行ポリシーの適用(対象端末・サー...
**開発環境管理 [#ka04cf99]
ユーザー運用管理責任、情報システム設計開発部門・運用部門...
**サプライチェーン正常性維持" [#o5f84efe]
ユーザー運用管理責任、情報システム設計開発部門・運用部門...
*WinRMサービスを無効化/制限 [#h9135668]
**グループ ポリシーを使用してリモート管理を無効にする [#g...
ローカルグループポリシーエディターを開くには、次のいずれ...
+Windows Server 2016、Windows Server 2012 R2、または Wind...
+ポリシーオブジェクトを選択し、右クリックして編集をクリッ...
+グループポリシー管理エディターで、[コンピューターの構成]...
+コンテンツ ウィンドウで [WinRM によるリモート サーバー管...
+[WinRM によるリモート サーバー管理を許可する] ポリシー設...
**WinRM が使用するポートをパーソナルFirewallで閉じる [#db...
PowerShell を管理者モードで起動し、以下のコマンドを実行し...
Set-NetFirewallRule -name WINRM-HTTP-In-TCP -Enabled False
Set-NetFirewallRule -Name WINRM-HTTP-In-TCP-PUBLIC -Enab...
**WinRM機能を無効化する [#ha878ff8]
PowerShell を管理者モードで起動し、以下のコマンドを実行し...
Disable-PSRemoting -Force
終了行:
[[情報システム開発契約のセキュリティ仕様作成のためのガイ...
[[MITRE ATT&CKに基づく詳細設定対策]]
*戦術:悪意あるプログラムの実行[#f2437572]
-MITRE ATT&CK
--[[T1059.001 Command and Scripting Interpreter: PowerShe...
*概説 [#raff5281]
Windowsの設定管理を行うスクリプト言語であるPowerShel...
スクリプトは難読化されることが多く、侵入検知システムやア...
DefaultではPowerShellの実行は無効に制限されています...
古いバージョンである PowerShell2.0 は、ログ機能など...
*緩和の方針 [#cc0ff728]
さまざまな緩和策に対して、それをバイパスする方法が研究さ...
-管理端末以外はPowerShellスクリプトを無効(Default)にしま...
-PowerShell が許可された端末、サーバーでは、PowerShellス...
*運用やNetworkが変更された場合の影響の有無 [#ea5988f3]
-PowerShellの実行が有効とした端末では、メール添付の...
*優先すべき措置 [#e3c52f83]
-ダウングレード攻撃を阻止するため、役割と機能の削除ウィザ...
-PowerShell スクリプトの実行可能端末・サーバーを限定し、...
-管理上、PowerShell を必要とするサーバー、端末のログの取...
-AppLocker もしくは、Windows Defender アプリケーション制...
--powershell.exe、powershell_ise.exe、pwsh.exe (32bit, 64...
--System.Management.Automation.dll (32bit, 64bit)
--System.Management.Automation.ni.dll (32bit, 64bit)
--[[WinRMサービスを無効化/制限>・PowerShellの悪用#h913566...
-グループポリシーでもPowerShellの禁止設定が可能です。(202...
--[ユーザーの構成]>[ポリシー]>[管理用テンプレート]>[シス...
--[実行しないアプリケーションの一覧]>[powershell.exe、pow...
*ユーザー運用管理責任 [#f6993622]
**リスクの受容 [#v060ce86]
PowerShellスクリプトの実行可能端末・サーバーは、設定...
-ドメインコントローラー、DHCPサーバー、開発用端末、管理用...
これらはシステム設定管理上、PowerShell は必須といえ...
-アプリケーションサーバー、ファイルサーバー、業務端末~
これらは PowerShell は必須といえないので、AppLocker...
~
|150|70|70|70||c
|COLOR(WHITE):BGCOLOR(#44546A):CENTER:実行ポリシー|COLOR(...
|Restricted|×|×|×|全てのスクリプトが実行禁止。PowerS...
|AllSigned|○|×|×|署名されているスクリプトのみが実行...
|RemoteSigned|○|○|×|ローカルに保存されているスクリプ...
|Unrestricted|○|○|△|全てのスクリプトが実行可能。ただしイ...
|Bypass|○|○|○|警告やユーザーへの確認なしに、全てのスクリ...
~
-atmarkIT WindowsでPowerShellスクリプトの実行セキュ...
https://www.atmarkit.co.jp/ait/articles/0805/16/news139.h...
|180|||c
|COLOR(WHITE):BGCOLOR(#44546A):CENTER:業務|COLOR(WHITE):B...
|プログラム開発担当者|Local Administrator|PowerShell スク...
|Help Desk 担当者|Domain/Local Administrator|AllSigned適...
|システム管理者|Enterprise/Domain/Local Administrator|~|
|部門管理者(OUの委任)|OUのパスワードリセット、グループ...
|役職者、研究者、秘書|標準ユーザー|Restricted適用、Local ...
|上記以外の一般業務担当者|標準ユーザー|Restricted適用、Lo...
**啓発・教育 [#qa4fa30f]
-対象:ローカル Administrator メンバー、開発者
--PowerShell を利用した攻撃方法の理解を求め、Po...
**管理規程 [#r7cb1504]
以下の規程の整備を検討してください。
-業務上、PowerShellが必要な端末、サーバーの文書化及...
*情報システム設計開発部門・運用部門(ベンダー代行を含む) ...
**ポリシー [#ha094e85]
以下のポリシーの適用を検討します。
-[[・レベル1セキュリティ構成(Windows 10)]]及び[[・Windo...
-PowerShell 2.0 の無効化。PowerShell 2.0 を無効化すること...
--[コントロールパネル]>[プログラム]>[プログラムと機能]>[W...
- グループポリシーで PowerShellのログを有効にする。~
--[コンピュータの構成]>[ポリシー]>[管理用テンプレート]>[W...
--[モジュール名] の入力画面で、[値] に [Microsoft.PowerSh...
&ref(https://www.softwareisac.jp/ipa/image/data/powershel...
**モニタリング [#l68de27a]
ポリシーを設定した上で、PowerShell スクリプト実行のログを...
-[イベントビューアー]-[アプリケーションとサービス ログ]-[...
-最大ログサイズを10048KB以上にし、[イベントを上書きしない...
-定期的に [イベントビューアー]-[アプリケーションとサービ...
攻撃者はレジストリを書き換え、PowerShell のログを無効にす...
-[[・Windows Group Policyの再読み込み]]を設定していない場...
~
|COLOR(WHITE):BGCOLOR(#44546A):CENTER:項目|COLOR(WHITE):B...
|レジストリハイブ|HKEY_LOCAL_MACHINE|
|キー|\SOFTWARE\Policies\Microsoft\Windows\PowerShell\Scr...
|名前|EnableScriptBlockLogging|
|種類|REG_DWORD|
|データ|0x00000001(1) (有効)|
**ネットワークデザイン、アクセスコントロール、フィルタリ...
以下を参考にWindows Defender アプリケーション制御 もしく...
-WDAC または AppLocker のどちらを使用するかを選ぶ:~
https://docs.microsoft.com/ja-jp/windows/security/threat-...
Microsoft が推奨するブロックの規則:~
https://docs.microsoft.com/ja-jp/windows/security/threat-...
ただし、PowerShell without PowerShell などの Bypass 方法...
https://www.ired.team/offensive-security/code-execution/p...
-PowerShell Constrained Language Mode (制約付き言語モー...
-WinRMサービスを無効化する。(WinRMサービスを無効化/制限...
**仮想端末運用 [#k53a311c]
これは将来のためのプレースフォルダーです。
**ゲートウェイ及びエンドポイント対策 [#y7f8d442]
Endpoint Detection and Response もしくは、侵入検知システ...
*受託開発ベンダー管理責任 [#oac483c2]
**セキュアコーディング [#se219e91]
-作成したPowerShellスクリプトへのタイムスタンプ付き...
-実行運用環境に限定した実行ポリシーの適用(対象端末・サー...
**開発環境管理 [#ka04cf99]
ユーザー運用管理責任、情報システム設計開発部門・運用部門...
**サプライチェーン正常性維持" [#o5f84efe]
ユーザー運用管理責任、情報システム設計開発部門・運用部門...
*WinRMサービスを無効化/制限 [#h9135668]
**グループ ポリシーを使用してリモート管理を無効にする [#g...
ローカルグループポリシーエディターを開くには、次のいずれ...
+Windows Server 2016、Windows Server 2012 R2、または Wind...
+ポリシーオブジェクトを選択し、右クリックして編集をクリッ...
+グループポリシー管理エディターで、[コンピューターの構成]...
+コンテンツ ウィンドウで [WinRM によるリモート サーバー管...
+[WinRM によるリモート サーバー管理を許可する] ポリシー設...
**WinRM が使用するポートをパーソナルFirewallで閉じる [#db...
PowerShell を管理者モードで起動し、以下のコマンドを実行し...
Set-NetFirewallRule -name WINRM-HTTP-In-TCP -Enabled False
Set-NetFirewallRule -Name WINRM-HTTP-In-TCP-PUBLIC -Enab...
**WinRM機能を無効化する [#ha878ff8]
PowerShell を管理者モードで起動し、以下のコマンドを実行し...
Disable-PSRemoting -Force
ページ名: