DENJULOで任意のアカウントを削除できてしまう脆弱性

ウェブの脆弱性

記事をご覧の方へ

現在vivibit.netは旧システムからの移行に伴い修正作業を行っています。
表示上の問題や軽微なエラーが発生する可能性がありますが、ご利用に問題はありません。
また、現在一部ファイルのダウンロードができなくなっています。
順次対応予定ですが、お急ぎの場合や問題を発見された場合はコメント欄でご指摘いただけると助かります。


みなさんご存じの神サービスことScrapeApeを作った人としても知られる元井 伝十郎さんですが、そもそも彼が大々的に打ち出した最初のサービスはDENJULOでした。
DENJULOに関してはktm@sが検証したり、伝十郎さんに煽られたと思ったらそれがなかったことにされたりと紆余曲折がありましたが今回新たな脆弱性が発見されましたのでここで報告させていただきます。

当ブログでの公開という事態に関しては後述いたします。

どのような脆弱性か

攻撃者により、任意のユーザアカウントを削除できてしまう脆弱性です。
これはユーザ削除フォームにおける、次の2点の不適切な処理に起因します。

  1. セッション情報と紐づけされているはずのユーザIDと、削除フォームで送信されるユーザIDの一致検証を行っていない
  2. ユーザアカウントの削除をする際にパスワードの入力を求めていない

これらの不適切な処理により、攻撃者は削除フォームに含まれるID情報を書き換えることによって任意のユーザアカウントを削除できてしまうことを確認いたしました。
CSRF対策としてFuelのtokenが埋め込まれていますが、対象ユーザに攻撃コードを踏ませるまでもなく任意のユーザアカウントを削除できてしまうことになり、不十分な対策しかなされていませんでした。

なぜこのような脆弱性が存在したのか

ひとえに、基礎を学んでいないということになるでしょう。
CSRF対策さえしておけば大丈夫!しかもそれはフレームワークがやってくれる!という安易な発想があったものと思われます。
私も「動いているからそれでいい」というのは、ちょっと違う気がします。

当ブログでの公開に至った経緯

この脆弱性を見つけた後、伝十郎さんにコンタクトをとろうと彼のブログに以下のコメントを投じましたが掲載承認を受けるどころか削除されました。
その後 彼のブログには新しい記事が掲載されていたので「時間がなかった」という好意的な解釈も、今回はできません。

投げたコメント

以前も述べた通り、これら一連の行動からユーザよりも自身のメンツを重視する姿勢が伺えます。
ブログにこのコメントが残るのが恥ずかしいということも考えられましょう。
しかし私はメールアドレスも同時に送信していたので、もしそうであればコメントを削除する前に交渉すればよかっただけのことです。
そもそも、これほどの大きな脆弱性が存在していたことをサイレント修正するというのは有償サービスの運営としてどうなのかという疑問があるため、コメント掲載を求めただけであります。
精進していただきたいと述べましたが、3か月経ってもそこは変わらぬままということでした。
とはいえ、私が投げたコメントにはユーザが削除できる脆弱性というような具体的な表現がなかったので、ことの重大さに気づけなかったのかもしれませんね。

どうであれ、一刻も早い修正が必要であるため、および修正されない可能性もあるために この脆弱性を公開するに至りました。
実際の攻撃手法を具体的に記していないあたりまだ急かしきれていないかもしれません。

とにかく、さっさと直せ。
以上です。

コメント

  1. Anonymous より:

    伝十郎さんって谷垣 基ですよ、下記のサイト見ればわかります。
    https://www.wantedly.com/users/638322

    偽名でこういう表記って完全にアウトだと思うんだけど。。
    http://denjulo.com/fuel/public/index.php/auth/commerciallow

  2. nk. nk. より:

    名無しさん。
    コメントいただきありがとうございます。

    > 伝十郎さんって谷垣 基ですよ、下記のサイト見ればわかります。
    存じております。とはいえ、例えば圓楽師匠を「會さん」と呼ぶのは野暮ではないでしょうか。

    > 偽名でこういう表記って完全にアウトだと思うんだけど。。
    以前同じ疑問をもちまして調べました。
    「登記された商号」での登録はOKのようです。
    以下が参考になるかと思います。
    http://www.no-trouble.go.jp/search/what/P0204004.html#sale-part2-eight

    ただし、商業登記に記載された商号であるかどうかまでは確認いたしておりません。
    以下のサイトから確認できるようです。
    http://www.moj.go.jp/MINJI/minji06_00076.html

    むしろ、トップページに掲載されている
    「業界最安値にてサービスをお使いいただけます。さらに今なら、無料お試しキャンペーンから始めることができます。」
    という宣伝文が「不当景品類及び不当表示防止法」に抵触するのではないかと考えています。具体的には、「今なら」と書いてますがずっと「無料お試しキャンペーン」を行っていますし、「業界最安値」に「合理的な根拠を示す資料」が伴っていません。
    http://www.caa.go.jp/representation/keihyo/qa/hyoujiqa.html#Q13

  3. Anonymous より:

    なるほど勉強になりました。まぁ登記はしてないでしょうね

  4. nk. nk. より:

    登録されているかどうかを調べていない以上、そのことに関しては断定できませんね。調べる価値もないので放置しているのですが。

    ただ、不当表示に関する知識がないのは営業職として如何なものか、という疑問は抱かざるを得ません。言葉巧みに騙してでも売り上げればよし、というメンタリティの現れかもしれないなあと思っております。

タイトルとURLをコピーしました