hylomによる
2009年09月25日 14時00分の掲載
exportしようね部門より
exportしようね部門より
あるAnonymous Coward 曰く、
TechCrunchの記事「初歩的な管理ミスで3300もの有名サイトがソースコードを盗まれる」によると、ロシアのセキュリティグループが、「.svn」や「CVS」といったSubversionやCVSの管理ディレクトリを狙ってWebサイトの非公開ファイルを盗み出す手法により、3300あまりのWebサイトのソースコードを入手することに成功したそうだ。
原理は簡単で、Webサイトでうっかり公開されてしまっている.svnや.cvsといったディレクトリを探し、発見したらその中身のデータを吸い出すだけ。確かに言われてみればうっかり見逃しそうなミスではある。皆様もご注意くださいませ。
(追記@14:50)原文では.cvsとなっているが、コメント#1644247で指摘されているとおり、CVSの管理ディレクトリは「.cvs」ではなく「CVS」である。
関連ストーリー
Firehose:「.svn」「.cvs」ディレクトリを狙ってWebサイトの非公開ファイルをゲット by Anonymous Coward

原文のミスと訳注の勘違い (スコア:5, 参考になる)
コメントを書く
Re:[del]原文のミスと[/del]訳注の勘違い (スコア:2)
コメントを書く
親コメント
Re:[del]原文のミスと[/del]訳注の勘違い (スコア:3, 参考になる)
これは多分 autoindex の設定から勘違いしたんでしょうね。
IndexIgnoreの設定は標準では .??* *~ *# HEADER* README* RCS CVS *,v *,t となっていますので、autoindexでは表示されません。
URLで指定すればアクセスできてしまうのはたしかにそうですが。
コメントを書く
親コメント
Re:[del]原文のミスと[/del]訳注の勘違い (スコア:2)
真相:
大元のロシア語のポストにはちゃんと書いてあるし、設定例まで載っている。
TechCrunchが脚色しすぎていらんことつけたしちゃった。
さらに訳注でいらんこと書いちゃった。
コメントを書く
親コメント
Re:初歩的な翻訳ミスでオフトピに話題をさらわれる (スコア:1)
「たとえば、こんなパスになる」とか言って実在のドメイン名を書いちゃう発想も謎ですし。
これ書いた人ほんとにヒドいですね。
コメントを書く
親コメント
Re:初歩的な翻訳ミスでオフトピに話題をさらわれる (スコア:1)
あぁ・・・
ぶら下がるところが違いましたねすいません。
「まあ、‘ディレクトリリスティングを返さない’という構成にするのがふつうでしょう。」
は日本語記事を書いた人で、test.comは英語記事を書いた人でした。
# ロシア語読めないけど、元のロシア語の記事にtest.comって文字列はなく、example.comはありました。
コメントを書く
親コメント
試さないように (スコア:2, 興味深い)
鍵が掛かってなくてもドラクエもどきに家に入って箪笥を開けてはいけません。
#WEBサイト相手だと試すのがものすごく安易とはいえ、さぁ。
コメントを書く
Re:試さないように (スコア:4, おもしろおかしい)
徹夜で探してくれるそうです。
そのうち upload されるかも。
コメントを書く
親コメント
Re:試さないように (スコア:1, 参考になる)
「勝手に箪笥を開けて中を調べているッッ!
「特に金目のものがなかったから怒ってるみたいだッッッ!!
「ああッ!やくそうのひとつでも入れておけばよかったッッッッッ!!!
コメントを書く
親コメント
Re:試さないように (スコア:1)
ツボにカマイタチでも入れとけ。
ぽえんぷしゅう。
コメントを書く
親コメント
Re:試さないように (スコア:4, 興味深い)
ただ、今回の場合は対象のファイル群がアクセス制御下にあったとは言えないため、(日本の不正アクセス禁止法で言う)不正アクセスに該当するとは言い難いと思います。
例の件では、
ので不正アクセスである、とされました。
コメントを書く
親コメント
Re:試さないように (スコア:1)
コメントを書く
親コメント
Re:試さないように (スコア:1)
一つのプロトコルでアクセス制御がかかっているだけで即アウトというわけではないと思います。
リンク先のページで書かれているのは、アクセス制御機能の有無についてですよね。
アクセス制御機能の有無については、プロトコル毎に別々に考えるのではなく、計算機として持っているかを考えると。
しかし、不正アクセス禁止法で禁止されているのは、アクセス制御機能によって行われている制限を回避する事です。
実際、次のページ [cnet.com]では、
と書かれていますし、HTTPで公開されているコンテンツに関してはアクセス制限がかかっていないと考えていいと思います。
Office氏の件に関しては、#1644249 [slashdot.jp]でも書かれているように、HTTPで公開されていないファイルをCGIプログラムの脆弱性を利用してアクセスしたのが問題だったのでしょう。
コメントを書く
親コメント
この辺も危ないかな? (スコア:2, 興味深い)
Thumbs.db Windowsのサムネイルキャッシュ
.DS_Store Macのリソースフォークの残骸
たしかこれらのファイルって、同じフォルダのファイル一覧がばっちり入ってるような
コメントを書く
Re:この辺も危ないかな? (スコア:1, 参考になる)
今確認したけど、Thumbs.dbはWindows7で作られなくなってる様子。
desktop.iniも出来ないみたい。
再表示時にサムネイルが再生成されてる感じでもないので、きっとどっかで生成されてるんでしょう。
コメントを書く
親コメント
先生が狙ってる (スコア:2, 興味深い)
googleでとある技術について検索していて、
上位にどこかの企業のTracのwikiがヒットしたことがありました。
で、好奇心でリポジトリに対してデフォルトID/デフォルトパスワード叩いたら
ものの見事にログインできてしまって。
さすがにアレでしたので、
「外から丸見えですよ」ってメッセージ残して退散しました。
さすがに、次の日には塞がれてましたが。
// 色々とアレなのでACで
コメントを書く
セキュリティーグループ (スコア:2)
こういういたずらをして恥じない集団を「セキュリティーグループ」と呼ぶことには違和感があります。
まあ、これを機にウェブサーバーの設定を再確認しましょうということで。
コメントを書く
そ…それは単純にソースコードを盗まれる以上に痛い… (スコア:1)
最新のソースコードだけでなく、過去の間違いも全部盗まれるって事ですよね…
なんて場合が露呈することだ。当然「残っているソースコード中から同じパターンを探す」事をすれば、同じような間違いはまだ何個か残っているだろう。その中にはセキュリティホールになったり、裏技的な使い方ができたりするものも含まれているだろう。
というわけで、これはかなり手痛い場合がありえますね。
fjの教祖様
コメントを書く
Re:そ…それは単純にソースコードを盗まれる以上に痛い… (スコア:3, 参考になる)
例えばGitなら.gitの中身に履歴全部詰まってますし、git clone http://www.example.com/.git とか打てばまるっとクローンできますけど。 (SubversionのhttpアクセスにはDAVが要るけど、Gitは要らない。)
コメントを書く
親コメント
Re:そ…それは単純にソースコードを盗まれる以上に痛い… (スコア:3, おもしろおかしい)
あぁ… orz
かなり根本的なところを間違えてしもた。
# ついでに、私が普段リポジトリをどういう名前のディレクトリの下に置いているのかもばれてしもた…。
fjの教祖様
コメントを書く
親コメント
Re:そ…それは単純にソースコードを盗まれる以上に痛い… (スコア:2)
過去の間違いも全部ということはなくて、baseファイルだけかと。
# Webサーバ上に.svnやCVSがあるということは、Webサーバ上で
# ファイル更新を行っているケースが結構あるということなのかなあ。
コメントを書く
親コメント
Re:そ…それは単純にソースコードを盗まれる以上に痛い… (スコア:1)
最新のマニュアルを公開するのに、exportではなく、checkoutしたのをupdateしています。
毎回全部取り出すよりは差分だけの方が環境にやさしいかなと思いまして。
.svnに関してはSubversionに移行した時に気が付いたので、サーバ管理者に連絡してアクセスできなくして貰った [sourceforge.jp]という事があります。
コメントを書く
親コメント
Re:そ…それは単純にソースコードを盗まれる以上に痛い… (スコア:2)
ネットワーク負荷を下げるためなら rsync [samba.org] もお勧めです。 rsync だと転送元にも転送先にも管理用ファイルを作らずに差分だけ転送できます。
コメントを書く
親コメント
Re:そ…それは単純にソースコードを盗まれる以上に痛い… (スコア:1)
含まれていないと思いますが?
まぁ、.svnなら修正前のオリジナルはあるでしょうけど。
コメントを書く
親コメント
Re:そ…それは単純にソースコードを盗まれる以上に痛い… (スコア:1)
とりあえず、このへんにぶら下げましょうか。
mod_python なんかだと、(多分、mod_perl や php でも同じ)ソースコードに Basic認証の username/password を書けたりしちゃう [python.jp] ので、ソースを読まれたら相当痛い事になります。
例えば CGI を作成するときに、Apache の設定 [apache.jp]で、ScriptAlias [apache.jp] を使うのか、Options ExecCGI [apache.jp] を使うのかを比べてみると、前者の方は原則スクリプト以外は置けないので、そこやサブディレクトリにあるソースを読む事はできないことなんじゃないかと思います。
スクリプトと同じディレクトリに画像を置きたいとか、Apache でよくある事例なんですが、セキュリティ的には、スクリプトと同じディレクトリには置けない方が安全というような考察も必要ってことです。
コメントを書く
親コメント
Re:そ…それは単純にソースコードを盗まれる以上に痛い… (スコア:1)
すみません、mod_python の例は、こちら [python.jp] の方がよかったかも。
あと、推敲してるつもりが乱文になってますが、笑って見逃してください。m(__)m
コメントを書く
親コメント
似たような例として… (スコア:1)
で、tarボールを忘れたままほったらかしにして怒られたことがある。
コメントを書く
Re:似たような例として… (スコア:5, おもしろおかしい)
> tar ./www -f ../www.tar.gz
バックアップが取れていなくて怒られたのでは?
コメントを書く
親コメント
Re:そもそも (スコア:4, 興味深い)
ディレクトリごとそのままアップロードして.svnが乗っちゃうパターンじゃないでしょうか
ええ、今消しました・・・
コメントを書く
親コメント
Re:そもそも (スコア:2, 参考になる)
Subversion のリポジトリと公開用 Web サーバが同じで ssh で入るのも面倒なので
post-commit フックを使って svn update がかかるようにしています。
即時公開されるのもどうよ、という場合に対してはテスト用に同じ仕掛けを
してあるブランチも用意しています。
手軽で便利ではありますよ。
もちろん、Apache の設定ファイルで .svn 以下は deny してあります。
コメントを書く
親コメント
Re:ではさっそく対策を (-100: あくどい) (スコア:2)
あなたが通報されます。
コメントを書く
親コメント