パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

ミクシィ、画像に認可制御なしの欠陥を改修できず、ヘルプで弁解」記事へのコメント

  • パスの一部をCGIとして動かせるはずだ。というわけで、どこかにチェック用CGIでも置けばいんじゃね?
    # 対策のために鯖を増強する金が惜しいというのが本音なような気がする。
    • CTO講演などによると、現状でmixiの画像サーバーはAkamaiの利用を含めてかなりの負荷対策をしているらしいので、チェック用CGIを入れたら負荷に耐えられないのではないでしょうか。

      理論的には出来るけど、現実的に出来ていないと。
      (もちろん会員以外から画像が見えてしまう事に対するプライオリティが低いというのもありそうですが)
      --
      Masafumi Otsune [otsune.com]
      親コメント
      • by yoosee (196) on 2006年10月18日 17時13分 (#1039763) ホームページ 日記
        Akamaiを使っているのは img.mixi.jp で、これは mixi の共通画像(UIのボタンや背景)やプロフィール写真、コミュニティ画像などの表示頻度が高くて変更頻度が低いものに使われているようです。

        img.mixi.jp CNAME img.mixi.jp.edgesuite.net
        img.mixi.jp.edgesuite.net CNAME a899.g.akamai.net

        日記などの、登録後数日でアクセスが殆んど無くなるような画像は img*.mixi.jp や ic*.mixi.jp などの mixi が持っているサーバに割り当てられているようです。Akamaiを使っている部分は難しいとしても、せめてこちらだけでもなんとか出来ないのかなと思いますが。
        親コメント
    • by Anonymous Coward on 2006年10月18日 13時25分 (#1039545)
      実際、mixiの日記の画像表示は
      http://mixi.jp/show_picture.pl?img_src=http://ic**.mixi.jp/photo/diary... [mixi.jp]
      みたいに、cgiを介してるんですよねえ。
      なのに、パラメータ指定されているURLに直接アクセスできる謎仕様。
      親コメント
      • Re:apacheだとすると (スコア:2, おもしろおかしい)

        ic**.mixi.jpをグローバルIPでなく、ローカルIPにしておけば…なんて、安直に考えてしまった。
        --

        /* Kachou Utumi
        I'm Not Rich... */
        親コメント
      • んーと、mixi.jpの方は認証されてるからそのままでいいんだ。問題はic**.mixi.jpの方で、こっちがだだ漏れになってるんだから例えば「ic**.mixi.jp/photo」っていうCGIを置こうよって話。そういうCGIがあるとapacheだとhttp://ic**.mixi.jp/photo/diary/**/**/**.jpgをアクセスしたときにそのCGIが動いてくれる。
        # その場合QUERY_STRINGは空になってるから代わりにURLの方をパースする。
        親コメント
        • まあ、その手のCGIを入れた場合の処理は、単純に実装するとこうなりますが、軽いんですかね?

          1. クッキーよりセッションキーを取得
          2. セッションキーよりユーザーIDを取得
          3. ユーザーIDに基づき、可視性を判断
          3-1. 画像のURL (path) より表示されている場所を特定
          3-2. 表示されている場所がコミュニティの場合
          3-2-1. if (コミュニティが公開されている) 表示
          3-2-2. else if (コミュニティにユーザーIDが属している) 表示
          3-2-3. else 不表示
          3-3. 表示されている場所がユーザースペースの場合
          3-3-1. if (ユーザースペースは画像を公開する設定) 表示
          3-3-2. ユーザーIDとユーザースペース所有者の関係の特定
          3-3-3. if (ユーザーIDとユーザースペース所有者が友人の場合) 表示
          3-3-4. ユーザーIDとユーザースペース所有者が友人の友人の場合
          3-3-4-1. if (ユーザースペース所有者は友人の友人に表示を許可している) 表示
          3-3-4-2. else 非表示

          ...というのを日記やプロフィール表示の場合は毎回やりますが、それを画像にまで広げるとさすがに負荷が高くなり過ぎないですかね?
          URLの類推可能性はそんなに高くなく、画像が格納される場所のURL空間もかなり広いので脆弱ではあってもそんなに大きな問題にはならないのではないかと思うのですよね。
          ここを保護してもダウンロードしてバラまかれたら意味ないわけですし。

          もちろん、mixi運営部にもわかるようなブルートフォース攻撃をかければmixi内の全ての画像はゲットできますが、それには404 not foundを連続して出しているIPアドレスにペナルティを課す等の別の対策で十分何とかなるのではないかと思います。
          親コメント
        • by Anonymous Coward
          だからic**.mixi.jpに直接アクセスできなきゃいいんじゃね?って言ってるのですが。
    • by Anonymous Coward
      まったくです。認証してからバイナリで書き出せば済む話。
      サブドメインが障害になるのなら、ログイン時にリダイレクトして両方で認証すればいい。

      何のために株式上場して資本を集めたのか。
    • by Anonymous Coward
      確かmixi.jpのほうはlighttpdだった気がする。

吾輩はリファレンスである。名前はまだ無い -- perlの中の人

処理中...