CERT/CC

Advisories

Tech Tips

Incident Notes

Summaries




和訳版

最近版

全CERT勧告

Tech Tips

CERT Advisory 2001-33

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


CERT® Advisory CA-2001-33
WU-FTPDに複数の脆弱性が存在する

Original release date: November 29, 2001
Last revised: December 10, 2001
Source: CERT/CC
本和訳の最終改訂日: 2001年12月14日

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

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

影響を受けるシステム

  • WU-FTPD並びに、WU-FTPDから派生したFTPDを動作させているシステム

概要

WU-FTPDはUNIX並びにLinuxシステム上でファイル転送プロトコル(FTP)サービスを提供する のに広く利用されているソフトウェアパッケージである。このWU-FTPDに脆弱性が2つ あり、この結果、システムはFTPサービスにアクセスすることで、誰でもリモートから root攻略できる可能性がある。この2つの脆弱性が残っていないか調べられることが最近 増えてきている。

I. 説明

ワシントン大学版FTPデーモン(WU-FTPD)にはリモートからコードを実行できてしまう 脆弱性が2つ存在する。いずれの脆弱性も公開の場所で議論され、広く知られるものと なっている。

VU#886083: WU-FTPDが適切にglobコマンドを扱えない

WU-FTPDには、ユーザが典型的なシェルの記法を使って複数のファイル名と配置場所を指定 することができるようファイル名展開(glob)の機能がある。ファイル名展開の詳しい解説については、 CERT勧告CA-2001-07 を参照されたい。

WU-FTPDはOSのライブラリを利用するのではなく、独自のファイル名展開コードを実装している。 このファイル名展開コードが呼び出されると、ヒープ上にメモリを割り当て、展開した表現 (the expanded glob expression)に適合するファイル名のリストを格納する。このファイル名 展開コードはシンタクスが間違えていた場合、適切に認識し、このコードを呼び出した関数 にエラーコードを返すよう設計されている。しかし、特定の文字列を受け取った場合、 ファイル名展開コードは適切にエラーコードを返せない。このため、呼び出した側の関数は ファイル名展開のシンタクスが正しいものであるときと同じように処理を続行し、 ユーザが与えたデータを含んでいる可能性のある未割り当てメモリを開放する。

侵入者がFTPコマンドを使って、アドレスとシェルコードをヒープ上の正しい位置に置くことが できれば、後でファイル名展開コードが誤って扱うコマンドを発行することで、任意の コードを実行できる可能性がある。

この脆弱性は、匿名アクセスのユーザも含め、脆弱なサーバにログインできるあらゆる ユーザが付けこめる可能性がある。この攻撃が成功すれば、攻撃者はWU-FTPDに付与された 権限レベル、典型的にはroot権限で任意のコードを実行できる可能性がある。攻撃が不成功に 終わればそのリクエストを扱ったスレッドは異常終了するが、WU-FTPD自体のプロセスは そのまま動作しつづける。

少なくとも、WU-FTPDの派生物であるBeroFTPDはやはり脆弱である。BeroFTPDは現在、 公式にはもうメンテナンスは行なわれていない。

この脆弱性には、Common Vulnerabilities and Exposures (CVE)により、CAN-2001-0550 という識別番号が付けられている。

http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2001-0550

CORE Security Technologiesはこの問題についてVulnerability Reportを発行した。

http://www.corest.com/pressroom/advisories_desplegado.php?
dxsection=10&idx=17

VU#639760: デバッグモードで動作し、RFC 931で定義された認証を利用するよう設定されたWU-FTPD にはフォーマットストリングの脆弱性が存在する

WU-FTPDはクライアントからWU-FTPD側への接続を受け入れる際に RFC 931 で定義された認証方式を使えるようになっている。 RFC 931では、 認証サーバプロトコル(Authentication Server Protocol)を定義しており、 これはアイデンティティプロトコル(Identity Protocol)を定義している RFC 1413の登場に より旧式(obsolete)となっている。RFC 931は一般に"auth"または"authd"として、 RFC 1413は"ident"または"identd"として知られている。いずれも各サービスを 提供するのが通常であるデーモンの名前にちなんでいる。

RFC 931認証を利用する場合、WU-FTPDはクライアントからの接続要求を許可する前に ident情報を求める。クライアント側で動作しているauthまたはidentサービスは ユーザ固有の情報を返し、これにより、WU-FTPDはidentによる応答内のデータに 基づいて接続を許可するかどうかの判断を行なう。

WU-FTPDはデバッグモードで動作させることもでき、これにより、その動作についての 詳しい情報を得ることができる。

