CERT/CC

Advisories

Tech Tips

Incident Notes

Summaries




和訳版

最近版

全CERT勧告

Tech Tips

CERT Advisory 2001-35

  • この文書はCERT Advisory文書の和訳である。和訳については一切の 保証はしない。この文書を使った結果のあらゆる損害等について 訳者は一切責を負わない。また、転載は禁じる。
  • リンクを張るのは自由であるが、それにより発生するかもしれない 直接間接問わず一切の帰結に訳者は責任を負わない。
  • この和訳は文書の性質上、in rushであり、訳の自然さより も訳出の迅速さを目指している。内容の正確さについては訳者としての 良心から可能な限り気をつけているが、通常の翻訳であれば訳の改善を 図るために訳語等で悩む時間を極力圧縮しているため、不自然なところが 残っているかもしれない。指摘は歓迎である。なお、読者対象は文書の 性質上、ネットワーク管理者等であるため、この読者層に通じやすい 訳語選定を心がけている。
  • この和訳はあくまでも訳者の個人的な関心に基づいて行われている。 今後、飽きるまでは原則として24時間以内の翻訳を目指す(この迅速さが どこまでできるかが訳者の関心である)が、予告なく遅延、終了すること がある。
  • 本文書の和訳について、CERTから翻訳許諾は受けていない。別所で CERTと契約を行って翻訳を行っているところがある。 なお、本翻訳はその翻訳を 一切参照していない。特にその必要を感じないからでもあるが、本質的に 翻訳は訳者の解釈の塊であり、複数の独立した翻訳があることで、注意 深い読者が比較検討して、読者の判断で何が正しいのかを判断できると 考えるためである。
  • この翻訳に対して、しかるべきところから明示的に翻訳拒絶の連絡を 受けた場合を除き、本翻訳は訳者の責任において公開する。ただし、内容 についての責任は最初に書いたように負わない。
  • 訳者は大阪女子大学情報センター講師の橋本喜代太(hash@reasoning.org, hash@center.osaka-wu.ac.jp) である。ただし、本文書の訳出に当たって、大学当局は何ら関係ない。
  • 関連文書は ここにリストがある。


CERT® Advisory CA-2001-35
セキュアシェルデーモンに対する最近の攻撃活動

Original release date: December 13, 2001
Last revised: December 14, 2001
Source: CERT/CC

本和訳の原文は http://www.cert.org/advisories/CA-2001-35.htmlである。

本文書並びに本和訳の完全な改訂履歴は文書末尾にある。

影響を受けるシステム

セキュアシェル (SSH) プロトコルの諸実装を動作させているシステム

概要

セキュアシェル (SSH)プロトコルの実装に複数の脆弱性が見られるもの が複数ある。SSHプロトコルは、クライアントからサーバに対するセキュアな 通信チャネルを用意するものである。我々は、SSHデーモンに対して相当な量 のスキャニングがあるのを確認しており、攻撃(exploitation)の報告も 届いている。システム管理者はSSHの設定を確認し、クリスマス休暇の前に、 必要な修正パッチをすべて適用しているかどうかを確かめるべきである。

I. 説明

セキュアシェル (SSH)プロトコルの実装に複数の脆弱性が見られるもの が複数ある。どれも既に公開されているものであるが、一つないし複数の 脆弱性を見落としているシステム管理者やネットワーク管理者はかなりいる と我々は考えている。我々がこの文書を発行する第一目的は、クリスマス休暇 までに、各脆弱性に対する自システムの対応状況を確認するようシステム管理者 ならびにネットワーク管理者に促すことにある。CERT/CCは現時点でもSSHに 関連する脆弱性をスキャンし付け入ろうとする試みが活発に行なわれているの を確認している。

また、SSH2の実装のうち複数のものは、SSH1が同時にインストールされて いれば、それを利用してクライアントからのSSH1リクエストにも応える ようになっていることをシステム管理者が知っておくことが肝要であると 我々は考えている。つまり、SSH2にアップグレードするのは、SSH1の実装に 存在する脆弱性に対処する手段としては必ずしも十分ではない。

[訳注:上記段落の1文目はit is important for system administrators to realize that several implementations of SSH version 2 will use their implementation of SSH version 1 if it is present and requested by the clientである。上記の訳し方では「SSH1とSSH2が両方インストールされている 状態では」ということになるが、「SSH2だけがインストールされていても、 そのSSH2の実装コードが旧版としてのSSH1の実装コードを含んでいれば」と も解釈できる。いずれであるか確実に分かる方がいればお知らせいただき たい。訳者としては、後者であれば修正パッチはSSH2実装用としても公開 されるのが普通であり、それなら上記の2文目は不要であろうという理解に 基づき、上記訳を採用した。]

