カテゴリ:日常とか。

日常のだらだらした風景

2010/02/20

Pixivハック騒動。

超いまさらですが、一応解説しておこうかなとか思います。

今回の騒動にはCSRFと呼ばれる脆弱性が使われました。実は非常に定番となる脆弱性なのでこんな変な略称が付いています。mixiにもありましたしTwitterにもありましたし、確か2chでも昔騒動になった記憶があります。

仕組みとしてはわかってしまえば単純なものです。コメントの投稿のようなWebページへなにかを書きこむときというのは以下の手順になっています。

  1. コメント欄の投稿ボタンが押される
  2. 投稿ボタンに関連付けられたプログラムのURLへ情報が送信される
  3. 情報を受けとったプログラムは書きこみ処理を行う
  4. 結果を表示する

ポイントは2番目。つまり実際に表示されているコメント欄と処理を行うプログラムはまったく別モノで切り離されているというところです。コメント欄は欄を表示するだけ、そして書き込みを行うプログラムは書き込みを行って結果を返すだけです。

ゆえに書き込みを行うプログラムにどうやって情報を送ればいいかさえわかっていれば、コメント欄は別の人間が別のところに作ってしまうことも出来ます。というかコメント欄部分のHTMLソースをコピペして自分のページに貼りつければあら不思議、そのページからもコメントが出来てしまうじゃないですか。そこからちょいちょいっと改造してやれば、そこにアクセスしただけで勝手に適当な文章をコメントするページの出来上がりです。

対策は簡単です。上のものにひとつ手順を加えればいいだけです。

  1. コメント欄の投稿ボタンが押される
  2. 投稿ボタンに関連付けられたプログラムのURLへ情報が送信される
  3. 情報を受けとったプログラムはどこから情報が送られたかチェックする
  4. チェックが通った場合は書きこみ処理を行う
  5. 結果を表示する

つまりこの「どこから情報が送られたかチェックする」が無かったのが今回の脆弱性というわけです。チェックは当然無くても動きますし、誰も攻撃しなければ平和に済む話。ただ最初に書いたようにCSRFというのは非常に有名で、スタンダードな攻撃方法のひとつ。対策していて当然という考え方も出来ますし、みんなやられちゃう部分なんだからしょうがないねということも出来ます。

ちなみにウチのコメント欄は対策していません。理由は面倒だからです(笑。攻撃しちゃやーよ。

あ、あと仕組み上Pixivのアカウント情報はまったく盗まれていないこともわかるかと思います。勝手にコメントが投稿される特殊なコメント欄が書かれたページにアクセスしただけ、です。


で、クラック(ハック)というのはつまり、こういうミスりやすい部分や対策していない部分をついて攻撃を加えることです。しかしま、こういったミスりやすい部分というのは当然みんなに共有されています。面倒がらず事前に対策しておけば攻撃されることはありません。

アレです、指差し確認とかヒヤリ・ハットとかKY訓練とまったく同じ。安全帯しときゃ転落事故は防げるのに面倒だからしてなくってたまたま落ちて死んじゃった、とか、メット被っとけって言ってたのにたまたま被ってなかったところになんか落ちてきて死んじゃった、とか。そういった事故が起きたことを知っているのに、同じ事故は尽きることはない。最新版を使うのがいいとわかっちゃいるんだけど面倒だから、あるいは金銭的理由でやらない。クラックはその隙をついて攻撃するだけ。一度痛い目を見れば対策するので、ある意味で事故を起こしてあげていると言えなくもなく、実際そういう考え方のクラッカーはいます。

ドラマでキーボードかちゃかちゃやるのはその隙を探しているシーン、のはずです。たまーにちゃんとしてるのがあったりして、そういうときはニヤリと出来ます……って僕はほっとんどTV見ないので知りませんが。ブラッディ・マンデイはある程度はちゃんとしてたみたいですが、相手先がクラックされやすい環境へ難易度を落としてあったようです(笑


わかりづらかったかもしれない部分に少し追記をしときました。

あーしかし、今回のPixivの対策は過剰というか多少バグってますね。キャッシュを使われたときのことを考慮してないのかな。普通の状況だってのにコメントエラーが出る可能性があります、っていうかさっき出ました(笑。Pixivの場合リファラチェックだけで十分だろーに……。普通の現場でヘルメットを被ってないのは当然問題ですが、鋼鉄の鎧を着込むのはやりすぎです。とは言え、なかなか加減は難しいですけどね。


  1. 鍵介:プログラミングとかは専門外ですが、なるほど、なんとなく仕組みはわかったような気がします。pixivでもお知らせされてたので、もしかしたら深刻な問題だったのかと思ってたんですが、方法は思っていたよりも単純なものだったんですね。
  2. かくに:グフゥーッ!またしても物凄く解りやすい説明ありがとうございました。手順ひとつ足りないだけでこんなに簡単にやられてしまうんですね。ホントはもっと細かいんでしょうけど。それとドラマでのクラッカーの怪しい行動の謎もようやく解明されて今回もまた一つ賢くなりましたよ!ありがとうございました!!
  3. 管理人:鍵介さん > 実際のところ、世に出るほとんどの脆弱性はわかってしまえば単純なものばかりなんですよ。でもその結果は深刻です。それに今回はコメント欄だったからわかりやすかったですが、もし意図せず1点をつける攻撃だったとしたら発見はおもいっきり遅れたでしょうね……。っていうかちゃんとそこも対策しとけよpixiv。なんとなく未対策な気がするぞ。検証しないけどさ。 かくにさん > 脆弱性なんて漢字で書いてますが、たいがい「チェックひとつ足りない」だけです。マジで。 あとドラマの場合ほとんどは「怪しさの演出」だと思います(笑。ただがーってキーを打ちまくってりゃクラック出来るってわけではないです、はい。

名前

コメント

注:以下の条件に当てはまるコメントは無視されます

書いた日: 2010/02/20 00:18 カテゴリ:日常


作成:スラマイマラス
MSN : slime.haha@hotmail.co.jp (注:ここにメールを送られても読みません)

当サイトは基本的にNYSDLの元で公開されていますが、 引用されている文章、画像などは元の著作権所持者に帰属しますのでご注意ください。

当サイトへのリンクはどのような形(普通のリンク、直リンク、ディープリンク、隠しリンク)であろうとも、歓迎します。

一番上へ