組織が閉じたネットワークを持っているとしましょう-自分のコンピューターだけがそれにアクセスできます。これらの各コンピューターにはWindows 10 Enterpriseが搭載されています。明らかな理由により、ユーザーには管理者権限が与えられていません。組織内の誰もが、これらのデバイスの1つに簡単に物理的にアクセスできます。組織が十分に大きいので(大学や大企業など)、ユーザーを信頼してはいけません。
ブロッキングの利点は何ですかcmd.exe
?つまり、昇格されていないコマンドプロンプトからユーザーができることは何ですか(フィルターのバイパス、他のデバイスへの感染、未承認のソフトウェアのインストールなど)。
特に潜在的なハッカーが物理的にアクセスできる場合、ネットワークは完全に安全ではありませんが、コマンドプロンプトがどの程度の違いをもたらすかを知りたいです。
PowerShellとGit Bashのようなサードパーティのプログラムはセキュリティに関してはほぼ同じだと思いますが、大きな違いがある場合、それらは知っておくと役に立ちます。
cmd
で実行できないのは、cmd
を実行することを除いて、他のプログラムではanyで実行できないことです。これは実際には、他のシェルにフォールバックせずにcmd
を呼び出そうとするマルウェアを破壊しますが、system
などの関数を使用するか、cmd
プロセス。一般的に、cmd
は攻撃ペイロードのターゲットとしてはあまり適していません。そのスクリプト言語は弱く、コーディングの手間がかかります。基本的には、はるかに優れたpowershell
を期待できます。すべてのWindowsがインストールされますが、それでもデフォルトのシェルであるため、デフォルトで使用するものもあります。攻撃者がすでに任意のコードを実行する能力othercmd
以外の場合、cmd
自体を実行する存在または不在の機能はほとんど関係ありません。
ほとんどのソフトウェアがブロックされている場合(管理者を必要としないものであっても)、つまり、ソフトウェアがブラックリストに登録されているのではなくホワイトリストに登録されている場合、cmd
が影響する可能性があります。これは、シンボリックリンク、ハードリンク、ジャンクション(mklink
ビルトインを介して)を作成するなど、ある程度トリッキーなものを容易にし、powershell
、WSH(cscript
またはwscript
)などがブロックされ、ダウンロード、コンパイル、またはリモートの実行可能ファイルが実行されています。システムが十分にロックダウンされている場合、そのようなことをしようとした攻撃は失敗する可能性があります。ただし、cmd
が実行できることのほとんどは多少冗長です(実際にはそれほど実行できません)。他の一部のソフトウェア(Explorer
、Windowsグラフィカルシェルなど)は引き続き使用できるため、ほとんどの基本的なシェル操作(ファイルシステムの移動、ファイルのコピー/移動/削除、プログラムの起動、ファイルメタデータの設定、アクセス)環境変数など)はおそらくcmd
がなくても利用できます。同様に、ファイルの編集などはおそらくnotepad
または他のエディターを介して利用できます。コマンドラインプログラム(コマンドラインレジストリユーティリティreg
など)を実行する場合、cmd
は必要ありません。 Explorer
内から(任意の引数を使用して)呼び出すことができます。