検索

4.12. 動的プログラミング言語、Web サーバー、およびデータベースサーバー

download PDF

メールアドレスの解析を制御するための Python の新しい環境変数

CVE-2023-27043 の問題を軽減するために、メールアドレスをより厳密に解析するための後方互換性のない変更が Python 3 に導入されました。

RHSA-2024:2024 の更新では、新しい環境変数 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

詳細は、ナレッジベース記事 Mitigation of CVE-2023-27043 introducing stricter parsing of email addresses in Python を参照してください。

Jira:RHELDOCS-17369[1]

新しい nodejs:20 モジュールストリームが完全にサポートされるようになりました。

以前はテクノロジープレビューとして利用できた新しい nodejs:20 モジュールストリームは、RHEA-2023:7252 アドバイザリーのリリースで完全にサポートされています。nodejs:20 モジュールストリームでは、LTS (Long Term Support) バージョンの Node.js 20.9 が提供されるようになりました。

RHEL 9.3 に含まれる Node.js 20 は、RHEL 9.1 以降で利用可能な Node.js 18 に比べて、多数の新機能、バグ修正、セキュリティー修正、およびパフォーマンスの改善を提供します。

主な変更点は、以下のとおりです。

  • V8 JavaScript エンジンがバージョン 11.3 にアップグレードされました。
  • npm パッケージマネージャーがバージョン 9.8.0 にアップグレードされました。
  • Node.js に、新しい実験的な権限モデルが導入されています。
  • Node.js に、新しい実験的な Single Executable Application (SEA) 機能が導入されています。
  • Node.js は、Experimental ECMAScript モジュール (ESM) ローダーの改良を提供します。
  • Node.js 18 で実験的な node:test モジュールとして導入されたネイティブテストランナーは、現在は安定していると考えられています。
  • Node.js は、さまざまなパフォーマンスの向上をもたらします。

nodejs:20 モジュールストリームをインストールするには、以下を使用します。

# dnf module install nodejs:20

nodejs:18 ストリームからアップグレードする場合は、後のストリームへの切り替え を参照してください。

nodejs Application Streams のサポート期間の詳細は、Red Hat Enterprise Linux Application Streams のライフサイクル を参照してください。

Bugzilla:2186717

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::TinyCVE-2023-31486 と CPAN Perl モジュールの CVE-2023-31484 が修正されます。

TLS 検証のサポートを利用できるようにするために、この更新では次の依存関係を perl-HTTP-Tiny パッケージに追加します。

  • perl-IO-Socket-SSL
  • perl-Mozilla-CA
  • perl-Net-SSLeay

Bugzilla:2228412[1]

httpd がバージョン 2.4.57 にリベース

Apache HTTP サーバーはバージョン 2.4.57 に更新され、RHEL 9.1 以降で利用可能なバージョン 2.4.53 にバグ修正、機能拡張、セキュリティー修正が加えられています。

主な機能拡張は、次のとおりです。

  • httpd で提供される rotatelogs ユーティリティーには、最初のログファイルを除くすべてのローテーションされたログファイルを切り詰めるための新しい -T オプションが導入されています。
  • mod_ldap モジュールの LDAPConnectionPoolTTL ディレクティブは、負の値を指定すると、接続された時期に関係なく接続を再利用できるようになりました。以前は、負の値はエラーとして処理されていました。
  • mod_proxy_hcheck モジュールのワーカーが、ワーカーのタイムアウト設定に従って正しくタイムアウトするようになりました。
  • mod_proxy_hcheck モジュールの hcmethod パラメーターは、HTTP/1.1 リクエストに新しい GET11HEAD11、および OPTIONS11 メソッドを提供するようになりました。

Bugzilla:2184403

httpd の新しい mod_authnz_fcgi モジュール

Apache HTTP Server には mod_authnz_fcgi モジュールが含まれるようになりました。これにより、FastCGI オーソライザーアプリケーションがユーザーを認証し、リソースへのアクセスを承認できるようになります。

mod_authnz_fcgi モジュールはデフォルトではロードされません。このモジュールをロードするには、/etc/httpd/conf.modules.d/00-optional.conf ファイル内の次の行のコメントを解除します。

LoadModule authnz_fcgi_module modules/mod_authnz_fcgi.so

Bugzilla:2173295[1]

nginx:1.22 の新しい ssl_pass_phrase_dialog ディレクティブ

nginx:1.22 モジュールストリームのこの更新により、新しい ssl_pass_phrase_dialog ディレクティブを使用して、暗号化された秘密キーごとに nginx の起動時に呼び出される外部プログラムを設定できるようになります。

新しいディレクティブを使用するには、次のいずれかの行を /etc/nginx/nginx.conf ファイルに追加します。

  • 暗号化された秘密キーファイルごとに外部プログラムを呼び出すには、次のように入力します。

    ssl_pass_phrase_dialog exec:<path_to_program>;

    nginx は、次の 2 つの引数を使用してこのプログラムを呼び出します。

    • server_name 設定で指定されたサーバー名。
    • 次のアルゴリズムのいずれか: RSADSAECDH、または UNK (暗号アルゴリズムが認識できない場合)。
  • 暗号化された秘密キーファイルごとにパスフレーズを手動で入力する場合は、次のように入力します。

    ssl_pass_phrase_dialog builtin;

    これは、ssl_pass_phrase_dialog が設定されていない場合のデフォルトの動作です。

    この方法を使用しても、少なくとも 1 つの秘密キーがパスフレーズで保護されている場合、nginx サービスは起動に失敗することに注意してください。この場合は、他のいずれかの方法を使用してください。

  • systemctl ユーティリティーを使用して nginx サービスを開始するときに、systemd で暗号化された秘密キーごとにパスフレーズの入力を求めるプロンプトを表示するには、次のように入力します。

    ssl_pass_phrase_dialog exec:/usr/libexec/nginx-ssl-pass-dialog;

nginxssl_pass_phrase_dialog ディレクティブは、Apache HTTP Server の SSLPassPhraseDialog ディレクティブに似ていることに注意してください。

Bugzilla:2170808

新しい rhel9/squid コンテナーイメージ

Red Hat Container Registry で rhel9/squid コンテナーイメージが利用できるようになりました。Squid は、Web クライアント向けの高パフォーマンスのプロキシーキャッシュサーバーで、FTP、gopher、および HTTP のデータオブジェクトをサポートします。従来のキャッシュソフトウェアとは異なり、Squid はすべてのリクエストを単一の非ブロックの I/O 駆動プロセスで処理します。Squid は、メタデータ、特に RAM にキャッシュされたホットオブジェクトを保持し、DNS ルックアップをキャッシュし、ノンブロッキング DNS ルックアップをサポートして、失敗したリクエストのネガティブキャッシュを実装します。

新しいコンテナーイメージをプルするには、次を実行します。

# podman pull registry.redhat.io/rhel9/squid

Bugzilla:2178953

新しいモジュールストリーム: redis:7

高度なキーバリューストアの Redis 7 が、新しいモジュールストリーム redis:7 として利用できるようになりました。

Redis 6 と比較した場合の主な変更点は、以下のとおりです。

  • Redis Functions API のサーバーサイドスクリプト
  • きめ細かなアクセス制御リスト (ACL) のサポート
  • クラスターの共有パブリッシュ/サブスクライブ (pub/sub) サポート
  • さまざまな新しいコマンドとコマンド引数

Redis 7 では、後方互換性のない変更がいくつか導入されています。次に例を示します。

  • Redis 7 は、追加専用ファイル (AOF) をフォルダー内の複数のファイルとして保存するようになりました。
  • Redis 7 は、以前のバージョンと互換性のない Redis Database (RDB) ファイルの新しいバージョン形式を使用しています。

機能と互換性のない変更の完全なリストは、アップストリームのリリースノート を参照してください。

redis:7 モジュールストリームをインストールするには、以下を使用します。

# dnf module install redis:7

redis Application Streams のサポート期間の詳細は、Red Hat Enterprise Linux Application Streams のライフサイクル を参照してください。

Bugzilla:2129826

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.