web-dev-qa-db-ja.com

PowerShell Web Accessはどの程度安全ですか?

Windows Server 2012には、スマートフォンを含む最新のブラウザーでPowerShellコマンドラインを介してサーバーを管理できる新機能が搭載されています。

これはクールで恐ろしいと同時に聞こえます。

私はこのオプションを評価していますが、リスクは何ですか?

これは私の現在の設定です:

  • Server 2012 Coreで実行
  • スタンドアロンサーバー、ドメインは含まれません。
  • サイトはSSLで実行されている(PowerShell Web Accessで必要)
  • Windows認証によって保護されています(別のレベルのセキュリティを追加するため)。
  • そのURLはデフォルトではありませんが、深いURLを推測するのは困難です。
  • この機能を使用するように設定された1人のユーザーがいます。
  • maxSessionsAllowedPerUserが1に設定されています。つまり、単一のユーザーのパスワードが盗聴されたとしても、同じユーザーの2番目のセッションは許可されません。
  • ユーザーは作業を終えた後、パスワードを変更します。これは、サーバー上のスクリプトを介して行われます。パスワードの前半は一定の秘密で、後半はユーザーが入力します。このようにして、完全なパスワードが回線を超えることはありません。
  • 各複雑なパスワードは一度だけ使用されます。

サーバーで作業を行うには、ユーザーは管理者である必要があります。

PoweShell Web Accessは1.0製品であるため、バグがある可能性があります。

これらすべてを考慮して、公衆インターネットに公開されているサーバーの本番環境で使用することをお勧めしますか?

11
Peter Hahndorf

すべてのシナリオと同様に、それは保護対象によって異なります。一般的に言って、パブリックネットワーク上で管理エンドポイントをホストすることは賢明ではありません。つまり、インターネットでアクセスできないようにサイトを変更します。

次に、インターネット上のドメインに参加しているサーバーに問題がある人がいます。違反した場合、攻撃者はドメインにアクセスできます。 Powershell接続が開いている場合は、攻撃を開始するのに最適な場所を提供しています。ただし、サーバーが内部的にアクセスできるものを制限し、読み取り専用ドメインコントローラーのみがサーバーがADの方法で通信できる唯一の機能であり、すべてをロックダウンすることにより、特定のリスクを軽減するため、問題を抱えていない人もいます。ポートは443です。

3番目に、2番目と同じ理由で、インターネットでのWindows認証が嫌いな人もいます。

1人のユーザーしか許可しないPowershellの問題は、Powershellに限定されることです。攻撃者は、ログインする別の場所を見つける可能性があります。または、スクリプトが実行される前に、現在のユーザーの接続を切断することもできます。等。

それがv1製品であること自体がセキュリティリスクかどうかはわかりません。発売前に新製品が安全であることを確認するために、マイクロソフトはかなりの努力をしています。ただし、外部のセキュリティテスターに​​よるテストの全範囲を通過していないため、常にセキュリティの脆弱性が存在する可能性があります。

5
Steve

これは SSHサーバー のMicrosoftバージョンです(概念的には正確ではありません-正確なUnixの同等物は Shell In A Box です)。 Microsoftが実装を台無しにしないことを信頼している限り、恐ろしいことは何もありません(ただし、SSLに依存しているため、SSLの既存の実装は、スマート移動)。

ただし、Webブラウザーはセキュリティーに関して優れた実績がないため、Webブラウザーの使用については少し危険を伴う可能性があります。悪意のある可能性のあるコード(Javascript)を定期的に実行し、ページを互いに分離しようと懸命に努力しますが、クロスドメイン攻撃が発生しており、おそらく引き続き発生します。ユーザーに有効な地獄を動作させる新しい方法を考案する(たとえば、パスワードの変更を強制する)代わりに、このアクセスに特定のブラウザーを使用するようにする必要があります(たとえば、Chrome通常のブラウジングでは、PowerShellアクセス用にFirefoxを起動します-使用するonlyために使用します)。

4
Thomas Pornin