WU-FTPDがRFC 931認証を行うよう設定され、しかもデバッグモードで動作している場合、 syslog(3)ファンクションコールを使って、接続情報の 記録を取っている。このログ取り用のコードにはsyslog(3) 呼び出しのいくつかでフォーマットストリング指定子が含まれておらず、さらに、この コードは、クライアントから 受け取ったidentd応答の内容についてその入力が妥当であるかを適切に検証しない。 その結果、ユーザが供給するフォーマットストリング指定子を含む巧妙に偽造された identd応答はsyslog(3)によって解釈されてしまい、 メモリ上の任意の位置を上書きしてしまう可能性がある。このようなリクエストを 精巧に作りこむことによって、攻撃者はWU-FTPDに付与された権限レベルで任意のコード を実行できることになるだろう。

この脆弱性は、匿名アクセスのユーザも含め、脆弱なサーバにログインできるあらゆる ユーザが付けこめる可能性がある。また、侵入者はidentリクエストへの自分側の応答を 制御できる必要がある。この攻撃が成功すれば、攻撃者はWU-FTPDに付与された権限レベル、 典型的にはroot権限で任意のコードを実行できるであろう。

なお、この脆弱性は、WU-FTPがRFC 931で定義された認証を利用するよう設定され、 デバッグモードで動作しているのでない限り、顕現しない。

この脆弱性にはCommon Vulnerabilities and Exposures (CVE)グループにより、 CAN-2001-0187という識別番号が付けられている。

http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2001-0187

II. Impact

いずれの脆弱性もFTPサービスにアクセスできるユーザなら匿名アクセスのものも含め誰でも リモートから付け入ることができるものである。いずれの脆弱性でも、侵入者はWU-FTPDに 付与された権限レベル、典型的にはroot権限で任意のコードを実行できてしまう。 コードの実行に失敗した攻撃があった場合、WU-FTPDがクラッシュしたり、侵入者が利用した 接続が終了されたりすることになるだろう。

