更新の重要性について
システム・ソフトウェアを最新の状態に保つことは、「セキュリティ原則の概要」で説明されているように、セキュリティ戦略全体の重要な原則です。 Oracle Linuxの更新は、悪意のあるハッカーが悪用してシステムへの不正アクセスを得る可能性があるソフトウェアの脆弱性や既知の攻撃ベクトルを回避および保護するために重要です。
Oracleは、Oracle LinuxおよびOracle VMソフトウェアに対する重要な更新を、エラッタと呼ばれる個別のパッケージ更新としてリリースします。
Oracle Linuxシステムの更新頻度は、各システム管理者が評価する必要がある多数の要素に応じて決まります。 システムを安全に保つための優れたセキュリティ・プラクティス・オプションの1つは、入手可能な最新の更新を受け入れることです。これは、システムが古くなるほど、公開される可能性のある潜在的な脆弱性と攻撃ベクトルが増えるためです。 脆弱性が古ければ古くなるほど、悪意のあるハッカーが経験や専門知識を収集できる時間が長くなり、これらの脆弱性を持つシステムがハッキングまたは悪用される可能性が高くなります。
インストールされる更新の頻度とタイプを構成する前に、許容可能とみなし、セキュリティ要件を満たすエクスポージャとリスクのレベルを決定する必要があります。
次に、検討する必要がある有用なベスト・プラクティスの例をいくつか示します:
-
Oracleが公開したエラッタを監視し、表示されるエラッタを確認し、セキュリティ・エラッタに注意します。 セキュリティ・エラッタは、クリティカルから低までの重大度レベル別にリストされます。
-
セキュリティ・エラッタ、バグ・エラッタおよび拡張エラッタをテストおよびデプロイする時間をスケジュールします。 できるだけ早くセキュリティおよびバグのエラッタをテストおよびデプロイすることは、適切なセキュリティ・プラクティスと考えられます。
-
多くの場合、マイナー・リリースには、セキュリティ・パッチ、バグ修正および機能拡張の組合せが含まれているため、注意が必要です。 前述のように、多数の更新セットをテストおよびデプロイする頻度とタイミングを決定する必要があります。 すぐに更新できない場合、Oracle Linux Premierサポートでは、オプションの個別バックポート用のPremier Backportプログラムが提供されます。 詳細は、「Premier Backportについて」を参照してください。
-
ビジネス・ニーズを満たすのに必要な最小限のソフトウェアのみをインストールすることで、Oracle Linuxに必要な更新の数を削減します。 システム上のパッケージ・フットプリントを最小限にすると、ソフトウェアの更新に必要な時間を短縮するとともに、セキュリティ攻撃ベクトルにさらされることを減らすことができます。 詳細は、「ソフトウェア・フットプリントの最小化と保護」を参照してください。
-
システムが再起動されると中断が生じるミッション・クリティカルなアプリケーションを含むシステムでは、Kspliceなどのツールを使用して、再起動を必要とせずにメモリーの停止時間なしでセキュリティ・エラッタ・パッチを適用することでゼロデイ攻撃を防止することを検討してください。 Kspliceの詳細は、『Oracle Linux Kspliceユーザーズ・ガイド』を参照してください。
-
また、ソフトウェアおよび自動化管理ツールを使用して、Oracle Linux Manager、Oracle Cloud Infrastructure OS Management、Oracle OS Management Hub、Oracle Linux Automation Manager、ChefおよびPuppetなどのソフトウェア更新およびデプロイメントを適用することも検討してください。
このようなツールでは、増分更新を実行してOracle Linuxシステムのグループを選択することもできます。これは、本番にロールアウトする前に、ステージング環境の実際のユーザーに対する更新の影響をテストする場合に便利です。 同様に、すべてのものに同じ構成をデプロイするのではなく、Oracle Linuxシステムおよびイメージをユーザー・ロールにあわせることができるように、これらのツールを使用してベース・イメージにRPMパッケージを追加できます。
非常に複雑な本番環境に適している可能性のあるその他の推奨事項は、Oracle Linux: Oracle Linuxでのソフトウェアの管理を参照してください。
エラッタのRPMパッケージのインストールと更新
任意のOracle Linux端末またはULNから、YumまたはDNFを使用して、Oracle Linuxシステムからエラッタ情報を直接取得できます。 エラッタ情報を評価した後、これらのツールを使用してエラッタを追跡、インストールおよび更新できます。
Oracle Linux 8には、システムを頻繁かつ最小限の操作で更新するためのツールが用意されています。 dnf-automaticパッケージを使用して、更新をスケジュールどおりにダウンロードしたり、ソフトウェア・アップグレード・オプションに警告したり、自動的に適用したりすることを検討してください。
RPMコマンドは使用しないでください)。 dnf update --securityコマンドを使用して次の方法で更新できます:
- CVE番号で更新する、
- セキュリティ・エラッタ・アドバイザリ番号で更新する、
- セキュリティ・エラッタを含む最新のカーネル・バージョンにすべてのカーネル・パッケージを更新する、
- 重大度レベル(クリティカル、重要、中および低)別にすべてのセキュリティ・エラッタを更新する、
- 入手可能な最新リリースにすべてのセキュリティ・エラッタを更新する。 このオプションは、セキュリティの観点からは、多くの場合、最適な選択です。
これらのDNFコマンドの使用方法の詳細は、Oracle Linux: Oracle Linuxでのソフトウェアの管理を参照してください。
RPMエラッタ・パッケージと累積更新の理解
Oracle LinuxはRPMベースのディストリビューションです。 RPMパッケージは、Oracleがセキュリティ、バグまたは拡張のエラッタで構成される更新をリリースすると、累積的に構築されます。 たとえば、RPMのリリース2はリリース1の上に構築されています。リリース1がインストールされているがリリース4に更新する場合は、リリース2および3の内容もリリース4に含まれています。
エラッタ・パッケージRPMバイナリには、dnf info packageコマンドを使用して確認できる内容が含まれています。 次に例を示します:
dnf info bashLast metadata expiration check: 0:00:34 ago on Thu 20 Jul 2023 06:42:40 PM GMT.
Installed Packages
Name : bash
Version : 4.4.20
Release : 4.el8_6
Architecture : x86_64
Size : 6.5 M
Source : bash-4.4.20-4.el8_6.src.rpm
Repository : @System
From repo : anaconda
Summary : The GNU Bourne Again shell
URL : https://www.gnu.org/software/bash
License : GPLv3+
Description : The GNU Bourne Again shell (Bash) is a shell or command language
: interpreter that is compatible with the Bourne shell (sh). Bash
: incorporates useful features from the Korn shell (ksh) and the C shell
: (csh). Most sh scripts can be run by bash without modification.
Available Packages
Name : bash
Version : 4.4.20
Release : 4.el8_6
Architecture : src
Size : 9.0 M
Source : None
Repository : ol8_baseos_latest
Summary : The GNU Bourne Again shell
URL : https://www.gnu.org/software/bash
License : GPLv3+
Description : The GNU Bourne Again shell (Bash) is a shell or command language
: interpreter that is compatible with the Bourne shell (sh). Bash
: incorporates useful features from the Korn shell (ksh) and the C shell
: (csh). Most sh scripts can be run by bash without modification.-
名前、バージョンおよびリリース情報: パッケージを更新すると、RPMのリリース番号が変更されます。RPMがリベースされる(これは頻繁には起こりません)と、バージョン番号が変更される可能性があります。
dnf updateinfo --list --installed packageコマンドを使用すると、特定のパッケージについて、インストール済RPMを、バージョン、リリースおよび導入された関連エラッタとともにリストできます。 たとえば、このコマンドでは、bashパッケージに適用されたすべてのエラッタがリストされ、パッケージの名前、バージョン、リリースおよびアーキテクチャもリストされます:dnf updateinfo --list --installed bashLast metadata expiration check: 0:05:41 ago on Thu 20 Jul 2023 06:42:40 PM GMT. ELBA-2019-3594 bugfix bash-4.4.19-10.el8.x86_64 ELBA-2020-4586 bugfix bash-4.4.19-12.el8.x86_64 ELSA-2021-1679 Low/Sec. bash-4.4.19-14.el8.x86_64 ELBA-2021-2030 bugfix bash-4.4.19-14.el8_3.x86_64 ELBA-2019-2707 bugfix bash-4.4.19-8.el8_0.x86_64 ELBA-2021-1988 bugfix bash-4.4.20-1.el8_4.x86_64 ELBA-2021-4495 bugfix bash-4.4.20-2.el8.x86_64 ELBA-2022-1993 bugfix bash-4.4.20-3.el8.x86_64 ELBA-2022-5815 bugfix bash-4.4.20-4.el8_6.x86_64なお、bashパッケージは、バグ修正ELBA-2021-1988が適用されたときにバージョン4.4.19からバージョン4.4.20にリベースされました。
-
情報メタデータ: このメタデータには、要約、説明、ライセンスなどの情報が含まれます。
-
暗号化署名: すべてのOracle Linux RPMパッケージが署名され、お客様は、この署名を使用して、ダウンロード中のRPMの来歴と信頼性を検証できます。 そのバイナリをビルドする個人と会社がこの署名を提供します。
/etc/dnf/dnf.confファイルでグローバル・デフォルトとしてgpgcheck=1を有効にすると、dnfコマンドでダウンロードまたはインストールする前に、すべてのRPMが本物であり、有効なGPG署名があることが確認されます。 これは、RPMが信頼できるソースから提供され、変更されていないことを確認するための重要な方法です。 すべてのOracle Linuxイメージには、Oracle GPGキーがインストールされており、gpgcheckオプションがデフォルトで有効になっています。ノート:
互換性のあるLinuxディストリビューションからOracle Linuxに既存のシステムを移行する場合は、GPGキーをOracleキーで置き換えることができます。 たとえば、次のスクリプトは、システムをCentOS 8またはRocky Linux 8からOracle Linux 8に移行し、GPGキーをOracle Linux GPGキーに置き換えるオプションを提供します: https://github.com/oracle/centos2ol。
RPMパッケージのセキュリティを確保することは、データ暗号化戦略全体の1つの側面です。 詳細は、「データの暗号化について」を参照してください。
-
依存関係情報: RPM、およびRPMが依存している他のパッケージのバージョンの詳細が表示されます。 たとえば、次のコマンドを使用すると、bash RPMパッケージについて直接の依存関係をリストできます:
dnf deplist bash -
更新またはインストールの間の様々な段階で実行できる一連のスクリプト。
セキュリティ・エラッタとCVEについて
セキュリティ・エラッタは、1つ以上の共通脆弱性(CVE)で特定されたセキュリティ脆弱性に対処するための是正措置です。
CVE番号は、セキュリティ脆弱性についての公開済の既知の情報に対する一意の共通識別子です。 Oracleは、報告されたセキュリティ脆弱性によって生じた是正措置を特定および追跡するために、CVE番号を使用します。 CVEプログラムは、米国国土安全保障省のサイバー・セキュリティとコミュニケーションのオフィスによって協賛され、MITRE社によって管理されています。
バグ・エラッタと拡張エラッタについて
バグは、お客様やベンダーによって発見された問題から生じた是正措置です。 Oracleは通常、エラッタ通知において、その事象に関連するバグIDを示します。 メンテナンス・ポリシーにバグ更新を含めることは、システムにまだ計画されていない、または影響を受けていない問題を防ぐことができるため、適切なセキュリティ・プラクティスと考えられます。 たとえば、バグ・エラッタは、システムを不安定にするイベントの組合せが発生するまで公開されない問題を防ぐ可能性があります。 そのため、Oracle Linuxシステムをバグ・エラッタで更新しておくことが重要です。
拡張は、Oracleによって提供される、増分での新機能または更新です。
エラッタとCVE通知の取得
Oracleリリースの新しいエラッタ・パッケージの公開時に通知を受けるには、Oracle Linuxエラッタ・メーリング・リスト(https://oss.oracle.com/mailman/listinfo/el-errata)およびOracle VMエラッタ・メーリング・リスト(https://oss.oracle.com/mailman/listinfo/oraclevm-errata)をサブスクライブします。
ULNにログインしている場合、これらのメーリング・リストは、エラッタ・タブに示されるEnterprise Linuxエラッタ・メーリング・リストのサブスクライブ・リンクとOracle VMエラッタ・メーリング・リストのサブスクライブ・リンクに従うことでもサブスクライブできます。
Oracleは、ULNで使用可能になった更新情報の完全なリスト(https://linux.oracle.com/errata)を公開します。 共通脆弱性および公開(CVEs)の公開済リストを表示し、https://linux.oracle.com/cveで詳細およびステータスを確認することもできます。
Oracle Linux yumサーバー・リポジトリへの更新は、https://yum.oracle.com/whatsnew.htmlにアクセスして追跡することもできます。ここでは、各リポジトリ内で過去6か月間に更新されたパッケージを確認できます。
Premier Backportについて
プレミア・バックポート・プログラムを通じて、以降のリリースで使用可能なエラッタを、使用している旧リリースにバックポートするようにリクエストできます。 使用している旧リリースは、新リリースの一般提供開始時点から6か月までのバックアップポートの対象にできます。
たとえば、次の表では、2022年6月19日のリリースが最新であると仮定して、その最新リリースを含むパッケージ・バージョンに基づいて、利用可能なglibcパッケージを示しています:
|
RPM |
リリース日 |
バックポート利用可能期限 |
|---|---|---|
|
glibc-2.28-164.0.3.el8.x86_64 |
2022年2月18日 |
2022年8月18日 (2022年3月8日と6か月に基づく) |
|
glibc-2.28-164.0.5.el8.x86_64 |
2022年3月8日 |
2022年9月8日 (2022年3月16日と6か月に基づく) |
|
glibc-2.28-164.0.5.el8_5.3.x86_64 |
2022年3月16日 |
2022年9月16日 (2022年6月19日と6か月に基づく) |
|
glibc-2.28-189.5.0.1.el8_6.x86_64 |
2022年6月19日 |
この例での最新リリース |
Oracleは、バックポートの対象にできるRPMのリストをhttps://linux.oracle.com/backport-schedule.htmlで公開しています。 Premier Backportの利用可能期限を特定するには、Release Date列にリストされているパッケージ・リリース日に6か月を加算します。 詳細は、Oracle LinuxおよびOracle VMサポート・ポリシーでOracle Linux Premierサポート・レベルの説明を参照してください。