Skip to content

Instantly share code, notes, and snippets.

@mala
Created August 1, 2014 08:11
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mala/250103a9281340b00330 to your computer and use it in GitHub Desktop.
Save mala/250103a9281340b00330 to your computer and use it in GitHub Desktop.
Amon2及び関連モジュールのセキュリティアップデートのお知らせ

概要

Amon2::Util::random_stringの生成する乱数の質に問題があったため、セキュリティ上の問題が発生する可能性があります。

現在のところ重要なセキュリティ修正としては告知されていません。技術的な詳細についてはアップデートが浸透してから公開される予定です。

影響を受けるモジュール

  • Amon2
  • Amon2::Plugin::Web::CSRFDefender
  • HTTP::Session2

推奨される対策

  • Amon2 を 6.04 以降にバージョンアップしてください。
  • Amon2::Plugin::Web::CSRFDefender を 7.01 以降にバージョンアップしてください。
  • HTTP::Session2 を 1.02 以降にバージョンアップしてください。
  • [重要] HTTP::Session2::ClientStore を使っている場合は、使用を中止するか、secretを再度生成してください。

モジュール別の影響と対策

HTTP::Session2::ClientStore

ClientStoreはcookie自体にシリアライズされたセッション情報を署名付きで埋め込む方式です。 amon2-setup.pl でアプリケーションの雛形を生成した場合、署名に使われるsecretがAmon2::Util::random_stringによって生成されます。 このsecretが漏洩した場合、改変されたセッションオブジェクトをサーバーに読み込ませることが可能になります。

  • セッションハイジャックが可能になります
  • アプリケーションの実装や、ロードしているモジュールによっては、任意のコード実行に繋がる可能性があります

推奨される対策

  • ClientStoreを使わないでください。代わりにServerStoreを使用してください。
  • どうしてもClientStoreを使用しなければならない場合は、安全な乱数生成装置を使ってsecretを再度生成してください。

Amon2::Plugin::Web::CSRFDefender

Amon2::Util::random_stringがCSRF対策に使われるtoken生成に使われているため、他人宛に発行されたCSRF tokenの予測が可能になります。

  • アプリケーション実行環境によっては現実的な試行回数でCSRF攻撃が成功する可能性があります。

推奨される対策

  • Amon2::Plugin::Web::CSRFDefender をアップデートしてください

子プロセスが親プロセスのseedを引き継いでしまうサーバー上でアプリケーションを実行している場合、CSRF tokenの予測がより容易になります。 こちらも合わせてアップデートを推奨します。参考: http://d.hatena.ne.jp/sfujiwara/20140526/1401083970

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment