DiffDaily Deep & Concise - OSS変更の定点観測
トップに戻る

heartcombo/devise

https://github.com/heartcombo/devise

Devise 5.0.4リリース:`FailureApp`のオープンリダイレクト脆弱性を修正

Devise 5.0.4がリリースされ、セッションタイムアウト時の非GETリクエストで`Referer`ヘッダーを検証せずリダイレクト先として使用していたオープンリダイレクト脆弱性(GHSA-jp94-3292-c3xv)が修正されました。`lib/devise/version.rb`のバージョンを`5.0.3`から`5.0.4`へ更新するリリースコミットです。

2026年05月08日 Claude Sonnet 4.6

`FailureApp`の非GETタイムアウトリダイレクトにおけるオープンリダイレクト脆弱性を修正

Deviseの`Timeoutable`モジュール有効時に、非GETリクエストでセッションタイムアウトが発生すると`FailureApp#redirect_url`が`Referer`ヘッダーを無検証でリダイレクト先として返す脆弱性(CVE-2026-40295)が修正されました。修正は`request.referrer`を既存の`extract_path_from_location`でラップしてホスト部分を除去する1行の変更であり、GETタイムアウトと非GETタイムアウトのリダイレクト処理が共通の保護ロジックに統一されています。

2026年05月08日 Claude Sonnet 4.6

Confirmableのメール変更フローにおける競合状態の脆弱性を修正

DeviseのConfirmableモジュールにおけるメールアドレス変更フローで、並行リクエストを悪用して他者のメールアドレスを確認済みにできる競合状態の脆弱性が修正されました。`postpone_email_change_until_confirmation_and_regenerate_confirmation_token` メソッドに `devise_unconfirmed_email_will_change!` を追加し、ORMのDirty TrackingによるSQL省略を防ぐことで、`unconfirmed_email` が常にUPDATE文に含まれるよう強制します。Active RecordとMongoidのORM差異を吸収するラッパーメソッドも新設されています。

2026年03月17日 Claude Sonnet 4.6

パスワードリセット後の自動サインインをカスタマイズ可能に

Deviseに、パスワードリセット後の自動サインイン動作をオーバーライド可能な `sign_in_after_reset_password?` メソッドが追加されました。`protected` スコープで定義されたこのメソッドにより、コントローラ全体をコピーすることなく、サインイン判定ロジックを柔軟にカスタマイズできるようになります。

2026年02月18日 Claude Sonnet 4.5

モデルごとにパスワード変更後の自動サインイン設定を可能に

Deviseで、パスワード変更後の自動サインイン動作をモデル単位で制御できるようになりました。`RegistrationsController`の`sign_in_after_change_password?`メソッドが、グローバル設定ではなくリソースクラスの設定を参照するように変更され、マルチテナントアプリケーションなどで異なるセキュリティポリシーを適用できるようになります。

2026年02月18日 Claude Sonnet 4.5

パスワードリセットボタンの文言を文法的に正しい表現に修正

DeviseのSimple Formジェネレータで生成されるパスワードリセット画面のボタン文言を "Send me reset password instructions" から "Send me password reset instructions" に修正。#5515で行われた標準ERB版の修正をSimple Form版にも適用し、テンプレート間の一貫性を確保した変更です。

2026年02月18日 Claude Sonnet 4.5

認証キーの大文字小文字処理を改善し、ドイツ語の「E-Mail」表記を修正

Devise 5.0で導入された認証キーの小文字化処理を改善し、ドイツ語の「E-Mail」表記問題を修正。文字列全体ではなく最初の1文字のみを小文字化することで、英語の文法とドイツ語の表記ルールの両方に対応しました。

2026年02月13日 Claude Sonnet 4.5

README内のminitestの表記を「minitest」に統一

DeviseのREADMEで使用されていたテストフレームワーク名の表記が、minitest公式ドキュメントの表記に合わせて「Mini Test」から「minitest」に修正されました。

2026年02月13日 Claude Sonnet 4.5

© 2026 DiffDaily - Powered by AI

タケユー・ウェブ