次に挙げる脆弱性メモ(Vulnerability Note)並びにインシデントメモ (Incident Note)には、SSHのCRC32攻撃検知用コードにインテジャオーバフロー の脆弱性が存在する点に関連した事項を解説している。

VU#945216 - SSH CRC32 attack detection code contains remote integer overflow

SSH1プロトコルの実装には、リモートから悪用できるインテジャオーバフロー の脆弱性があるものが複数存在する。この脆弱性があるのは、SSH1プロトコル のCRC32回りの弱点(詳しくは VU#13877を参照せよ) を悪用されるのを防ぐために導入されたコード部分である。この攻撃検知関数 (deattack.cのソース中にあるdetect_attack関数)は、CRC32攻撃を検知し それに応答するために検証される接続情報を格納するhash表を動的にメモリに 割り当てて利用する。影響を受けるホストに対して加工したSSH1パケットを 送ることで、攻撃者はこのSSHデーモンにサイズ0のhash表を作らせる。 その後、検知関数がこのサイズ0のhash表に値を書き込もうとするが、 この値を使って、この関数呼び出しの戻り値(アドレス)を変えてしまうことが できる。その結果、SSHデーモンに付与された特権レベル、典型的にはroot 権限、で、プログラムは任意のコードを実行できることになる。

IN-2001-12 - Exploitation of vulnerability in SSH1 CRC-32 compensation attack detector

その和訳「SSH1のCRC-32攻撃検知に存在する脆弱性への付け込み」

CERT/CCが受け取った報告によると、この脆弱性を悪用して攻略された システムにはシステムログメッセージに次のようなパターンが記録される。

hostname sshd[xxx]: Disconnecting: Corrupted check bytes on input.
hostname sshd[xxx]: Disconnecting: crc32 compensation attack: network attack detected
hostname sshd[xxx]: Disconnecting: crc32 compensation attack: network attack detected
...

この脆弱性に付け入ろうとする場合、力づくで行なわれる(use a brute force method)ことがあり、実際にシステムが攻略されるまでにこの種の メッセージが大量に記録されることがある。

実際に攻略されたシステム上で、次のような加工が行なわれたのが 発見されている。

  • 侵入者の行動を隠すために、標準的なシステムユーティリティを 書き換えるrootkitsがインストールされていた
  • 最新のOpenSSHのソースコードに侵入者独自の改変を加えてコンパイル したSSHソフトウェアのトロイの木馬版がインストールされていた
  • 攻撃に脆弱な他のシステムを探し出すために後半にネットワークを スキャンするツールがインストールされていた。こうしたツールが残した ログから、このツールはsshdサービスに接続した際に表示される特定の バナーを探すことで動作するようになっていた。

SSHの脆弱性に関する脆弱性メモ(Vulnerability Note)については References sectionを参照されたい。

II. 影響

CRC32攻撃検知コードのインテジャオーバフローの脆弱性は、 参考文献に挙げた文書に書かれた脆弱性のいくつか と同様に、リモートから付け入ることができるものである。場合によっては、 こうした脆弱性を攻略することで、侵入者がSSHアプリケーションデーモン に付与された権限レベル、通常はroot権限、で、任意のコードを実行できる ことになる。脆弱性の中には、侵入者となる者がそのシステムの正規認証 ユーザでなければならないものもある。

各脆弱性の影響については、CERT Vulnerability Notes Database (http://www.kb.cert.org/vuls) を参照されたい。

III. 解決策

最新版に更新せよ

可能であれば、インストールしているSSHを最新版に更新せよ。 最新版に更新できない場合は、現在利用しているバージョンに対して、 関連するすべての修正パッチを適用せよ。また、各ベンダサイトのセキュリティ 情報、サポート情報を確認することを推奨する。

SSH2の実装のうち複数のものは、SSH1が同時にインストールされて いれば、それを利用してクライアントからのSSH1リクエストにも応える ようになっていることをシステム管理者が知っておくことが肝要である 点に注意されたい。つまり、SSH2にアップグレードしても、SSH1側の 実装に存在する脆弱性に修正パッチを当てたことにはならない。

[訳注:上記段落の1文目はit is important for system administrators to realize that several implementations of SSH version 2 will use their implementation of SSH version 1 if it is present and requested by the clientである。上記の訳し方では「SSH1とSSH2が両方インストールされている 状態では」ということになるが、「SSH2だけがインストールされていても、 そのSSH2の実装コードが旧版としてのSSH1の実装コードを含んでいれば」と も解釈できる。いずれであるか確実に分かる方がいればお知らせいただき たい。訳者としては、後者であれば修正パッチはSSH2実装用としても公開 されるのが普通であり、それなら上記の2文目は不要であろうという理解に 基づき、上記訳を採用した。]

Data Fellows (F-Secure)の現在のバージョンはhttp://www.f-secure.com/products/ssh/ にある。

SSH Communications Securityの現在のバージョンはhttp://www.ssh.com/products/ssh/download.cfmにある。

OpenSSHの現在のバージョンはhttp://www.openssh.comにある。

ベンダのウェブサイトで最新版を入手されたい。

ベンダが提供する修正パッチを適用せよ。

Appendix Aには、 この勧告に対してベンダが提供してくれた 情報を掲載している。ベンダがCERT/CCに対して新たな情報を報告して きてくれた際は、このセクションを更新し、更新履歴に変更点を記載する。 特定のベンダが掲載されていない場合、それは我々が連絡を受け取っていない ことを意味している。CERT Vulnerability Notes Database (http://www.kb.cert.org/vuls)を 確認するか、直接、ベンダに連絡を取られたし。

SSHサービスへのアクセスを制限せよ

習慣としては、明示的に必要とされていないサービスはすべて無効にすることを CERT/CCは推奨する。修正パッチが適用できるように なるまではSSHを無効に しておいた方がよいかもしれない。

上記サービスを無効にできない場合は、ルータないしファイアウォール を利用してポート番号 23/TCP (SSH)へ のアクセス を制限することによって、この脆弱性を 突かれる可能性を限定することが できる。tcp wrappers または、同じような機能を提供するプログラムを利用せよ。または、 自分で実装することで鍵ベースのIP制限を利用せよ。 ただし、こうした設定を しても、自ネットワーク内部からの攻撃 は防げない。

Appendix A. - Vendor Information

このAppendixでは、この勧告に対してベンダが提供してくれた 情報を掲載している。ベンダがCERT/CCに対して新たな情報を報告して きてくれた際は、このセクションを更新し、更新履歴に変更点を記載する。 特定のベンダが掲載されていない場合、それは我々が連絡を受け取っていない ことを意味している。CERT Vulnerability Notes Database (http://www.kb.cert.org/vuls)を 確認するか、直接、ベンダに連絡を取られたし。

Berkeley Software Design, Inc. (BSDI)

OpenSSHの最新版である3.0.2p1は、BSD/OS 4.2ではパッチM420-018に、 BSD/OS 4.3ではM430-001に収録されている。両パッチは当社のftpサイト またはウェブサイトで入手できる。
ftp://ftp.bsdi.com/bsdi/patches
http://www.bsdi.com/support

Fujitsu

FujitsuのUXP/V OSはSSHパッケージをサポートしていないため、 今回挙げられているSSHの脆弱性の影響は受けない。

Hewlett-Packard Company

この問題はHP-UXには無関係である。HPはSSHを出荷していない。

IBM Corporation

IBMのAIX OSはOpenSSHをつけずに出荷している。しかし、Linux Affinity Toolkit経由でAIXにインストールできるように、OpenSSHが 入手可能になっている。Toolkitを収録したCDに含まれるSSHは VU#157447で説明されている最近発見された脆弱性については該当 する。これは、IBM Linux Affinityのウェブサイトからダウンロード できるOpenSSHも同じであった。ウェブサイトの方は既に更新して、 この脆弱性がないものにしてある。また、ウェブサイト上に置かれた ものは、今回の勧告に書かれた他の脆弱性に対する修正も行なって ある。顧客はこのバージョンを次のページでダウンロードできる。

http://www6.software.ibm.com/dl/aixtbx/aixtbx-p

上記サイトには、暗号アルゴリズムを含むLinux Affinity アプリケーションもあるため、このサイトに初めて来た人はまず ユーザ登録を行なうことが求められる。

NetBSD

CRC32攻撃に対する脆弱性については、2000年10月30日発行のNetBSD-current で修正した。NetBSD 1.5並びにそれ以降のバージョンには、既にこの修正パッチ が含まれている。それより前のNetBSDを使っているユーザは、まだしていなければ、 NetBSD pkgsrcのsecurity/opensshパッケージを使ってシステムを更新すべきである。

SSHならびに他の脆弱性に関するNetBSDの最新セキュリティ情報はhttp://www.netbsd.org/Security/ で入手できる。

OpenSSH

CRC32問題はOpenSSH 2.3.0の2000年11月リリースで修正された。

Sun Microsystems

Sunはセキュアシェル(SSH)を出荷していないため、Solarisはこの問題の 影響は受けない。

[訳者追補: 当たり前のことだが、Solarisを利用していてもOpenSSHその他 のSSH実装を各サイトでインストールしているケースが多いはずである。その場合は 該当項目を必ず参照されたい。]


CERT Coordination Centerは、技術的な助力に対して、OpenSSHのMarkus Friedl に謝意を表する。


本文書へのフィードバックは直接、著者、Jason A. Rafail and Chad Doughertyに送られたし。


参照文献


IDDate
Public
Name
VU#1912401/20/98SSH authentication agent follows symlinks via a UNIX domain socket
VU#1387706/11/98Weak CRC allows packet injection into SSH sessions encrypted with block ciphers
VU#4032706/09/2000OpenSSH UseLogin option allows remote execution of commands as root
VU#36318112/07/2000OpenSSH disregards client configuration and allows server access to ssh-agent and/or X11 after session negotiation
VU#85044001/16/2001SSH1 may generate weak passphrase when using Secure RPC
VU#68482001/18/2001SSH-1 allows client authentication to be forwarded by a malicious server to another server
VU#56505201/18/2001Passwords sent via SSH encrypted with RC4 can be easily cracked
VU#78690001/18/2001SSH host key authentication can be bypassed when DNS is used to resolve localhost
VU#2530901/18/2001Weak CRC allows RC4 encrypted SSH1 packets to be modified without notice
VU#11889201/18/2001Older SSH clients do not allow users to disable X11 forwarding
VU#66537201/18/2001SSH connections using RC4 and password authentication can be replayed
VU#31530801/18/2001Weak CRC allows last block of IDEA-encrypted SSH packet to be changed without notice
VU#94521602/08/2001SSH CRC32 attack detection code contains remote integer overflow
VU#59682703/19/2001Weaknesses in the SSH protocol simplify brute-force attacks against passwords typed in an existing SSH session
VU#65525906/12/2001OpenSSH allows arbitrary file deletion via symlink redirection of temporary file
VU#73745107/20/2001SSH Secure Shell sshd2 does not adequately authenticate logins to accounts with encrypted password fields containing two or fewer characters
VU#27976311/19/2001RhinoSoft Serv-U remote administration client transmits password in plaintext
VU#15744712/04/2001OpenSSH UseLogin directive permits privilege escalation


本文書の原文は以下で入手できる。
http://www.cert.org/advisories/CA-2001-35.html


CERT/CCへの連絡は

電子メール: cert@cert.org
電話: +1 412-268-7090 (24-hour hotline)
Fax: +1 412-268-6989
郵便送付先:
CERT Coordination Center
Software Engineering Institute
Carnegie Mellon University
Pittsburgh PA 15213-3890
U.S.A.
CERT/CCの職員は月曜〜金曜の personnel answer the hotline 08:00-17:00 EST(GMT-5) / EDT(GMT-4)であればホットラインを受け付けている。他の時間、合衆国の祝日、週末も緊急時の ため待機している。

暗号を利用する

セキュリティ上微妙な情報を電子メールで我々に送る場合は暗号化することを 強く推奨する。我々の公開PGP鍵は以下で入手できる。

DESを利用したい場合は、CERTホットラインに電話して欲しい。

セキュリティ情報を得る

CERTの出版物ならびにその他のセキュリティ情報はCERTのウェブサイトで見ることができる。

CERTの勧告、速報を配布するメーリングリストを購読したい場合は、 majordomo@cert.org に本文が次のようなメールを送ること。

subscribe cert-advisory

* "CERT" 並びに "CERT Coordination Center" はU.S. Patent and Trademark Officeに登録されている。


NO WARRANTY
Any material furnished by Carnegie Mellon University and the Software Engineering Institute is furnished on an "as is" basis. Carnegie Mellon University makes no warranties of any kind, either expressed or implied as to any matter including, but not limited to, warranty of fitness for a particular purpose or merchantability, exclusivity or results obtained from use of the material. Carnegie Mellon University does not make any warranty of any kind with respect to freedom from patent, trademark, or copyright infringement.
Conditions for use, disclaimers, and sponsorship information

Copyright 2001 Carnegie Mellon University.

Revision History

December 13, 2001:  Initial release
December 14, 2001:  Added OpenSSH Vendor Statement

この翻訳は橋本喜代太(hash@reasoning.org)が行った。 翻訳公開は原文を受け取ってから(訳者の使用しているPOPサーバに メールが届いた時点であり、訳者自身がメールを見た時点ではない) 約10時間後である。


本和訳の改訂履歴
2001年12月14日午後5時20分 (JST) 初版公開
2001年12月14日午後6時5分 (JST) IN-2001-12を和訳したのでリンクを追加
2001年12月15日午前10時25分 (JST) 12/14の改訂に追従
2001年12月20日午後12時35分 (JST) typo一か所の修正。ご指摘いただいた志村 氏 に感謝する。


訳者並びに連絡先: 橋本喜代太