[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-devel:12572] (draft) [SECURITY] New version of canna released



  kon2 のアナウンスは最終的に鵜飼さんが出して下さったようで、どうもあ
りがとうございます。

<200005100400.NAA25791@xxxxxxxxxxxxx>の記事において
私は書きました。

>> # そういえば、http://www.debian.or.jp/security/ って結局まだないみたい
>> # ですね...

  こちらも作成していただいて、私も webadmin に加えてもらいました。喜瀬
さんが過去に投稿された debian-security@org の翻訳もこのコンテンツに加
えた方が良いでしょうか?

# Debian 本家でやるほうがよりベストかもしれない...

  さて、本題の Subject: (draft) [SECURITY] New version of canna
released なんですが...
  BUGTRAQ-JP で今度は canna の remote exploit が報告されました。多分以
下の URI でそのメールが閲覧できると思います。
http://www.securityfocus.com/templates/archive.pike?list=79&msgid=395B4E182C6.3223SHADOWPENGUIN@xxxxxxxxxxxxxx

  ちょっと source も追ってみたのですが、

1. socket から data を受けとる
2. その socket が /etc/hosts.canna で許可されていない相手からの接続な
  ら切断し、data も捨てる
3. そうでなければ data を parse (この時に buffer overflow が起きる)

  という流れのようだったので、/etc/hosts.canna で接続を制限すれば制限
された範囲からの攻撃は防ぐことができそうです。Debian の default は
/etc/hosts.canna が存在しないので(BTS にも報告がある)危険な状態にある
人は結構な数がいるかもしれません。

# canna ステとかそういう話は置いといて ^^;

  そうでなくとも、接続可能な範囲ではやはり問題になるので、この穴を埋め
る必要があります。

  前述の URI にはパッチも流れていますが若干の不備があったようで、その
フォローにある小島さんの作成された以下のパッチが適切みたいです。

--- ../Canna32p2.orig/server/misc.c     Fri Jul 29 12:03:54 1994
+++ server/misc.c       Fri Jun 30 12:15:57 2000
@@ -788,12 +788,23 @@

     if (client->username && client->username[0]) {
       if (client->groupname && client->groupname[0]) {
+        if (strlen(DDUSER) + strlen(client->username) +
+           strlen(DDGROUP) + strlen(client->groupname) +
+           strlen(DDPATH) + 4 >= 256) {
+           return(-1);
+       }
+
        sprintf(dichome, "%s/%s:%s/%s:%s",
                DDUSER, client->username,
                DDGROUP, client->groupname,
                DDPATH);
       }
       else {
+        if (strlen(DDUSER) + strlen(client->username) +
+           strlen(DDPATH) + 2 >= 256) {
+           return(-1);
+       }
+
        sprintf(dichome, "%s/%s:%s",
                DDUSER, client->username,
                DDPATH);

  例によって、アナウンス文の draft を書いてみました。しかし、install 
がされるまでには時間がかかる(もしくは potato が出てしまう?)と思うので、
users@jp にもなんらかの別のアナウンス(危険性と workaround ぐらい?)をし
た方が良いでしょうか?

-- 
Subject: [SECURITY] New version of canna released 

Debian JP Security Advisory                          security@debian.or.jp
http://www.debian.or.jp/security/                                 ふにふに
7月nn日

Package: canna
Vulnerability type: remote exploit
Debian-specific: no

Debian 2.1 で配布されている canna パッケージには、IR_INIT コマンドに異
常な長さの username, groupname を指定するとバッファーオーバーフローを
おこすバグがあります。これを利用して、ローカル/リモートで canna サーバ
に接続できる任意のユーザが root 権限を取得できてしまいます。

この問題は BUGTRAQ-JP メーリングリストの以下の記事で明らかにされました。
http://www.securityfocus.com/templates/archive.pike?list=79&msgid=395B4E182C6.3223SHADOWPENGUIN@xxxxxxxxxxxxxx

このバグは @VERSION@ で修正されています。ただちに canna パッケージを更
新することをお勧めします。

wget url
        will fetch the file for you
dpkg -i file.deb
        will install the referenced file.

Debian GNU/Linux 2.1 alias slink
--------------------------------

  このバージョンでは Intel ia32, Alpha アーキテクチャ用のものだけが
  リリースされています。

   Source archives:
    http://ftp.debian.org/debian/dists/stable/updates/source/
      MD5 checksum: 
    http://ftp.debian.org/debian/dists/stable/updates/source/
      MD5 checksum: 
    http://ftp.debian.org/debian/dists/stable/updates/source/
      MD5 checksum: 

  Intel ia32 architecture:
    http://ftp.debian.org/debian/dists/stable/updates/binary-i386/
      MD5 checksum: 

  Alpha architecture:
    http://ftp.debian.org/debian/dists/stable/updates/binary-alpha/
      MD5 checksum: 

-- 
-- 
野首 貴嗣
E-mail: knok@xxxxxxxxxxxxx (private)
        nokubi@xxxxxxxxx (official)