JIT VM アクセスを使用して仮想マシンを保護する
ブルート フォース ログイン攻撃は、通常、仮想マシン (VM) またはサーバーへのアクセス権を取得する手段として管理ポートを標的にします。 成功した場合、攻撃者はホストの制御を奪い、攻撃対象の環境への足掛かりを築くことができます。 ブルート フォース攻撃は、正しい値が見つかるまで、考えられるすべてのユーザー名またはパスワードをチェックする処理で構成されます。
高度に洗練された攻撃方法ではありませんが、THC-Hydra などのツールを使用すると、比較的簡単に攻撃を実行できます。 たとえば、Windows サーバーを攻撃するには、次のコマンド シーケンスを使用します。
user@debian$ hydra -l administrator -P wordlist.txt rdp://13.66.150.191 -t 1 -V -f
Hydra v9.0 (c) 2004 by van Hauser/THC - Please do not use in military or secret service organizations, or for illegal purposes.
Hydra (http://www.thc.org) starting at 2019-10-10 17:38:44
[DATA] max 7 tasks per 1 server, overall 64 tasks, 7 login tries (1:1/p:7), ~0 tries per task
[DATA] attacking service rdp on port 3389
[ATTEMPT] target 13.66.150.191 – login “administrator” – pass "123456"
[ATTEMPT] target 13.66.150.191 – login “administrator” – pass "654321"
[ATTEMPT] target 13.66.150.191 – login “administrator” – pass "password"
[ATTEMPT] target 13.66.150.191 – login “administrator” – pass "iloveyou"
[ATTEMPT] target 13.66.150.191 – login “administrator” – pass "rockyou"
...
[ATTEMPT] target 13.66.150.191 – login “administrator” – pass "P@ssword!123"
[3389][rdp] host 13.66.150.191 login: administrator password: P@ssword!123
[STATUS] attack finished for 13.66.150.191 (waiting for children to complete tests)
ブルート フォース攻撃の停止
ブルート フォース攻撃に対抗するには、次のような複数の手段を取ることができます。
パブリック IP アドレスを無効にして、次のいずれかの接続方法を使います。
- ポイント対サイト仮想プライベート ネットワーク (VPN)。
- サイト間 VPN を作成します。
- Azure ExpressRoute を使って、オンプレミス ネットワークから Azure へのセキュリティで保護されたリンクを作成する。
2 要素認証を必須にする
パスワードの長さと複雑さを高める
ログイン試行回数を制限する
CAPTCHA を実装する
ポートが開いている時間を制限する
この最後のアプローチは、お客様の代わりに Microsoft Defender for Cloud によって実装されるものです。 リモート デスクトップや SSH などの管理ポートは、VM に接続している間だけ開いている必要があります。 たとえば、管理タスクやメンテナンス タスクを実行する場合などです。 Microsoft Defender for Cloud のセキュリティ強化機能は、Just-in-time (JIT) 仮想マシン (VM) アクセスをサポートします。 JIT VM アクセスを有効にすると、Defender for Cloud はネットワーク セキュリティ グループ (NSG) 規則を使って、管理ポートへのアクセスを制します。 ポートが使われていないときはアクセスが制限されるため、攻撃者はそれらをターゲットにできません。
JIT VM アクセスを有効にするポリシーを作成する
VM に対して JIT VM アクセスを有効にすると、次を決定するポリシーを作成できます。
- 保護に役立つポート。
- ポートを開いたままにする必要がある時間の長さ。
- これらのポートにアクセスできる承認済みの IP アドレス。
ポリシーを使用すると、ユーザーがアクセスを要求したときに実行できる操作を継続的に制御できます。 要求は Azure のアクティビティ ログに記録されるので、アクセスを簡単に監視および監査できます。 また、このポリシーを使用すると、JIT VM アクセスが有効な既存の VM をすばやく特定できます。 また、JIT VM アクセスが推奨されている VM をすばやく特定できます。