4.8. 動的プログラミング言語、Web サーバー、およびデータベースサーバー
新しい nodejs:20 モジュールストリームが完全にサポートされるようになりました。
以前はテクノロジープレビューとして利用できた新しい nodejs:20 モジュールストリームが、RHEA-2023:7249 アドバイザリーのリリースに伴い、フルサポート対象になりました。nodejs:20 モジュールストリームでは、LTS (Long Term Support) バージョンの Node.js 20.9 が提供されるようになりました。
RHEL 8.9 に含まれる Node.js 20 は、RHEL 8.7 以降で利用可能な Node.js 18 に比べて、多数の新機能、バグ修正、セキュリティー修正、およびパフォーマンスの改善を提供します。
主な変更点は、以下のとおりです。
-
V8JavaScript エンジンがバージョン 11.3 にアップグレードされました。 -
npmパッケージマネージャーがバージョン 9.8.0 にアップグレードされました。 -
Node.jsに、新しい実験的な権限モデルが導入されています。 -
Node.jsに、新しい実験的な Single Executable Application (SEA) 機能が導入されています。 -
Node.jsは、Experimental ECMAScript モジュール (ESM) ローダーの改良を提供します。 -
Node.js 18で実験的なnode:testモジュールとして導入されたネイティブテストランナーは、現在は安定していると考えられています。
nodejs:20 モジュールストリームをインストールするには、以下を使用します。
yum module install nodejs:20
# yum module install nodejs:20
nodejs:18 ストリームからアップグレードする場合は、後のストリームへの切り替え を参照してください。
nodejs Application Streams のサポート期間の詳細は、Red Hat Enterprise Linux Application Streams のライフサイクル を参照してください。
Python tarfile 抽出関数への新しい filter 引数
CVE-2007-4559 の問題を軽減するために、Python は tarfile 抽出関数に filter 引数を追加します。この引数により、安全性を高めるために tar 機能をオフにすることができます (CVE-2007-4559 ディレクトリートラバーサル攻撃のブロックを含む)。フィルターが指定されていない場合、RHEL ではデフォルトで、最も安全ですが制限が最も高い 'data' フィルターが使用されます。さらに、アプリケーションが影響を受けると、Python は警告を発行します。
警告を非表示にする手順などの詳細は、ナレッジベースの記事 Mitigation of directory traversal attack in the Python tarfile library (CVE-2007-4559) を参照してください。
Jira:RHELDOCS-16405[1]
HTTP::Tiny Perl モジュールは、デフォルトで TLS 証明書を検証するようになる
HTTPS の使用時に TLS 証明書を検証するために、HTTP::Tiny Perl モジュールの verify_SSL オプションのデフォルト値が 0 から 1 に変更されました。この変更により、HTTP::Tiny の CVE-2023-31486 と CPAN Perl モジュールの CVE-2023-31484 が修正されます。
TLS 検証のサポートを利用できるようにするために、この更新では次の依存関係を perl-HTTP-Tiny パッケージに追加します。
-
perl-IO-Socket-SSL -
perl-Mozilla-CA -
perl-Net-SSLeay
Bugzilla:2228409[1]
メールアドレスの解析を制御するための Python の新しい環境変数
CVE-2023-27043 の問題を軽減するために、メールアドレスをより厳密に解析するための後方互換性のない変更が Python 3 に導入されました。
RHSA-2024:0256 の更新では、新しい PYTHON_EMAIL_DISABLE_STRICT_ADDR_PARSING 環境変数が導入されています。この変数を true に設定すると、比較的厳密ではない以前の解析動作が、システム全体のデフォルトになります。
export PYTHON_EMAIL_DISABLE_STRICT_ADDR_PARSING=true
export PYTHON_EMAIL_DISABLE_STRICT_ADDR_PARSING=true
ただし、該当する関数を個別に呼び出すと、より厳密な動作が有効になる可能性があります。
次の内容で /etc/python/email.cfg 設定ファイルを作成しても、同じ結果を得ることができます。
[email_addr_parsing] PYTHON_EMAIL_DISABLE_STRICT_ADDR_PARSING = true
[email_addr_parsing]
PYTHON_EMAIL_DISABLE_STRICT_ADDR_PARSING = true
詳細は、ナレッジベース記事 Mitigation of CVE-2023-27043 introducing stricter parsing of email addresses in Python を参照してください。
Jira:RHELDOCS-17369[1]