Tomcat 9.0.69 のリリースノート

このドキュメントは 2022 年 11 月 14 日にリリースされた Tomcat 9.0.69 のリリースノートの日本語訳です。
ダウンロードは Tomcat ダウンロードより行えます。
以下はリリースの詳細と、最新情報およびドキュメントを補足するその他情報について記載しています。

脆弱性修正

* Apache Tomcat JsonErrorReportValve インジェクション CVE-2022-45143: JsonErrorReportValve は、タイプ、メッセージ、デスクリプションの値のエスケープ処理を行っていませんでした。場合によっては、これらの値はユーザが提供するデータから組み立てられるので、JSON 出力を無効化したり、何らかの操作を行ったりするような値をユーザが提供することが可能となっていました。この問題が修正されました。(CVE-2022-45143)

不具合修正(Catalina)

* 62897 の修正で入ったリグレッションが修正されました。このリグレッションは、Context の skipMemoryLeakChecksOnJvmShutdown の設定が何であれ無視されてしまい、常にデフォルトが使われてしまうものでした。(66330)

* SystemLogHandler 上の Stack のリファクタリングの際のリグレッションが修正されました。このリグレッションは誤った例外を捕捉していました。(66331)

* ErrorReportValve のリファクタリングの際に微妙な違いをもたらすリグレッションが修正されました。(66338)

* 常に正しい JSON を出力することを保証するために、JsonErrorReportValve 用の出力を構成する際にエスケープされた値が使われるようになりました。

不具合修正(Coyote)

* HTTP クッキーの expires 属性で使われる日付のフォーマットが修正されました。RFC 6265 に適合するためには、日、月、年を区切る際に一個のダッシュではなく一個の空白を使用すべきでした。

不具合修正(Jasper)

* 62080 の問題を扱うために追加されたスレッドコンテキストのクラスローダを得るための特権ブロックの使用がオプションとなり、デフォルトでは無効化されました。これは、org.apache.el.GET_CLASSLOADER_USE_PRIVILEGED システムプロパティで調整されるようになりました。(66294)

* ラムダ式を含む式言語の評価の並列性の問題が修正されました。(66325)

機能追加・改良(Catalina)

* Web アプリケーションの使用期間中ずっと保持されるよう、JAR ファイルのインデックスに bloom フィルターを使用することを許可する設定オプションが追加されました。この追加の前は、WebResourceRoot.gc() の定期的な呼び出しにより常にフラッシュされていました。この追加の一環として、アーカイブのインデックス処理の設定は Conext から WebResourceRoot に移動されました。(66029)

機能追加・改良(Coyote)

* ストリームが書き込みを許さない状態にあるときに、そのストリームへの書き込みを試みたことにより、ストリームがキャンセルされた場合のエラーメッセージに現在のストリームの状態名が含まれるようになりました。

* NIO の書き込みが -1 を返すことはないので、CLOSED_NIO_CHANNEL も -1 を返さないようにリファクタリングを行い、この戻り値の検査が削除されました。

* asyncTimeout を、それを決して使うことのないコンポーネントに公開していた不要なコードが削除されました。

機能追加・改良(Other)

* Commons Daemon のバージョンが 1.3.2 に更新されました。

* 中国語翻訳が改善されました。

* フランス語翻訳が改善されました。

* 日本語翻訳が改善されました。

詳細は以下をご覧ください。

https://tomcat.apache.org/security-9.html#Fixed_in_Apache_Tomcat_9.0.69
https://tomcat.apache.org/tomcat-9.0-doc/changelog.html#Tomcat_9.0.69_(remm)