リリースノート
新しい機能、既知の問題、および解決済みの問題
概要
多様性を受け入れるオープンソースの強化
Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。まずは、マスター (master)、スレーブ (slave)、ブラックリスト (blacklist)、ホワイトリスト (whitelist) の 4 つの用語の置き換えから始めます。この取り組みは膨大な作業を要するため、用語の置き換えは、今後の複数のリリースにわたって段階的に実施されます。詳細は、Red Hat CTO である Chris Wright のメッセージ をご覧ください。
第1章 はじめに
この製品を使用しているすべてのお客様は、Migration Toolkit for Applications への移行を開始する必要があります。
Migration Toolkit for Applications は、Migration Toolkit for Runtimes で利用可能なすべての機能およびルールセットと完全に下位互換性があり、長期にわたりメンテナンスされます。
Migration Toolkit for Runtimes (MTR) は、JBoss Enterprise Application Platform (EAP) 7 から 8 への移行や、他のアプリケーションサーバーから EAP への大規模な移行など、Java アプリケーションの移行とモダナイゼーションを簡素化する、拡張可能でカスタマイズ可能なルールベースのツールを提供します。MTR は、Migration Toolkit for Applications 5 リリースで提供されるものと同じ移行ソリューションを提供します。
これらのリリースノートは、MTR 1.2 のすべての Z-stream リリースを対象としており、最新のリリースが最初にリストされています。
第2章 MTR 1.2.7
2.1. 既知の問題
MTR 1.2.7 リースには次の既知の問題があります。
既知の問題の完全なリストは、Jira の MTR 1.2.7 の既知の問題 を参照してください。
2.2. 解決した問題
MTR 1.2.7 では、次の問題が解決されています。
MTR 1.2.0 が java.lang.ClassNotFoundException:org.eclipse.text.edits.MalformedTreeException
の例外エラーで失敗する
MTR 1.2.z の以前のバージョンでは、アプリケーションを JBoss Enterprise Application Platform (EAP) 7 から EAP 8 に移行すると、次の java.lang.ClassNotFoundException
で失敗する可能性がありました。
java.lang.ClassNotFoundException: org.eclipse.text.edits.MalformedTreeException from [Module "org.jboss.windup.ast.windup-java-ast:6.3.1.Final-redhat-00002_67e96e90-d3bc-44fe-8fc8-ac2abdeacc58" from AddonModuleLoader]
java.lang.ClassNotFoundException: org.eclipse.text.edits.MalformedTreeException from [Module "org.jboss.windup.ast.windup-java-ast:6.3.1.Final-redhat-00002_67e96e90-d3bc-44fe-8fc8-ac2abdeacc58" from AddonModuleLoader]
この問題は MTR 1.2.7 で解決されました。(WINDUP-4200)
CVE-2022-36033: org.jsoup/jsoup
: SafeList.preserveRelativeLinks が有効になっている場合、jsoup クリーナーは細工された XSS 試行を誤ってサニタイズする可能性がある。
HTML 編集、クリーニング、スクレイピング、クロスサイトスクリプティング (XSS) の安全性を確保するために構築された Java HTML パーサーである jsoup
に不具合が発見されました。
jsoup
の問題が原因で、javascript: URL 式を含む HTML が誤ってサニタイズされる可能性があり、その後、リーダーがそのリンクをクリックすると XSS 攻撃が発生する可能性があります。デフォルト以外の SafeList.preserveRelativeLinks オプションが有効になっている場合、制御文字で作成された javascript: URL を含む HTML はサニタイズされません。この問題を解決する MTR 1.2.7 にアップグレードすることが推奨されます。
詳細は、(2022-36033) を参照してください。
このリリースで解決された問題の完全なリストは、Jira の MTR 1.2.7 の解決済み問題 を参照してください。
第3章 MTR 1.2.6
3.1. 既知の問題
MTR 1.2.6 リリースには次の既知の問題があります。
SEVERE [org.jboss.windup.web.services.messaging.PackageDiscoveryMDB]
エラーが原因でアプリケーションを MTR に移行できない
分析のためにファイルをアップロードすると、サーバーログに SEVERE [org.jboss.windup.web.services.messaging.PackageDiscoveryMDB]
エラーが返されます。このエラーは null: java.lang.NullPointerException
によって発生します。(WINDUP-4189)
既知の問題の完全なリストは、Jira の MTR 1.2.6 既知の問題 を参照してください。
3.2. 解決した問題
MTR 1.2.6 では、次の問題が解決されています。
CVE-2024-1132: org.keycloak-keycloak-parent
: Keycloak のリダイレクト検証におけるパストラバーサル
リダイレクトに含まれる URL が適切に検証されないという不具合が Keycloak で発見されました。この不具合により、攻撃者が悪意のあるリクエストを作成して検証を回避したり、ドメイン内の他の URL や機密情報にアクセスしたり、さらなる攻撃を実行する可能性があります。この問題を解決する MTR 1.2.6 にアップグレードすることが推奨されます。
詳細は、(CVE-2024-1132) を参照してください。
CVE-2023-45857: Axios 1.5 により Cookie に保存された機密データが公開される
Axios 1.5.1 に不具合が発見されました。この不具合により、Cookie に保存されている機密情報の XSRF-TOKEN
が、ホストに対するすべてのリクエストの HTTP ヘッダー X-XSRF-TOKEN
に追加されて誤って公開されていました。結果として、攻撃者が機密情報を閲覧できる状態になっていました。この問題を解決する MTR 1.2.6 にアップグレードすることが推奨されます。
詳細は、(CVE-2023-45857) を参照してください。
CVE-2024-28849: follow-redirects
パッケージが認証ヘッダーをクリアする
follow-redirects
パッケージに不具合が見つかりました。このパッケージは認証ヘッダーをクリアしますが、proxy-authentication
ヘッダーをクリアできません。この不具合により認証情報の漏洩が発生し、データの機密性に大きな影響を与える可能性があります。この問題を解決する MTR 1.2.6 にアップグレードすることが推奨されます。
詳細は、(CVE-2024-28849) を参照してください。
CVE-2024-29131: Apache Commons 設定における境界外書き込みの脆弱性
Apache Commons-Configuration2 に脆弱性が見つかりました。AbstractListDelimiterHandler.flattenIterator()
メソッドにプロパティーを追加すると、スタックオーバーフローエラーが発生する可能性があります。この問題により、脆弱なメソッドによって処理されたときに境界外書き込みの問題を引き起こす悪意のあるプロパティーを攻撃者が作成し、メモリーを破壊したり、サービス拒否 (DoS) 攻撃を実行したりする可能性があります。この問題を解決する MTR 1.2.6 にアップグレードすることが推奨されます。
詳細は、(CVE-2024-29131) を参照してください。
CVE-2024-29133: Apache Commons 設定における境界外書き込みの脆弱性
Apache Commons-Configuration2 に脆弱性が見つかりました。循環オブジェクトツリーで ListDelimiterHandler.flatten(Object, int)
メソッドを呼び出すと、スタックオーバーフローエラーが発生します。この問題により、攻撃者が境界外書き込みをトリガーして、メモリー破損を引き起こしたり、サービス拒否 (DoS) 攻撃を引き起こしたりする可能性があります。この問題を解決する MTR 1.2.6 にアップグレードすることが推奨されます。
詳細は、(CVE-2024-29133) を参照してください。
CVE-2024-29180: webpack-dev-middleware
の URL 検証の欠如によりファイル漏洩が発生する可能性がある
webpack-dev-middleware
パッケージに不具合が見つかりました。ローカルファイルを返す前に、提供された URL アドレスを十分に検証できませんでした。この不具合により、攻撃者が URL を作成し、開発者のマシンから任意のローカルファイルを返すことができます。ミドルウェアを呼び出す前に正規化が行われていなかったため、攻撃者はターゲット環境に対してパストラバーサル攻撃を実行することもできます。この問題を解決する MTR 1.2.6 にアップグレードすることが推奨されます。
詳細は、(CVE-2024-29180) を参照してください。
CVE-2023-4639: org.keycloak-keycloak-parent
undertow Cookie のスマグリングとスプーフィング
Undertow に不具合が見つかりました。この不具合により、受信リクエスト内の特定の値区切り文字を含む Cookie が誤って解析されます。この脆弱性により、攻撃者が Cookie 値を作成して HttpOnly
Cookie 値を傍受したり、任意の追加の Cookie 値を偽装したりして、不正なデータアクセスやデータ変更を行う可能性があります。この問題を解決する MTR 1.2.6 にアップグレードすることが推奨されます。
詳細は、(CVE-2023-4639) を参照してください。
CVE-2023-36479: com.google.guava-guava-parent
が Jetty CGI サーブレットのユーザー入力に引用符を不適切に追加する
Jetty の org.eclipse.jetty.servlets.CGI
サーブレットに不具合が見つかりました。この不具合により、要求されたファイル名に特定の文字が含まれているリクエストなど、特定の状況で誤ったコマンドの実行が許可されます。この問題により、攻撃者が、要求されたコマンドに加え、許可されたコマンドを実行する可能性があります。この問題を解決する MTR 1.2.6 にアップグレードすることが推奨されます。
詳細は、(CVE-2023-36479) を参照してください。
CVE-2023-26364: css-tools
の不適切な入力検証によりサービス拒否が発生する
@adobe/css-tools
に不具合が見つかりました。この不具合により、CSS を解析する際に軽度のサービス拒否 (DoS) が発生する可能性があります。ユーザーインタラクションや権限がなくても、環境を危険にさらすことができます。この問題を解決する MTR 1.2.6 にアップグレードすることが推奨されます。
詳細は、(CVE-2023-26364) を参照してください。
CVE-2023-48631: css-tools
: 正規表現によるサービス拒否
@adobe/css-tools
に不具合が見つかりました。この不具合により、CSS の解析を試行する際に正規表現によるサービス拒否 (ReDoS) が発生する可能性があります。この問題を解決する MTR 1.2.6 にアップグレードすることが推奨されます。
詳細は、(CVE-2023-48631) を参照してください。
このリリースで解決された問題の完全なリストは、Jira の MTR 1.2.6 の解決済み問題 を参照してください。
第4章 MTR 1.2.5
4.1. 新機能
Migration Toolkit for Runtimes (MTR) 1.2.5 には、次の新機能があります。
MicroProfile メトリクスのルールセットが新しくなりました
MicroProfile (MP) メトリクスの古いルールセットは、新しいルールセットに置き換わりました。(WINDUPRULE-1043)
MicroProfile OpenTracing のルールセットが新しくなりました
MicroProfile (MP) OpenTracing の古いルールセットは、新しいルールセットに置き換わりました。(WINDUPRULE-1044)
4.2. 既知の問題
この Migration Toolkit for Runtimes (MTR) 1.2.5 リリースは、重大な既知の問題はありません。
既知の問題の完全なリストは、Jira の MTR 1.2.5 の既知の問題 を参照してください。
4.3. 解決した問題
Migration Toolkit for Runtimes (MTR) 1.2.5 では、次の問題が解決されています。
CVE-2024-25710 commons-compress: 無限ループによるサービス拒否
Apache Common Compress に、到達不可能な終了条件を持つループ (つまり無限ループ) の脆弱性が見つかりました。この問題により、サービス拒否が発生する可能性があります。この問題は、Apache Commons Compress: 1.3 から 1.25.0 に影響します。この問題を解決する MTR 1.2.5 にアップグレードすることが推奨されます。
詳細は、(CVE-2024-25710) を参照してください。
CVE-2024-26308 commons-compress: OutOfMemoryError
Apache Commons Compress に、制限のないリソースの割り当てやスロットリングの脆弱性が見つかりました。この問題により、メモリー不足エラー (OOM) が発生する可能性があります。この問題は、Apache Commons Compress 1.21 から 1.26 に影響します。この問題を解決する MTR 1.2.5 にアップグレードすることが推奨されます。
詳細は、(CVE-2024-26308) を参照してください。
CVE-2024-1300: Eclipse Vert.x ツールキットの脆弱性により、TLS および SNI サポートが設定された TCP サーバーでメモリーリークが発生します。
Eclipse Vert.x ツールキットの脆弱性により、TLS および SNI サポートが設定された Transmission Control Protocol (TCP) サーバーでメモリーリークが発生します。マップされた証明書ではなく、デフォルトの証明書が割り当てられた不明な Server Name Indication (SNI) サーバー名を処理すると、Secure Sockets Layer (SSL) コンテキストがサーバー名マップ内に誤ってキャッシュされ、メモリー不足が発生します。これは、SNI が有効になっている TLS サーバーにのみ影響します。この問題を解決する MTR 1.2.5 にアップグレードすることが推奨されます。
詳細は、(CVE-2024-1300) を参照してください。
このリリースで解決された問題の一覧は、Jira で MTR 1.2.5 解決済みの問題 リストを参照してください。
第5章 MTR 1.2.4
5.1. 新機能
このセクションでは、Migration Toolkit for Runtimes (MTR) 1.2.4 の新機能を説明します。
- 新しいルールは、Red Hat JBoss Enterprise Application Platform (EAP 7) から EAP 8 への移行をサポートします。
- 新しいルールは、Jakarta EE アプリケーションの Quarkus への移行をサポートします。
5.2. 既知の問題
既知の問題の完全なリストは、Jira の MTR 1.2.4 の既知の問題 を参照してください。
5.3. 解決した問題
CVE-2023-26159: 1.15.4 より前の follow-redirects
パッケージは、入力検証が不適切な場合に脆弱である
1.15.4 より前の follow-redirects
パッケージのバージョンは、入力検証が不適切な場合に脆弱です。この脆弱性は、url.parse()
関数による URL の不適切な処理が原因で発生します。新しい URL がエラーを返すと、ホスト名を誤って解釈するように操作される可能性があります。攻撃者はこの弱点を悪用してトラフィックを悪意のあるサイトにリダイレクトするため、情報漏洩、フィッシング攻撃、その他のセキュリティー侵害につながる可能性があります。
詳細は、(CVE-2023-26159) を参照してください。
CVE-2022-25883: 正規表現サービス拒否 (ReDoS) の脆弱性が、node-semver
パッケージで発見された。
7.5.2 より前のバージョンの semver
npm パッケージは、正規表現サービス拒否 (ReDoS) に対して脆弱です。この ReDoS 脆弱性は、信頼できないユーザーデータが範囲として提供される場合の new Range
関数に起因します。
詳細は、(CVE-2022-25883) を参照してください。
CVE-2023-26136: 4.1.3 より前の tough-cookie
パッケージはプロトタイプ汚染に対して脆弱である。
4.1.3 より前の tough-cookie
パッケージのバージョンは、プロトタイプ汚染に対して脆弱である。この脆弱性は、rejectPublicSuffixes=false
モードで CookieJar
を使用する場合の Cookie の不適切な処理が原因で発生します。この問題は、オブジェクトの初期化方法に起因して発生します。
詳細は、(CVE-2023-26136) を参照してください。
CVE-2023-35116: 2.15.2 より前の jackson-databind
は、サービス拒否またはその他の不特定の影響に対して脆弱である。
2.15.2 より前のバージョンの jackson-databind
ライブラリーは、循環依存関係を使用するオブジェクトを細工したものを使用したサービス拒否 (DoS) 攻撃やその他の不特定の影響に対して脆弱です。
詳細は、(CVE-2023-35116) を参照してください。
このリリースで解決された問題の一覧は、MTR 1.2.4 解決済みの問題 の一覧を参照してください。
第6章 MTR 1.2.3
6.1. 新機能
このセクションでは、Migration Toolkit for Runtimes (MTR) 1.2.3 の新機能を説明します。
- Camel 4.1 の新しいルールのサポート。
- 新しいルールは、Java EE アプリケーションの Quarkus への移行をサポートします。
6.2. 既知の問題
既知の問題の完全なリストは、Jira の MTR 1.2.3 の既知の問題 を参照してください。
6.3. 解決した問題
CVE-2023-1436 org.keycloak-keycloak-parent: Jettison: JSONArray での制御されていない再帰
MTR で利用されていた Jettison の欠陥により、要素の 1 つが自己参照するコレクションから JSONarray
を構築するときに無限再帰が引き起こされます。この欠陥により StackOverflowError
例外がスローされます。(WINDUP-3772)
詳細は、CVE-2023-1436 を参照してください。
このリリースで解決された問題の一覧は、MTR 1.2.3 解決済みの問題 の一覧を参照してください。
第7章 MTR 1.2.2
7.1. 既知の問題
既知の問題の完全なリストは、Jira の MTR 1.2.2 の既知の問題 を参照してください。
7.2. 解決した問題
CVE-2023-44487 netty-codec-http2: HTTP/2: 複数の HTTP/2 対応 Web サーバーが DDoS 攻撃 (ラピッドリセット攻撃) からの影響を受けます。
Migration Toolkit for Runtimes (MTR) で使用される HTTP/2 プロトコルでの多重化ストリームの処理に欠陥が見つかりました。クライアントは、新しい多重化ストリームの要求を繰り返し行い、すぐに RST_STREAM
フレームを送信してそれをキャンセルする可能性があります。これにより、接続ごとのアクティブなストリームの最大数に関するサーバー側の制限を回避しながら、ストリームのセットアップと削除に関してサーバーに追加のワークロードが発生し、サーバーリソースの消費によるサービス拒否が発生します。(WINDUP-4072)
詳細は、(CVE-2023-44487) を参照してください。
CVE-2023-37460 plexus-archiver: AbstractUnArchiver での任意のファイル作成
MTR で使用されていた Plexus Archiver に欠陥が見つかりました。 AbstractUnArchiver
を使用して抽出すると、アーカイブにより任意のファイルが作成され、リモートコード実行 (RCE) が発生する可能性があります。この欠陥により、宛先ディレクトリーにエントリーがシンボリックリンクとして含まれるアーカイブのターゲットが存在しない場合は、ディレクトリー宛先の検証がバイパスされます。plexus-archiver はテスト範囲のアーティファクトであるため、MTR ディストリビューションには含まれていません。(WINDUP-4053)
詳細は、(CVE-2023-37460) を参照してください。
EAP 7.0 以降をターゲットとする EAP 7.3 および EAP 7.4 ルール
この MTR リリースでは、ターゲットが EAP 7.2 以下の場合にルールが無視されるように、EAP 7.3 以降への移行をサポートするためにいくつかのルールが修正されています。(WINDUPRULE-1038)
第8章 MTR 1.2.1
8.1. 既知の問題
既知の問題の完全なリストは、Jira の MTR 1.2.1 の既知の問題 を参照してください。
8.2. 解決した問題
CVE-2023-44487 netty-codec-http2: HTTP/2
複数の HTTP/2 対応 Web サーバーが DDoS 攻撃 (Rapid Reset Attack) に対して脆弱であるHTTP/2 プロトコルでは、リクエストのキャンセルにより複数のストリームがすぐにリセットされるため、サービス拒否 (サーバーリソースの消費) が可能になります。(WINDUP-4056)
このリリースで解決された問題の一覧は、MTR 1.2.1 解決済みの問題 の一覧を参照してください。
第9章 MTR 1.2.0
9.1. 新機能
このセクションでは、Migration Toolkit for Runtimes (MTR) 1.2.0 の新機能を説明します。
- Java 17 に基づくアプリケーションの逆コンパイルと分析
-
ルールオーバーライドの機能強化: 既存のルールをオーバーライドするための新しい条件が追加されました。
rulesetId
とruleId
の一致に加えて、オーバーライドルールセット内のターゲットテクノロジーは、分析を実行するためにユーザーが指定したターゲットの 1 つと一致する必要があります。 - Eclipse プラグイン Java 17 との互換性
-
Windup Operator のアップグレード:
Quarkus 2.13.7.Final
およびQuarkus Operator SDK 4.0.8
を採用
9.1.1. 新しいルールセットとターゲット
- OpenJDK 21: OpenJDK 21 へのアップグレードをサポートするルール。
- Red Hat JBoss Web Server 6: JWS および Tomcat アプリケーションの JWS 6 および Tomcat 10 へのアップグレードをサポートするルール。
- Camel 4: Camel 3 および Camel 4 のすべての Y ストリームリリースへのアップグレードをサポートする包括的なルールセット。
- Red Hat JBoss EAP 8 および Hibernate 6 をサポートするための追加の移行ルール。
- Java/Jakarta EE から Quarkus: 新しいルールセットは、Java/Jakarta EE アプリケーションの Quarkus 3 への移行をサポートします。これらのルールセットは、JAX-RS および CDI テクノロジーとともに、プロジェクトの quarkification をカバーします。この移行パスをサポートする追加のルールはまだ開発中であり、将来の Z-stream リリースで利用可能になる予定です。
9.2. 既知の問題
既知の問題の完全なリストは、Jira の MTR 1.2.0 の既知の問題 を参照してください。
9.3. 解決した問題
このリリースで解決された問題の一覧は、MTR 1.2.0 解決済みの問題 の一覧を参照してください。