パスワードを忘れた? アカウント作成
342389 story
セキュリティ

vsftpdにバックドアが仕込まれる 50

ストーリー by hylom
気になる方はご確認を 部門より

あるAnonymous Coward 曰く、

多くのLinuxディストリビューションでも採用されているFTPサーバーvsftpdにバックドアが見つかった。The Hによると、公開されているvsftpd 2.3.4のソースコードにバックドアを実装するコードが発見されたそうだ。このバックドアはユーザー名「:)」、ポート番号6200で任意のユーザーの接続を許すというもので、またシェルを実行することもできるという。

このコードは2~3.5日前(記事公開が7月4日なので7月2日前後?)に混入した模様。安全なソースコードはGoogle AppEngine上のvsftpdサイトで公開されている。

最近ではソースからビルドしてインストールしている人は多くないと思うが、思い当たる節のある方はご確認を。また、ソースコードをダウンロードした際はGPG署名を確認するようにとも述べられている。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • GPG署名を確認 (スコア:3, 参考になる)

    by Anonymous Coward on 2011年07月06日 15時31分 (#1982751)
    先生! GPG署名の正しさはどうやって確認したらいいですか?
    • by Anonymous Coward

      なんでおもおかモデがついてるのかわからんけど、これ重要なことだよ。
      署名自体は誰でも(悪意の第三者でも)できるので、
      .tar.gz だけでなく .tar.gz.asc までセットで置き換えられたら改竄を検知できない。

      なので、誰がどんな鍵を使って署名したのかという情報も合わせて
      チェックしないといけないんだけど、そのへんの情報は公開されてんのかしら。

      • Re:GPG署名を確認 (スコア:3, 参考になる)

        by Anonymous Coward on 2011年07月06日 17時16分 (#1982815)

        ああ、フィンガープリント置いてあった [appspot.com]。

        vsftpd tarballs are now GPG signed by me (8660 FD32 91B1 84CD BC2F 6418 AA62 EC46 3C0E 751C)

        このサイト自体が改竄されてる可能性もないではないけど、まあ何とか検証できるかな。

        % gpg --verify vsftpd-2.3.4.tar.gz.asc
        Warning: using insecure memory!
        gpg: Signature made Wed Feb 16 07:38:11 2011 JST using DSA key ID 3C0E751C
        gpg: Can't check signature: No public key
        % gpg --recv 3C0E751C
        Warning: using insecure memory!
        gpg: requesting key 3C0E751C from hkp server keys.gnupg.net
        gpg: key 3C0E751C: public key "Chris Evans " imported
        gpg: Total number processed: 1
        gpg: imported: 1
        % gpg --fingerprint 3C0E751C
        Warning: using insecure memory!
        pub 1024D/3C0E751C 2004-06-29
                    Key fingerprint = 8660 FD32 91B1 84CD BC2F 6418 AA62 EC46 3C0E 751C
        uid Chris Evans
        sub 1024g/0A9EB17D 2004-06-29

        % gpg --verify vsftpd-2.3.4.tar.gz.asc
        Warning: using insecure memory!
        gpg: Signature made Wed Feb 16 07:38:11 2011 JST using DSA key ID 3C0E751C
        gpg: Good signature from "Chris Evans "
        gpg: WARNING: This key is not certified with a trusted signature!
        gpg: There is no indication that the signature belongs to the owner.
        Primary key fingerprint: 8660 FD32 91B1 84CD BC2F 6418 AA62 EC46 3C0E 751C

        ということで、いくつか警告出たけど、公開されてる情報とフィンガープリントが一致し、Good signature になりました。

        親コメント
        • by Anonymous Coward
          その fingerprint がどうして本物だと?
          • by Anonymous Coward on 2011年07月06日 19時58分 (#1982888)

            うん、そこまで検証するの難しいよねぇ。
            その fingerprint が置いてある security.appspot.com にオレオレじゃない HTTPS でつながってるので、
            とりあえずそこまでの経路は正しいことはわかった。

            問題は、そこに書いてあることがほんとに信用できるのかということだな。

            • security.appspot.com と vsftpd 作者の関係
            • security.appspot.com のコンテンツも改竄されてないかどうか (HTTPSは経路の安全はわかるけど、オリジンサーバのコンテンツが改竄されても検知できない)

            というあたりが検証しきれていない。

            でも、そこまで念入りに改竄するのはかなり困難なので、まあたぶん大丈夫だろう、と。
            というか、公開されてる情報からはこれ以上の検証は無理なんじゃないかな。
            あとはそういうイケナイことをするような奴がそこまで念入りに改竄するような周到な人間でないことを祈るだけ。

            親コメント
      • by Anonymous Coward

        いままで検証してきた人ならすぐ気づくけど、
        いきなり改ざん版を検証した人は気づきにくいね。

    • by Anonymous Coward

      ところで、鍵の方はみんなどうしてる?
      昔よく見た鍵サーバは、誰でも適当に作って勝手に登録できたんで信用できないし。
      PGP Global Directoryは、一応メールアドレスの確認をしているけど、PGPがやってるんであまり好かない人とかいそうだし。

      • by Anonymous Coward

        誰でも作れることがどうして信用できないことに繋がるの?

        • by Rekishi (10137) on 2011年07月07日 22時31分 (#1983565)
          そもそもPGP/GPGなんていうものを知らない人物がいたとする。
          もしこの人物の鍵が鍵サーバに登録されていたらそれは本人が作った鍵なのだろうか?

          当然違う。

          知ってはいるが使っていない人物であっても状況は大差ないだろう。

          鍵サーバへの登録に確実な本人確認が必要であればこのようなことは不可能、あるいは現状よりだいぶ困難であるはず。

          (とはいえ、これを以て「鍵サーバに置いてある鍵は全く信用出来ない」と言い切れるわけでもないが。)
          親コメント
  • by Anonymous Coward on 2011年07月06日 16時43分 (#1982796)
    なぜftpポートのまま細工しなかったんだろ。
    6200ポートでググるとOracle通知サーバー・リモート・ポートなんてのがヒットするが、Oracle載ってるサーバをターゲットにした?
  • by Anonymous Coward on 2011年07月06日 15時53分 (#1982763)
    ソースから配布するゆえのあだか、ソースがあるから先週末の混入が早くも見つかったのか。どうでしょう。
    • by Anonymous Coward
      ソースを見てすぐに分かるバックドアならいいが、発見が困難なバグを装ったバックドアだと、大勢がコードを見ても誰も気がつかない、なんてことも。
    • by Anonymous Coward

      何を言っているのかよくわかりません。ソース配布すると、バックドアが混入しやすくなるのですか?
      ソースの比較ができるからこそ(チェックする人が存在すれば)より安全にはなりえますが。

      それよりも、一次配布元のファイルに混入していた事実が問題ですよ。
      ハッシュ値の情報ファイル自体が信用できないので。
      # tar.gz ファイルにデジタル署名する技術ってあるのかしらん。

      • Re:ソースコード (スコア:3, すばらしい洞察)

        by Anonymous Coward on 2011年07月06日 17時28分 (#1982821)
        > 何を言っているのかよくわかりません。ソース配布すると、バックドアが混入しやすくなるのですか?

        はっきりいって、混入しやすくなる。
        バイナリで配布されているソフトウェアにバックドアを仕込むよりも
        技術的には容易になる。

        > ソースの比較ができるからこそ(チェックする人が存在すれば)より安全にはなりえますが。

        それは後の問題。

        たいていは、make してインストールして起動し、Firewallなどで引っかかって
        初めて気づく。

        そしてソースから調べることができるというのだけが利点。
        安全になると言うことは全くない。

        バックドア混入を防ぐことに関してはオープンソースは強くない。
        後で調べるときは有利。

        今回は変なポートを使ったからすぐわかったのであって、これがもし、
        本来使うポートを介して動作するバックドアだったら長期間気づかなかった
        可能性の方が高いな。

        たとえば 21番ポートを使ってFTPのコントロールコマンドを勝手に拡張
        して操作できるようにバックドアが作られていたらと思うと、怖いよね。

        悪意の改変者がそうしなかったのは、プログラマとしての技量が低く、
        あらかじめ作り込んであったバックドアのソースを貼り付けただけだから
        と思われる。
        親コメント
        • by Anonymous Coward

          えー、こんなコメントがすば洞モデになるの?

          何を言っているのかよくわかりません。ソース配布すると、バックドアが混入しやすくなるのですか?

          はっきりいって、混入しやすくなる。
          バイナリで配布されているソフトウェアにバックドアを仕込むよりも
          技術的には容易になる。

          配布しているファイル自体を改竄されない、あるいは改竄されたとしても安全に検知できるように
          していない時点で、ソース配布だろうがバイナリ配布だろうが一緒ですよ。

          ソースの比較ができるからこそ(チェックする人が存在すれば)より安全にはなりえますが。

          それは後の問題。

          たいていは、make してインストールして起動し、Firewallなどで

        • by Anonymous Coward

          ただ、ソース非公開で攻撃者がプログラムをコミットできるなんて状況があるわけもなく。
          公式リリースの場合、ソースの公開非公開を問わず、公式サイドが信用可能かどうかだけに掛かってくる。
          今回の場合vsftpdの管理者がザルだったという話で、プロプラでも人事採用がザルなら同じ事になる。
          # クソ上司にキレて置き土産のバックドアってネタ話とか、クソ社員が自分用バックドア(エレコムとか)を仕込んだ例はあるでしょ?
          そういった状況下では、検証可能性から言ってオープンソースの方が圧倒的に安全になる。プロジェクト参加者や趣味人が差分追いかけるからね。
          オー

          • by Anonymous Coward
            「プロジェクト参加者や趣味人が差分追いかける」と思っていたら、誰も追いかけてなかった。
            あれだけ人数がいれば誰かが気がつくと思っていたら、誰も気がつかなかった。

            なんてことは良くあると思うんですけどね。
            なにしろバグ、それもセキュリティホールになるようなバグが発見に何年もかかったりするのですから。
            • by Anonymous Coward

              その点についてはプロプラの方が不利ですからね。
              参加者が見落とすケースは両者共に同程度のリスクだけど、趣味人が担保可能な分は違う。
              オプソのバージョンアップでソース差分追いかける馬鹿はチラホラ居るけど、プロプラのバージョンアップで逆アセしてまで差分追いかける馬鹿は滅多に居ない。って言うか、居たらキモイ。

              んで、そういう馬鹿で熱心な趣味人が憑いてないソフトは同じ土俵になる。

              プロジェクト参加者の質や信頼性がオプソとプロプラで違うのは、単純に淘汰圧の掛かり方の問題であって、ソース公開の有無に依存するものではないからなぁ・・・
              # 無料配布ソフトをプロプラ扱いした場合(淘汰圧を同程度にする為)、完全に五十歩百歩。

              • by Anonymous Coward
                メジャーなオープンソースのソフトで、長いあいだ脆弱性が発見されずに放置されていた、なんていう話もありますからねぇ。
                本当に困難なバグは、ソースを見ても気がつかないんですよ。
    • by Anonymous Coward
      バックドア入りどころか、
      バイナリがまるで別物だとしても、
      ファイル名偽って配布できるじゃない。
      混入にソースの有無は関係なさげ。

      発見の速さは、
      ウイルスチェックに引っかかるコードなら、
      バイナリのほうが発見は早い。
      未知のコードならソース差分の検証ができる方が早い。

      # ソース公開の是非は論議しても無駄ぽい
      • by Anonymous Coward

        バイナリがまるで別物だとしても、
        ファイル名偽って配布できるじゃない。

        それは「混入」じゃないような気がします。
        偽装とか、そういう別のレベルでの問題点でしょう(これはこれで別に対処が要るでしょう)。
        だから、

        混入にソースの有無は関係なさげ。

        と言うよりも、ソースが公開されているからこそ「混入」が有り得る、と考えたほうが良いように思います。

        公開されたソースがあって、ビルドができる。
        だからこそ容易に、元のソフトの100%の機能を持っていて、さらに+αの何かの機能を「混入」できることになる。
        まぁ、バイナリレベルで何某かの機能を「混入」できる人もそれなりに居るだろうけど、まぁ、ソース

  • by Anonymous Coward on 2011年07月06日 16時13分 (#1982776)
    早く修正きてくれー!
  • by Anonymous Coward on 2011年07月06日 16時18分 (#1982777)

    オープンソースだと、善人のふりしてプロジェクトに入り込み、
    バックドア仕掛けるとか、防ぐことできないだろ。

    firefoxは安全なのか。全世界で何億台のpcに入ってそうだし。

    • > オープンソースだと、善人のふりしてプロジェクトに入り込み、
      > バックドア仕掛けるとか、防ぐことできないだろ。

      善人のふりすると言ったって、バグ修正や機能追加でパッチを沢山送って、コミッター、リリースマネージャと昇格していくには、少なくとも2、3年はかかるような気がする。

      #その2、3年の間に FTP プロトコルは消滅すると予測。

      ま、しょぼいプロジェクトなら可能だろうけど、使ってる人が少なかったらバックドアを仕掛ける価値があるのかどうか。

      親コメント
      • by Anonymous Coward

        > #その2、3年の間に FTP プロトコルは消滅すると予測。

        しねーよ

    • Re:他のオープンソースは (スコア:1, おもしろおかしい)

      by Anonymous Coward on 2011年07月06日 21時20分 (#1982942)
      gcc にはバックドアが仕掛けられて [hi-ho.ne.jp]いた!
      親コメント
    • by Anonymous Coward

      それ言い出したら選択肢はIEかoperaの二択に。

      • by Anonymous Coward
        CIAやNSAの工作員が身分を隠してマイクロソフトに就職してIEチームに入ろうとしたら・・・入れるんじゃね?
        • by Anonymous Coward on 2011年07月06日 16時48分 (#1982797)

          そんな時間と手間がかかってしかもバレればあっさり除去されるようなことしなくても、Skypeに接触して圧力かけて盗聴用バックドア作らせたなんてのもあったでしょ。圧力の方法が金で釣ったか、暴力で脅したか、話し合いで説得したかというのは気になるけど。
          オープンソースは入り込んで仕込んでだまくらかすのには弱いが、脅しや金には案外強い。

          親コメント
          • by Anonymous Coward
            > オープンソースは入り込んで仕込んでだまくらかすのには弱いが、脅しや金には案外強い。

            プロジェクトに対して、ではなく、古参の主要メンバー個人を標的にすれば、あっさり陥落すると思うが。
            OpenBSDのバックドア疑惑とか、ありましたよね。
            • by Anonymous Coward

              買収に強いのは、未然に防ぐよりも、陥落後の対応ですよ。
              古参の主導メンバーもそうですが、企業主導のも同様、パッチ採用の可否を判断する権限があり、しかも本人はレビューなしでやりたい放題なら仕込めるとは思います。

              コミッタが投げた脆弱性修正が問題なさそうなのになぜかrejectになるとかで疑われやすいし、疑いが起きればバグトラッカーが炎上するし、みんながソースを見始める。本人が改善する気がなければ、フォークしてしまえばいい。もちろん関与の証拠が見つかればマスコミに吊るし上げできるし。そういった抵抗する開発者を政府が弾圧するとかでなければね。

        • by fireboat (36349) on 2011年07月07日 1時32分 (#1983054) 日記
          IEの場合は、犯罪者からセキュリティ企業に至るまで大勢の人が日々解析している上に、不審な挙動見つかると一騒動になるので、逆に難しいと思う。

          プロプラ版「目が多ければ」だね。
          親コメント
    • by Anonymous Coward
      単純にバックドアを仕込む人を送り込む、もしくは請け負ってくれる人を買収すればいいだけの話ですから、開発形態がオープンソースかそうでないかとかは関係ないですね。

      むしろ、プロジェクトの重要な部分に潜り込みやすいか、そうでないかが重要で、Firefoxぐらいだと相当難しい気がするんだけど。Microsoftに雇ってもらう方が簡単じゃないか?
    • by Anonymous Coward
      オープンソースの本質は、こういう事件を未然に防ぐのではなく、素早い対処。目が多ければ対処も早い。
      だから、防ぐことができないのは上等で、その先が問題。
      • by d5 (42418) on 2011年07月06日 20時28分 (#1982910)

        >目が多ければ対処も早い。

        その目がそれを見ているか?
        目は見たいものを見る傾向がある。

        親コメント
      • by Anonymous Coward
        素早い対処に見せかけた発見が難しいバックドアを仕込まれたら、素早く全世界にバックドアが実装されますね。
      • by Anonymous Coward
        オープンソースでもプロプライエタリでも大切なのはメンテナンスが盛んに行われていること。オープンソースは誰でもみられるという可能性を提供しているだけで、多くの人が見ていると言うことまでは保証していない。

        目が多いと言う期待だけで、ソフトウェアの品質には向上したり、セキュリティホールが減ったりはしない。もちろん、悪意で埋め込まれたコードへの対処が速くなったりもしない。

        ユーザの視点からオープンソースで確実にプロプライエタリよりも優れていると言えるのは、ハードウェアやOSに対する縛りが少ないことぐらいじゃないかな。
    • by Anonymous Coward

      > オープンソースだと、善人のふりしてプロジェクトに入り込み、
      > バックドア仕掛けるとか、防ぐことできないだろ。

      プロプライエタリだったら防げるんですか?
      ちょっと何言ってるかわかりません。

      • by Anonymous Coward
        少なくとも、その会社に入るなり、開発チームにつながるルートが無いと
        難しいよね。
        オープンソースなら、誰が関わってるか丸わかり&ソースは公開なんで、
        仕込む前段階は簡単だよね。
        そういう事では?
        どーやって仕込むかはまた別問題だが。

        コードチェックの段階で見つけられないような、複雑な物仕込まれる可能性
        ってどの程度なんだろ。
        • by Anonymous Coward

          > 少なくとも、その会社に入るなり、開発チームにつながるルートが無いと
          > 難しいよね。

          オープンソースプロジェクトのコードレビューより杜撰な審査で
          コーダーを雇ってる例だって、いくらでもあるような気が……

      • by Anonymous Coward
        プロプラだと、人を雇う=金を払うわけだから、誰でもウェルカムってわけにはいかない。
        その点、オープンソースで人不足で困っているところだと、無償ボランティアとして入り込むのは(相対的に)容易いでしょう。
typodupeerror

「毎々お世話になっております。仕様書を頂きたく。」「拝承」 -- ある会社の日常

読み込み中...