今回扱った2つの脆弱性それぞれの影響について詳しくはCERT Vulnerability Notes Database(http://www.kb.cert.org/vuls)を 参照されたい。

III. 解決策

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

Appendix Aにはこの勧告に対するベンダ提供の 情報がある。ベンダがCERT/CCに対して新たな情報を報告して きてくれた際は、このセクションを更新し、更新履歴に変更点を記載する。 特定のベンダが掲載されていない場合、それは我々が連絡を受け取っていない ことを意味している。その場合はベンダに連絡を直接取られたし。

(OSの)ディストリビューションの中にはWU-FTPDを収録しないものもあるが、WU-FTPDは 広範囲のUNIXシステム並びにLinuxシステムでコンパイルし動作させることができる。 WU-FTPDを別個にインストールしている場合は、WU-FTPD開発グループの提供する ソースコードのパッチを適用せよ。 Although some distributions may not include WU-FTPD, it can be compiled and run on a wide variety of UNIX and Linux systems. If you install WU-FTPD separately, apply the source code patches from the WU-FTPD Development Group.

WU-FTPDへのアクセスを制限せよ。

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

このサービスを無効にできない場合でも、WU-FTPDが使用する制御チャネル(デフォルト ではポート番号21/tcp)へのアクセスを遮断ないし制限することで、こうした脆弱性 が曝される範囲を限定することができる。フォーマットストリングの脆弱性(VU#639760) の場合は、攻撃側ホスト上のポート番号113/tcpから、identdリクエストを行なう WU-FTPDサーバに攻撃が転送されるであろう(an exploit would be transmitted)。 ただし、インターネットのような信頼性が確立されないネットワークからのアクセスを 遮断しても、自ネットワークの内側からの攻撃は防げない。

匿名ftpアクセスを無効にせよ

匿名ftpアクセスを無効にしたからといって攻撃されることを防げるわけではないが、 認証されていないユーザがファイル名展開に関する脆弱性 (VU#886083)に付け入ろうと することは防ぐことができる。

Appendix A. ベンダ情報

このAppendixでは、この勧告に対してベンダが提供してくれた 情報を掲載している。ベンダがCERT/CCに対して新たな情報を報告して きてくれた際は、このセクションを更新し、更新履歴に変更点を記載する。 特定のベンダが掲載されていない場合、それは我々が連絡を受け取っていない ことを意味している。なお、今回の勧告では2つの異なった脆弱性を扱っており、 ベンダからの情報はそのうちの片方だけを扱っているものと両方を扱っている ものがあるかもしれない点に注意されたい。

BeroFTPD

WU-FTPDのファイル名展開用コードはBeroFTPDにも含まれており、このため、VU#886083 で記載されたファイル名展開処理の問題について脆弱である。BeroFTPDは現在、公式には もうメンテナンスされていない。

Caldera

CalderaはVU#886083への対処として、次のCaldera Security Advisoriesを発行した。

Conectiva

Conectivaは次のConectiva Linux Security Announcementsを発行した。

Cray

Cray, Inc.(の出荷するコンピュータ)は、UNICOS, UNICOS/mkで供給しているftpプログラムが ワシントン大学版に基づいたものではないため、脆弱ではない。Crayは自社供給のftpのソース コードを確認したが、今回の攻撃には影響を受けない。

Debian

Debianは次のDebian Security Advisoriesを発行した。

Fujitsu

VU#886083並びにVU#639760 (WU-FTPDの脆弱性)に関して、UXP/VはWU-FTPDを サポートしていないため、脆弱ではない。

Hewlett-Packard Company

HPのHP-UXはこの問題に対して免疫がある。この問題は2001年4月10日に発行されたCERT 勧告 CA-2001-07で公開された"ファイル名展開"問題のときに既に修正してある。 本社ラボではファイル名展開ソフトウェアを完璧に検査、精査し、その際に今回の問題 も修正した。顧客各位は2001年7月19日に発行したHP Security Bulletin #162に一覧が 挙げられている修正パッチを適用されたい。
HPSBUX0107-162 Security Vulnerability in ftpd and ftp
Hewlett-Packard Security BulletinsがIT Resource Centerウェブサイトで入手できる(登録が必要である):
http://www.itresourcecenter.hp.com/

IBM Corporation

IBMのAIXオペレーティングシステムはWU-FTPDを利用していない。このため、CORE STが 記述している攻撃に脆弱ではない。

Immunix

Immunixは次のImmunix OS Security Advisoriesを発行した。

MandrakeSoft

MandrakeSoftはVU#886083への対処として、 Mandrake Linux Security Update Advisory MDKSA-2001:090を発行した。

http://www.linux-mandrake.com/en/security/2001/MDKSA-2001-090.php3

NcFTP Software

NcFTPdサーバのどのバージョンもVU#886083並びにVU#639760で記述された問題に対して 脆弱ではない。

OpenBSD

OpenBSDはWU-FTPDを利用していない。

RedHat Inc.

RedHatはVU#886083への対処として、Errata Advisory RHSA-2001-157を公開した。
http://www.redhat.com/support/errata/RHSA-2001-157.html

SGI

SGIはIRIXにwu-ftpdを収録していない。このため、IRIXは今回の問題に脆弱でない。

SUN

Sun [Solaris]はWU-FTPDをふくんでいない為、Solarisは今回のどちらの問題にも影響を 受けない。

[VU#886083に関しては]、今回の付け込みに大して脆弱なSun Cobalt ApplianceはQube1 だけである。Qube1は既にサポート対象外である。しかし、アップデートプログラムを 用意する必要があるのは理解している。次のRPMはSun Cobaltが公式にサポートするもの ではないが、まだQube1を利用している顧客のため、限定されたレベルのセキュリティだけは 維持できるものとして提供する。

Qube1:

ftp://ftp.cobaltnet.com/pub/unsupported/qube1/rpms/wu-ftpd-2.6.1-C1.NOPAM.mips.rpm
ftp://ftp.cobaltnet.com/pub/unsupported/qube1/srpms/wu-ftpd-2.6.1-C1.NOPAM.src.rpm

SuSE

SuSEは SuSE Security Announcement SuSE-SA:2001:043を公開している。

WU-FTPD

WU-FTPD開発グループはWU-FTPD 2.6.1に存在する今回の問題両方に対処するソースコード修正パッチを提供している。

WU-FTPD開発グループはWU-FTPD 2.6.2もリリースしており、こちらはいずれの問題にも 対処済みである。

ftp://ftp.wu-ftpd.org/pub/wu-ftpd/

CERT Coordination CenterはCORE Security TechnologiesとWU-FTPD開発グループの助力に 感謝する。


著者: Art Manion


参照文献


この文書は以下で入手できる。
http://www.cert.org/advisories/CA-2001-33.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

November 29, 2001:  Initial release
November 30, 2001:  updated vendor information, CAN/CVE number, WU-FTPD 2.6.2, "Apply paches"
December  4, 2001:  updated vendor information, WU-FTPD patch locations, wrap long URLs
December 10, 2001:  included BeroFTPD information, updated title of VU#886083

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


本和訳の改訂履歴
2001年11月30日午後1時45分 (JST) 初版公開
2001年12月14日午後9時5分 (JST) Revision Historyに記載された改訂に追従。


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