OpenSSH を含む SSH 実装において、成功する確率はたいへん低いものの SSH 暗号化通信におけるデータが一部漏えいする可能性が指摘されています。
この欠陥を回避するには、暗号化において CBC (暗号ブロック連鎖) モードではなく CTR (カウンター) モードを使用します。あるいは暗号化アルゴリズムに Arcfour を使用しても回避できます。OpenSSH のデフォルト設定では CBC モードが使用されますが、OpenSSH のクライアント設定ファイル (/etc/ssh/ssh_config や ~/.ssh/config) において次のように設定すれば、CTR モードや Arcfour が使用されます。
Host * Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour128,arcfour256,arcfour
上記は OpenSSH 4.2 以降で利用できる設定です。クライアントが OpenSSH 4.1 以前の場合は arcfour128 と arcfour256 が利用できないので、こうします。
Host * Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour
さらに、クライアントが OpenSSH 3.6 以前の場合は CTR モードが利用できないので、こうします。
Host * Ciphers arcfour
rins.st.ryukoku.ac.jp の OpenSSH (5.0p1) については上記設定を行ってあります。
その他の SSH 実装についてですが、
- SSH Tectia については Plaintext Recovery Attack Against SSH (ssh.com) を参照してください。
- PuTTY 0.60 は標準で CTR モードを使用するようです。
- Tera Term (旧称 UTF-8 TeraTerm Pro with TTSSH2) については、近くリリースされるはずのバージョン 4.61 で CTR モードに対応されます。Arcfour には対応していません。
- Poderosa については、最新のバージョン 4.10 においても、CTR モードにも Arcfour にも対応していないようです。