JPCERTコーディネーションセンター(JPCERT/CC: Japan Computer Emergency Response Team Coordination Center)は12月26日、「JVNTA#95077890: SSH接続の安全性を低下させる攻撃手法Terrapin Attackについて」において、SSH接続のハンドシェイク中にシーケンス番号の操作を可能とする攻撃手法「Terrapin Attack」について注意喚起した。この攻撃手法について、本誌では既に「SSHのセキュリティを弱体化させる新しい攻撃手法「Terrapin」に注意 | TECH+(テックプラス)」において詳細を報じている。
サイバー攻撃「Terrapin」の概要
Terrapin Attackは、SSHプロトコルを標的としたプレフィックス切り捨て攻撃とされる。接続初期に行われるハンドシェイク中にシーケンス番号を慎重に調整することで、クライアントおよびサーバに気づかれることなく送信された任意の量のメッセージを削除することができる。
この結果、安全性の低いクライアント認証アルゴリズムを使用させたり、キーストロークの不明瞭化を無効にしたりと、セキュリティを低下させることが可能になる。この攻撃を実行するには通信を中継する必要があるため、中間者攻撃(MITM: Man-in-the-middle attack)に分類される。
サイバー攻撃「Terrapin」への対策
JPCERTコーディネーションセンターはこの攻撃を回避するために、次のような対策を推奨している。
- アップデート: 使用するSSH実装のアップデート情報を確認し、パッチやアップデートを適用する
- 暗号方式の変更: SSH実装で利用している暗号方式を、この攻撃の影響を受けない「AES-GCM」などのアルゴリズムに変更する
OpenSSHユーザーの場合は、ssh_configおよびsshd_configに次のような設定を追加することで影響を受ける暗号方式を無効にできる。これらは現在の設定から「chacha20-poly1305@openssh.com」および「*etm@openssh.com」を無効にする設定となる。この設定がすべての環境で有効である保証はないため、各自の環境で現在有効な暗号方式を確認して設定を調整する必要がある。
- Ciphers -chacha20-poly1305@openssh.com
- MACs -*etm@openssh.com
Terrapin Attackの情報サイトでは、影響を受けるSSHアプリケーションの修正状況に関する情報を「Terrapin Attack - Patches」で公開している。
SSHを運用している管理者は、自身の環境で動作しているSSHアプリケーションの種類、バージョン、有効な暗号方式を確認し、影響を受ける場合はアプリケーションのアップデートを実施するか、設定から上記のように影響を受ける暗号方式を無効にすることが推奨されている。