Oracle Enterprise Manager

Cloud Control Oracle Databaseコンプライアンス標準

12c リリース4 (12.1.0.4)

B70518-04(原本部品番号:E36074-04)

2015年4月

Oracle Enterprise Manager Cloud Control Oracle Databaseコンプライアンス標準, 12c リリース4 (12.1.0.4)

B70518-04

Copyright © 2012, 2015, Oracle and/or its affiliates.All rights reserved.

原本著者:  Jacqueline Gosselin

原本協力者:  Jim Garrison、Rajendra Pandey、Jerry Russell, David Wolf

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクル社までご連絡ください。

このソフトウェアまたは関連ドキュメントを、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供する場合は、次の通知が適用されます。

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations.As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs.No other rights are granted to the U.S. Government.

このソフトウェアまたはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアまたはハードウェアは、危険が伴うアプリケーション(人的傷害を発生させる可能性があるアプリケーションを含む)への用途を目的として開発されていません。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用する際、このソフトウェアまたはハードウェアを安全に使用するために、適切な安全装置、バックアップ、冗長性(redundancy)、その他の対策を講じることは使用者の責任となります。このソフトウェアまたはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、オラクル社およびその関連会社は一切の責任を負いかねます。

OracleおよびJavaはOracle およびその関連企業の登録商標です。その他の名称は、それぞれの所有者の商標または登録商標です。

Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXはThe Open Groupの登録商標です。

このソフトウェアまたはハードウェア、そしてドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。適用されるお客様とOracle Corporationとの間の契約に別段の定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。適用されるお客様とOracle Corporationとの間の契約に定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても一切の責任を負いかねます。

目次

タイトルおよび著作権情報

はじめに

- 対象読者

- ドキュメントのアクセシビリティについて

- 関連ドキュメント

- 表記規則

このマニュアルの変更点

1 概要

- 1.1 コンプライアンスの概要

- 1.2 Oracleデータベースのコンプライアンス標準

- 1.3 コンプライアンス結果の表示と理解

- 1.4 まとめ

2 Oracleの単一インスタンス・データベースのコンプライアンス標準

- 2.1 Oracleデータベースの基本的なセキュリティ構成

- 2.2 Oracleデータベースの構成のベスト・プラクティス

- 2.3 Oracleデータベースの高度なセキュリティ構成

- 2.4 Oracleデータベースのパッチ適用可能な構成

- 2.5 Oracleデータベースの記憶域のベスト・プラクティス

3 Oracle Real Application Clusterデータベースのコンプライアンス標準

- 3.1 Oracleクラスタ・データベースの基本的なセキュリティ構成

- 3.2 Oracle Real Application Clusterデータベースの構成のベスト・プラクティス

- 3.3 Oracleクラスタ・データベースの高度なセキュリティ構成

- 3.4 Real Application Clusterデータベースのパッチ適用可能な構成

- 3.5 Oracle Real Applicationデータベースの記憶域のベスト・プラクティス

- 3.6 Oracleクラスタ・データベース・インスタンスの基本的なセキュリティ構成

- 3.7 Oracleクラスタ・データベース・インスタンスの高度なセキュリティ構成

4 自動ストレージ管理のコンプライアンス標準

- 4.1 ASMの記憶域のベスト・プラクティス

- 4.2 ASMのパッチ適用可能な構成

5 Oracleリスナーのコンプライアンス標準

- 5.1 Oracleリスナーの基本的なセキュリティ構成

- 5.2 Oracleリスナーの高度なセキュリティ構成

6 プラガブル・データベースのコンプライアンス標準

- 6.1 プラガブル・データベースの構成のベスト・プラクティス

- 6.2 プラガブル・データベースの記憶域のベスト・プラクティス

7 セキュリティ技術導入ガイド

- 7.1 セキュリティ技術導入ガイドについて

- 7.2 STIGコンプライアンス標準ターゲットの関連付け

- 7.3 STIGコンプライアンス標準の違反の処理

- 7.4 WindowsデータベースでのSTIGコンプライアンス標準ルール例外

- 7.5 Oracle Database STIGコンプライアンス標準のガイドからの変更点

8 オラクル社によって強化されたセキュリティ技術導入ガイドライン(STIG)ルール

- 8.1 STIGデータベース・チェック

- 8.2 STIGインストール・チェック

はじめに

Enterprise Manager 12cでは、豊富で強力なコンプライアンス管理フレームワークを提供し、これにより、管理対象のターゲットの業界、Oracleまたは内部標準への適合性を追跡およびレポートします。Enterprise Manager 12cには、データベース、Exadataデータベース・マシン、Fusion Middleware、VM ManagerなどのOracleハードウェアおよびソフトウェアに対するコンプライアンス標準が装備されています。これらのコンプライアンス標準は、Oracleの構成推奨、ベスト・プラクティスおよびセキュリティ推奨への適合性を検証します。

対象読者

このドキュメントは、データベース管理者を対象としています。

このドキュメントによって、提供されているOracleデータベース関連のコンプライアンス標準およびこれらの使用方法について理解できるようになります。Oracleコンプライアンス標準はユーザーの特別な要件を満たすようにカスタマイズできますが、このドキュメントの目的は、提供されているとおりにコンプライアンス標準を使用する方法を説明することです。

ドキュメントのアクセシビリティについて

オラクル社のアクセシビリティへの取組みの詳細は、Oracle Accessibility ProgramのWebサイトhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=docaccを参照してください。

Oracleサポートへのアクセス

サポートをご購入のOracleのお客様は、My Oracle Supportにアクセスして電子サポートを受けることができます。詳細は、http://www.oracle.com/pls/topic/lookup?ctx=acc&id=infoまたはhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs (聴覚障害者向け)を参照してください。

関連ドキュメント

詳細は、Oracle Enterprise Managerリリース12cのドキュメント・セットにある次のドキュメントを参照してください。

- 『Oracle® Enterprise Manager Lifecycle Management管理者ガイド』

表記規則

このマニュアルでは次の表記規則を使用します。

規則

意味

太字

太字は、操作に関連するGraphical User Interface要素、または本文中で定義されている用語および用語集に記載されている用語を示します。

イタリック体

イタリックは、ユーザーが特定の値を指定するプレースホルダ変数を示します。

固定幅フォント

固定幅フォントは、段落内のコマンド、URL、サンプル内のコード、画面に表示されるテキスト、または入力するテキストを示します。

このマニュアルの変更点

この項では、Enterprise Manager 12cリリース12.1.0.4(部品番号E36074_03)以降の変更点をリストしています。

- Oracle Database 11g V8 R8およびR11 STIGとOracle Database 11gR2 V1リリース2 STIGとの相違点を反映するために、第7章「セキュリティ技術導入ガイド」を更新しました。

1 概要

Enterprise Manager 12cでは、豊富で強力なコンプライアンス管理フレームワークを提供し、これにより、管理対象のターゲットの業界、Oracleまたは内部標準への適合性を追跡およびレポートします。Enterprise Manager 12cには、データベース、Exadataデータベース・マシン、Fusion Middlewareなどを含む、Oracleハードウェアとソフトウェアのコンプライアンス標準が同梱されています。これらのコンプライアンス標準は、Oracleの構成推奨、ベスト・プラクティスおよびセキュリティ推奨への適合性を検証します。

1.1 コンプライアンスの概要

Enterprise Manager 12cのコンプライアンス・フレームワークは階層的な性質を持ち、管理と再使用を容易に行うことができます。階層には、最上位レベルから、コンプライアンス・フレームワーク、コンプライアンス標準およびコンプライアンス・ルールが含まれています。コンプライアンス・フレームワークは、様々なターゲット・タイプについて、コンプライアンス標準のコンプライアンス・スコアを集計します。コンプライアンス標準には1つ以上のコンプライアンス・ルールが含まれていますが、1つのターゲット・タイプに固有です。コンプライアンス・ルールによって、ターゲット固有の検証が実行され、適合性がレポートされます。

図1-1 コンプライアンス・フレームワークの階層

コンプライアンス標準はターゲットに関連付けられた唯一の項目です。コンプライアンス標準のすべてのルールは、関連付けられると、Enterprise Managerリポジトリのデータに対して実行されます。各ターゲットと標準の全体としてのコンプライアンス・スコアは、違反の数、違反のあるコンプライアンス・ルールの重大度、特定のコンプライアンス標準のルールの重要性などの多数の係数に基づいた、計算結果です。コンプライアンス・スコアの計算方法の詳細は、Enterprise Manager 12c Lifecycle Management管理者ガイドを参照してください。

このマニュアル以降、Oracle Enterprise Manager 12cに、23のデータベース・コンプライアンス標準が提供されています。これらの内訳は次のとおりです。

表1-1 ターゲット・タイプ別コンプライアンス標準

ターゲット・タイプ

コンプライアンス標準

自動ストレージ管理

2

クラスタ

1

クラスタ・データベース

7

データベース・インスタンス

9

ホスト

2

リスナー

2

合計

23

1.2 Oracleデータベースのコンプライアンス標準

Oracleデータベースと関連ターゲットの場合、Enterprise Manager 12cには、すぐに使用できるコンプライアンス標準が同梱されています。300を超えるコンプライアンス・ルールから構成されるコンプライアンス標準の一部を実装するか、またはすべてを実装するかを選択できます。次に、ターゲット・タイプ別のコンプライアンス標準のリストを示します。

Oracleの単一インスタンス・データベース標準

- Oracleデータベースの基本的なセキュリティ構成

- Oracleデータベースの構成のベスト・プラクティス

- Oracle Databaseの高度なセキュリティ構成

- Oracleデータベースのパッチ適用可能な構成

- Oracleデータベースの記憶域のベスト・プラクティス

Oracle Real Application Clusterデータベース標準

- Oracleクラスタ・データベースの基本的なセキュリティ構成

- Oracle Real Application Clusterデータベースの構成のベスト・プラクティス

- Oracleクラスタ・データベースの高度なセキュリティ構成

- Real Application Clusterデータベースのパッチ適用可能な構成

- Oracle Real Application Clusterデータベースの記憶域のベスト・プラクティス

- Oracleクラスタ・データベース・インスタンスの基本的なセキュリティ構成

- Oracleクラスタ・データベース・インスタンスの高度なセキュリティ構成

自動ストレージ管理(ASM)標準

- ASMの記憶域のベスト・プラクティス

- ASMのパッチ適用可能な構成

Oracleリスナー標準

- Oracleリスナーの基本的なセキュリティ構成

- Oracleリスナーの高度なセキュリティ構成

プラガブル・データベース標準

- プラガブル・データベースの基本的なセキュリティ構成

- プラガブル・データベースの構成のベスト・プラクティス

- プラガブル・データベースの記憶域のベスト・プラクティス

セキュリティ標準を利用するには、まず、次のテンプレートを適用する必要があります。

- セキュリティ・コンプライアンス標準のいずれかを利用するには、これらのコンプライアンス標準に関連付けるターゲットに対して、追加の構成収集を有効にする必要があります。特に、データベース・インスタンス(スタンドアロン・メンバーおよびクラスタ・メンバー)、クラスタ・データベースおよびリスナーに対して、これらの追加の収集を有効にする監視テンプレートが提供されています。表2に、セキュリティ標準での使用に必要な構成収集を有効にするために使用できるオラクル社認定監視テンプレートを示します。監視テンプレートの使用方法の詳細は、Enterprise Manager 12c管理者ガイドを参照してください。

表1-2 セキュリティ監視テンプレート

ターゲット・タイプ

Oracle監視テンプレート

セキュリティ・コンプライアンス標準

クラスタ・データベース

オラクル社認定-RACセキュリティ構成メトリックの有効化

Oracleクラスタ・データベースの基本的なセキュリティ構成

Oracleクラスタ・データベースの高度なセキュリティ構成

Oracleクラスタ・データベース・インスタンスの基本的なセキュリティ構成

Oracleクラスタ・データベース・インスタンスの高度なセキュリティ構成

データベース・インスタンス

オラクル社認定-データベース・セキュリティ構成メトリックの有効化

Oracleデータベースの基本的なセキュリティ構成

Oracle Databaseの高度なセキュリティ構成

リスナー

オラクル社認定-リスナー・セキュリティ構成メトリックの有効化

Oracleリスナーの基本的なセキュリティ構成

Oracleリスナーの高度なセキュリティ構成

注意: 監視テンプレートおよびコンプライアンス標準名はバンドル・パッチ1(2012年2月)以降のものです。

コンプライアンス・ライブラリ・ページを使用して、ターゲットをコンプライアンス標準に関連付けます。

1. 「エンタープライズ」メニューから「コンプライアンス」を選択し、「ライブラリ」を選択します。

2. 「コンプライアンス標準」を選択して、「関連付け」ボタンをクリックします。

3. ターゲットを選択して追加し、「OK」をクリックします。

1.3 コンプライアンス結果の表示と理解

コンプライアンス標準が特定のターゲットに関連付けられると、すぐに結果がコンプライアンス結果ページに表示されます。(「エンタープライズ」メニューから「コンプライアンス」を選択し、「結果」を選択します。)

結果は、コンプライアンス・フレームワーク、コンプライアンス標準およびターゲット別に表示できます。「ターゲット・コンプライアンス」タブに、すべてのコンプライアンス標準のターゲットのコンプライアンス・スコアが表示されます。「平均スコア」列でソートすると、最少のコンプライアンス・ターゲットに絞り込むことができます。同様に、「コンプライアンス標準」タブに、現在評価されている各コンプライアンス標準の結果が表示されます。ターゲットが関連付けられていないコンプライアンス標準は、リストに表示されません。評価結果ページの各列の解釈方法を理解することは重要です。

図1-2 コンプライアンス標準の結果

列の説明は次のとおりです。

ターゲット評価

「ターゲット評価」列には、スコアが「クリティカル」(60未満)、「警告」(60以上80以下)または「コンプライアンス」(80超)として評価されたターゲットの数が表示されます。これらのレベルはデフォルトであり、アソシエーション処理中にターゲットごとに変更できます。

列の数値をクリックすると、ターゲットのリストおよび詳細なコンプライアンス・スコアが表示されます。図1-3。

図1-3 「警告」のターゲットの評価の詳細

違反

「違反」列には、すべての評価対象ターゲットについて、コンプライアンス・ルールの重大度(「クリティカル」、「警告」または「マイナー警告」)ごとに個別の違反数が表示されます。この違反数はコンプライアンス標準のコンプライアンス・ルール数と対応していないということに注意してください。各コンプライアンス・ルールで、1つのターゲットに対して複数の違反が生成される場合があります。たとえば、セキュア・ポート・ルールでは、SMTP(25)およびFTP(21)などの既知のオープン・ポートがホストにあるかどうかをチェックします。

たとえば、1つのホストにこれらのオープン・ポートの両方がある場合、異なる2つの違反が生成されます。列の数値をクリックすると、ターゲットごとの違反数が表示されます。図1-4。

図1-4 「クリティカル」のコンプライアンス違反

違反および履歴傾向情報の詳細を表示するには、コンプライアンス標準がハイライト表示されている状態で、「詳細の表示」ボタンをクリックします。

図1-5 コンプライアンス標準結果の詳細 - サマリー

左側のナビゲータを使用すると、コンプライアンス標準の様々なレベルの階層を選択して、ツリー内の該当するレベルのスコアを表示できます。ページ下部の詳細セクションには、ターゲット別またはコンプライアンス標準ルール別の結果が表示されます。上部の「サマリー」タブには、重大度別のターゲットおよび重大度別のルール評価の結果が表示されます。

「傾向の概要」タブをクリックすると、履歴コンプライアンス・メトリックが表示されます。表示内容はそれぞれ、1日、1週間、または1か月の日付範囲で表示するよう変更できます。

図1-6 コンプライアンス標準結果の詳細 - 傾向の概要

違反のあるルールがナビゲータで選択されると、「違反イベント」タブが表示されます。上部の表に、ターゲット名および違反条件などの、各違反についてのサマリー情報が表示されます。表の特定の行を選択すると、詳細セクションが表示され、完全な「イベントの詳細」領域と「ガイドされた解決」領域が示されます。

図1-7 コンプライアンス違反イベントの詳細

Oracleから提供されたすべてのコンプライアンス・ルールには、違反の理由および違反の修正方法についての推奨事項を理解するのに役立つ情報があります。図1-7に、「SYS操作の監査有効」ルールに違反イベントがあることが示されています。このイベントのカテゴリがセキュリティ関連であることと、レポートされた正確な日時を確認できます。さらに、「ガイドされた解決」領域で「AUDIT_SYS_OPERATIONSをTRUEに設定してください。」の推奨事項を確認できます。

さらに、違反を詳細に調査したり、問題を解決するための次のような多数のオプションがあります。

- この検証に関連するMy Oracle Supportのナレッジ・ベースの表示(My Oracle Support (MOS)がオンライン・モードであると想定)

- 依存性分析を実行するためのターゲットのトポロジおよび関連ターゲットの表示

- 違反を発生させた可能性がある変更が加えられた日時を確認するための、最近検出された構成変更内容の表示

- ルールがターゲットに関係ないと判断された場合の、違反を発生させているターゲットに対するルールの無効化

- エスカレーションを通知させないイベントからのインシデントの作成および解決のワークフローの作成

- 他のユーザーによるイベントに対するすべての更新の表示

違反の根本的な原因が解決されると、次にスケジュールされている構成収集によって、ターゲットのコンプライアンス・スコアの自動再計算が行われます。収集をすぐに実行する場合、図1-8に示すように、ターゲットの最新収集構成ページからリフレッシュを選択できます。

図1-8 手動での構成のリフレッシュ

1.4 まとめ

Enterprise Manager 12cでは、コンプライアンス標準を使用して、Oracle推奨、ベスト・プラクティスおよびセキュリティ標準に対して容易にデータベースを検証できます。DBAおよびIT管理者は、管理対象のデータベースの標準への準拠状況の追跡、管理およびレポートを自動的にかつ一貫性のある方法で行うことができます。

2 Oracleの単一インスタンス・データベースのコンプライアンス標準

次に示すのは、Oracleの単一インスタンス・データベースのコンプライアンス標準のコンプライアンス・ルールです。コンプライアンス標準は次のとおりです。

- Oracleデータベースの基本的なセキュリティ構成

- Oracleデータベースの構成のベスト・プラクティス

- Oracle Databaseの高度なセキュリティ構成

- Oracleデータベースのパッチ適用可能な構成

- Oracleデータベースの記憶域のベスト・プラクティス

2.1 Oracleデータベースの基本的なセキュリティ構成

Oracleデータベース標準の基本的なセキュリティ構成のコンプライアンス・ルールは、次のとおりです。

2.1.1 Oracle Netクライアント・ログ・ディレクトリの権限

説明: クライアント・ログ・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: ログ・ファイルでは、エラー・スタックに含まれる情報が提供されます。エラー・スタックとは、ネットワーク・エラーの結果としてOracle通信スタック内に各レイヤーごとに作成される情報です。ログ・ファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

2.1.2 Oracle Netクライアント・トレース・ディレクトリの権限

説明: クライアントのトレース・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: トレースにより、ネットワーク・イベントを実行時に記述する一連の詳細な文が作成されます。操作をトレースすると、Oracle Net Servicesのコンポーネントの内部操作に関して、ログ・ファイルよりも詳しい情報を取得できます。このファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

2.1.3 Oracleホーム・ファイルの権限

説明: ORACLE_HOMEディレクトリ(ORACLE_HOME/bin以外)のすべてのファイルに対するパブリックからの読取り、書込みまたは実行の権限がないことを確認します。

重大度: 警告

理由: ファイル・アクセス権が適切でないOracleファイルがある場合、セキュリティ上の重要な問題が発生する可能性があります。

2.1.4 監査ファイル保存先(Windows)

説明: 監査ファイル・ディレクトリへのアクセスがOracleソフトウェア・セットの所有者とDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: AUDIT_FILE_DEST初期化パラメータは、Oracleの監査機能により作成される監査ファイルのディレクトリを指定します。このディレクトリに対するパブリック読取り権限を付与すると、起動、停止および優先接続のログ情報などの重要な情報が公開される可能性があります。

2.1.5 Oracle Netクライアント・トレース・ディレクトリの権限(Windows)

説明: クライアントのトレース・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: トレースにより、ネットワーク・イベントを実行時に記述する一連の詳細な文が作成されます。操作をトレースすると、Oracle Net Servicesのコンポーネントの内部操作に関して、ログ・ファイルよりも詳しい情報を取得できます。このファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

2.1.6 リモートOS認証

説明: REMOTE_OS_AUTHENT初期化パラメータがFALSEに設定されていることを確認します。

重大度: クリティカル

理由: リモートOS認証が許可されている場合、悪質なユーザーがデータベースにアクセスする可能性があります。

2.1.7 PROTOCOL ERROR TRACE ACTION

説明: sec_protocol_error_trace_actionパラメータがLOGまたはALERTに設定されていることを確認します。

重大度: クリティカル

理由: SEC_PROTOCOL_ERROR_TRACE_ACTIONには、悪意を持つ可能性があるクライアントから不正なパケットを受信したときに、データベースが行うアクションを指定します。データベース・サーバーでは不正なパケットが無視され、トレース・ファイルやログ・メッセージが生成されないため、NONEを指定しないでください。デフォルト値TRACEを指定すると、データベース・サーバーでは詳細なトレース・ファイルが生成されるため、デバッグのときのみ指定します。

2.1.8 パスワードの複雑性の検証機能の使用

説明: プロファイルに対してPASSWORD_VERIFY_FUNCTIONリソースが設定されていることを確認します。

重大度: クリティカル

理由: 複雑性の最低要件を満たさないパスワードを使用すると、複雑なパスワードを使用する場合に比べて大幅に保護機能が低下します。

2.1.9 Oracleホーム実行可能ファイルの所有者

説明: ORACLE_HOME/binフォルダ内のすべてのファイルおよびディレクトリの所有者がOracleソフトウェア・インストールの所有者と同じであることを確認します。

重大度: クリティカル

理由: ファイル・アクセス権が適切でないOracleファイルがある場合、セキュリティ上の重要な問題が発生する可能性があります。

2.1.10 Oracleホーム・ファイルの権限

説明: ORACLE_HOMEディレクトリ(ORACLE_HOME/bin以外)のすべてのファイルに対するパブリックからの読取り、書込みまたは実行の権限がないことを確認します。

重大度: 警告

理由: ファイル・アクセス権が適切でないOracleファイルがある場合、セキュリティ上の重要な問題が発生する可能性があります。

2.1.11 Oracle Netサーバー・トレース・ディレクトリの権限

説明: サーバーのトレース・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: トレースにより、ネットワーク・イベントを実行時に記述する一連の詳細な文が作成されます。操作をトレースすると、Oracle Net Servicesのコンポーネントの内部操作に関して、ログ・ファイルよりも詳しい情報を取得できます。このファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

2.1.12 データベース監査の有効化

説明: データベース監査が有効であることを確認します。

重大度: マイナー警告

理由: AUDIT_TRAILパラメータは、データベース監査を有効または無効にします。監査により、責務が強制され、誤使用の証拠が提供され、規制へのコンプライアンスが頻繁に要求されるため、セキュリティが向上します。また、監査により、システム管理者は保護の強化、不審なアクティビティの早期検出およびセキュリティ・レスポンスの微調整を行うことができます。

2.1.13 DBA_ROLE_PRIVSビューへのアクセス

説明: DBA_ROLE_PRIVSビューへのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: DBA_ROLE_PRIVSビューにはユーザーに付与されたロールおよびその他のロールがリストされています。データベースのロールの構造に関する情報は、悪質なユーザーによって利用される可能性があります。

2.1.14 デフォルト・パスワード

説明: 既知のアカウントにデフォルト・パスワードがないことを確認します。

重大度: 警告

理由: デフォルト・パスワードを使用して、悪質なユーザーがデータベースにアクセスすることが可能です。

2.1.15 サーバー・パラメータ・ファイルの権限

説明: サーバー・パラメータ・ファイルへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: サーバー・パラメータ・ファイル(SPFILE)を使用すると、初期化パラメータをサーバー側ディスク・ファイルで永続的に保存および管理できます。SPFILEがパブリックからアクセス可能な場合、機密情報に関する初期化パラメータがスキャンされ、データベースのセキュリティ・ポリシーが公開される可能性があります。SPFILEを検索してOracleデータベース構成の設定の脆弱性を見つけることもできます。

2.1.16 コア・ダンプ保存先

説明: コア・ダンプ・ファイル・ディレクトリへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: コア・ダンプ・ファイルは、CORE_DUMP_DEST初期化パラメータで指定されたディレクトリに保存されます。このディレクトリに対するパブリック読取り権限があると、コア・ダンプ・ファイルから機密情報が公開される可能性があります。

2.1.17 初期化パラメータ・ファイルの権限(Windows)

説明: 初期化パラメータ・ファイルへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: 警告

理由: 従来、Oracleではテキストの初期化パラメータ・ファイルに初期化パラメータが格納されます。初期化パラメータ・ファイルがパブリックからアクセス可能な場合、機密情報に関する初期化パラメータがスキャンされ、データベースのセキュリティ・ポリシーが公開される可能性があります。IFILEを検索してOracleデータベース構成の設定の脆弱性を見つけることもできます。

2.1.18 制御ファイルの権限(Windows)

説明: 制御ファイル・ディレクトリへのアクセスがOracleソフトウェア・セットの所有者とDBAグループに制限されていることを確認します。

重大度: クリティカル

理由:制御ファイルとは、データファイルへのアクセスを制御するバイナリ構成ファイルです。制御ファイルは、CONTROL_FILES初期化パラメータで指定されたディレクトリに保存されます。このディレクトリに対するパブリック書込み権限があると、セキュリティ上の重大な問題を引き起こす可能性があります。

2.1.19 ユーザー・ダンプ保存先(Windows)

説明: トレース・ファイル・ディレクトリへのアクセスがOracleソフトウェア・セットの所有者とDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: サーバー・プロセスのトレース・ファイルは、USER_DUMP_DEST初期化パラメータで指定されたディレクトリに保存されます。このディレクトリに対するパブリック読取り権限を付与すると、データベースおよびアプリケーションに関する内部の重要な機密情報の詳細が公開される可能性があります。

2.1.20 Oracle Netサーバー・トレース・ディレクトリの権限(Windows)

説明: サーバーのトレース・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: トレースにより、ネットワーク・イベントを実行時に記述する一連の詳細な文が作成されます。操作をトレースすると、Oracle Net Servicesのコンポーネントの内部操作に関して、ログ・ファイルよりも詳しい情報を取得できます。このファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

2.1.21 SYS操作の監査有効

説明: SYSとして接続したユーザーのセッションが完全に監査されていることを確認します。

重大度: 警告

理由: AUDIT_SYS_OPERATIONSパラメータは、SYSユーザーおよびSYSDBAまたはSYSOPER権限で接続しているユーザーが発行した操作の監査を有効または無効にします。

2.1.22 ユーティリティ・ファイル・ディレクトリ初期化パラメータの設定

説明: ユーティリティ・ファイル・ディレクトリ(UTL_FILE_DIR)初期化パラメータが、アスタリスク(*)、ピリオド(.)およびコア・ダンプ・トレース・ファイルの場所のいずれにも設定されていないことを確認します。

重大度: クリティカル

理由: UTL_FILEパッケージがアクセス可能なディレクトリを指定します。パラメータをアスタリスク(*)、ピリオド(.)または機密情報ディレクトリに設定すると、UTL_FILEパッケージに対して実行権限を持つすべてのユーザーに機密情報が公開される可能性があります。

2.1.23 パスワード・ロック期間

説明: すべてのプロファイルでPASSWORD_LOCK_TIMEが適切な日数に設定されていることを確認します。

重大度: 警告

理由: 小さい値を指定すると、DoS攻撃の可能性が増加します。

2.1.24 パスワード存続期間

説明: すべてのプロファイルでPASSWORD_LIFE_TIMEが適切な日数に設定されていることを確認します。

重大度: 警告

理由: パスワード存続期間が長いと、ハッカーにパスワードを推測する時間を多く与えることになります。そのため、データベースのセキュリティ上の重大な問題が発生する可能性があります。

2.1.25 DBA_TAB_PRIVSビューへのアクセス

説明: DBA_TAB_PRIVSビューへのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: ユーザーまたはロールに付与された、データベース内のオブジェクトに対する権限がリストされています。データベースのロールの構造に関する情報は、悪質なユーザーによって利用される可能性があります。

2.1.26 UTL_TCP実行のための制限された権限

説明: PUBLICがUTL_TCPパッケージに対する実行権限を持たないことを確認します。

重大度: クリティカル

理由: PUBLICロールに付与された権限は、自動的にすべてのユーザーに適用されます。悪質なユーザーによって、EXECUTE権限を使用され、電子メール、ネットワークおよびHTTPモジュールにアクセスされる可能性があります。

2.1.27 IDLE TIME

説明: ユーザー・プロファイル設定IDLE_TIMEが、特定のデータベースおよびアプリケーションに対して適切な値に設定されていることを確認します。

重大度: クリティカル

理由: 複数のアイドル・セッションがオープンのままになっている期間が長すぎると、システム・リソースが消費され、Oracleデータベースの他のユーザーに対するサービス拒否が生じる可能性があります。セッションをアイドル状態にしておける最大分数を制限してください。

2.1.28 Oracleホーム・データファイルの権限

説明: データファイルへのアクセス権がOracleソフトウェア・セットの所有者とDBAグループに制限されます。

重大度: クリティカル

理由: データファイルには、すべてのデータベース・データが含まれています。パブリックからデータファイルの読取りが可能な場合、このデータに対するデータベース権限のないユーザーがデータファイルを読み取ることができます。

2.1.29 サーバー・パラメータ・ファイルの権限(Windows)

説明: サーバー・パラメータ・ファイルへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: サーバー・パラメータ・ファイル(SPFILE)を使用すると、初期化パラメータをサーバー側ディスク・ファイルで永続的に保存および管理できます。SPFILEがパブリックからアクセス可能な場合、機密情報に関する初期化パラメータがスキャンされ、データベースのセキュリティ・ポリシーが公開される可能性があります。SPFILEを検索してOracleデータベース構成の設定の脆弱性を見つけることもできます。

2.1.30 Oracleホーム・データファイルの権限(Windows)

説明: データファイルへのアクセス権がOracleソフトウェア・セットの所有者とDBAグループに制限されます。

重大度: クリティカル

理由: データファイルには、すべてのデータベース・データが含まれています。パブリックからデータファイルの読取りが可能な場合、このデータに対するデータベース権限のないユーザーがデータファイルを読み取ることができます。

2.1.31 Oracle Netクライアント・ログ・ディレクトリの権限(Windows)

説明: クライアント・ログ・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: ログ・ファイルでは、エラー・スタックに含まれる情報が提供されます。エラー・スタックとは、ネットワーク・エラーの結果としてOracle通信スタック内に各レイヤーごとに作成される情報です。ログ・ファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

2.1.32 外部で識別されたアカウントの使用

説明: OS認証接頭辞がOPS$以外の値に設定されていることを確認します。

重大度: 警告

理由: OS_AUTHENT_PREFIXパラメータは、サーバーに接続しようとするユーザーの認証に使用される接頭辞を指定します。接続がリクエストされたら、Oracleは接頭辞付きユーザー名とデータベースのユーザー名を比較します。接頭辞(特にOPS$)を使用すると、アカウントをオペレーティング・システム・ユーザーとして、またはIDENTIFIED句で使用されるパスワードを使用して認証できるため、構成が安全でなくなる傾向があります。攻撃者はこれを認識しており、このようなアカウントを攻撃します。

2.1.33 DBA_SYS_PRIVSビューへのアクセス

説明: DBA_SYS_PRIVSビューへのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: DBA_SYS_PRIVSビューに問い合せて、ロールおよびユーザーに付与されたシステム権限を検索できます。データベースのロールの構造に関する情報は、悪質なユーザーによって利用される可能性があります。

2.1.34 クリアテキスト・パスワードを使用するデータベース・リンクの使用

説明: クリアテキスト・パスワードを使用するデータベース・リンクが使用されていないことを確認します。

重大度: 警告

理由: SYS.LINK$表には、データベース・リンクで使用されるクリアテキスト・パスワードが含まれます。悪質なユーザーがSYS.LINK$表からクリアテキスト・パスワードを読み取り、望ましくない結果になる可能性があります。

2.1.35 UTL_SMTP実行のための制限された権限

説明: PUBLICがUTL_SMTPパッケージに対する実行権限を持たないことを確認します。

重大度: クリティカル

理由: PUBLICロールに付与された権限は、自動的にすべてのユーザーに適用されます。悪質なユーザーによって、EXECUTE権限を使用され、電子メール、ネットワークおよびHTTPモジュールにアクセスされる可能性があります。

2.1.36 初期化パラメータ・ファイルの権限

説明: 初期化パラメータ・ファイルへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: 警告

理由: 従来、Oracleではテキストの初期化パラメータ・ファイルに初期化パラメータが格納されます。初期化パラメータ・ファイルがパブリックからアクセス可能な場合、機密情報に関する初期化パラメータがスキャンされ、データベースのセキュリティ・ポリシーが公開される可能性があります。IFILEを検索してOracleデータベース構成の設定の脆弱性を見つけることもできます。

2.1.37 監査ファイル保存先

説明: 監査ファイル・ディレクトリへのアクセスがOracleソフトウェア・セットの所有者とDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: AUDIT_FILE_DEST初期化パラメータは、Oracleの監査機能により作成される監査ファイルのディレクトリを指定します。このディレクトリに対するパブリック読取り権限を付与すると、起動、停止および優先接続のログ情報などの重要な情報が公開される可能性があります。

2.1.38 バックグラウンド・ダンプ保存先(Windows)

説明: トレース・ファイル・ディレクトリへのアクセスがOracleソフトウェア・セットの所有者とDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: ログ・ライター・プロセスやデータベース・ライター・プロセスなどのバックグラウンド・プロセスは、データベース操作の状態変化および例外やエラーの記録にトレース・ファイルを使用します。トレース・ファイルは、BACKGROUND_DUMP_DEST初期化パラメータで指定されたディレクトリに保存されます。このディレクトリに対するパブリック読取り権限を付与すると、データベースおよびアプリケーションに関する内部の重要な機密情報の詳細が公開される可能性があります。

2.1.39 PROTOCOL ERROR FURTHER ACTION

説明: SEC_PROTOCOL_ERROR_FURTHER_ACTIONパラメータがDROPまたはDELAYに設定されていることを確認します。

重大度: クリティカル

理由: デフォルト値CONTINUEが使用されている場合、不良パケットが受信されても、サーバー・プロセスは継続して実行されます。悪意を持つクライアントが不正なパケットを継続的に送信する場合、データベース・サーバーはサービス妨害(DoS)攻撃を受ける可能性があります。

2.1.40 SYS.USER_HISTORY$表へのアクセス

説明: SYS.USER_HISTORY$表へのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: ユーザー名およびパスワード・ハッシュがSYS.USER_HISTORY$表から読み取られるため、ハッカーによる総当たり攻撃が可能になります。

2.1.41 STATS$SQL_SUMMARY表へのアクセス

説明: STATS$SQL_SUMMARY表へのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: サーバーに対して発行されたほとんどのリソース集約コマンドを表すSQLテキストの最初の数行が含まれています。バインド変数なしで実行されたSQL文がここに表示され、機密情報が公開される可能性があります。

2.1.42 ユーザー・ダンプ保存先

説明: トレース・ファイル・ディレクトリへのアクセスがOracleソフトウェア・セットの所有者とDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: サーバー・プロセスのトレース・ファイルは、USER_DUMP_DEST初期化パラメータで指定されたディレクトリに保存されます。このディレクトリに対するパブリック読取り権限を付与すると、データベースおよびアプリケーションに関する内部の重要な機密情報の詳細が公開される可能性があります。

2.1.43 許可されたログオン・バージョン

説明: 一致するバージョン以上のクライアントからのログオンのみを、サーバーが許可することを確認します。

重大度: 警告

理由: sqlnet.oraでSQLNET.ALLOWED_LOGON_VERSIONパラメータをサーバーのバージョンより低く設定すると、比較的セキュアでない認証プロトコルが強制的にサーバーで使用されます。

2.1.44 パスワード猶予期間

説明: すべてのプロファイルでPASSWORD_GRACE_TIMEが適切な日数に設定されていることを確認します。

重大度: クリティカル

理由: PASSWORD_GRACE_TIMEパラメータの値が高く設定されていると、ユーザーが同じパスワードを長時間使用できるため、データベースのセキュリティ上の重大な問題が発生する可能性があります。

2.1.45 SYS.USER$表へのアクセス

説明: SYS.USER$表へのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: ユーザー名およびパスワード・ハッシュがSYS.USER$表から読み取られるため、ハッカーによる総当たり攻撃が可能になります。

2.1.46 UNIXシステムにおける適切なumaskの使用

説明: UNIXシステムでOracleソフトウェアの所有者が適切なumask値である022に設定されていることを確認します。

重大度: 警告

理由: umaskが適切な値(022など)に設定されていない場合、ログまたはトレース・ファイルがパブリックからアクセスできるようになり、機密情報が公開される可能性があります。

2.1.47 制御ファイルの権限

説明: 制御ファイル・ディレクトリへのアクセスがOracleソフトウェア・セットの所有者とDBAグループに制限されていることを確認します。

重大度: クリティカル

理由:制御ファイルとは、データファイルへのアクセスを制御するバイナリ構成ファイルです。制御ファイルは、CONTROL_FILES初期化パラメータで指定されたディレクトリに保存されます。このディレクトリに対するパブリック書込み権限があると、セキュリティ上の重大な問題を引き起こす可能性があります。

2.1.48 コア・ダンプ保存先(Windows)

説明: コア・ダンプ・ファイル・ディレクトリへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: コア・ダンプ・ファイルは、CORE_DUMP_DEST初期化パラメータで指定されたディレクトリに保存されます。このディレクトリに対するパブリック読取り権限があると、コア・ダンプ・ファイルから機密情報が公開される可能性があります。

2.1.49 データ・ディクショナリ保護

説明: データ・ディクショナリの保護が有効であることを確認します。

重大度: クリティカル

理由: 07_DICTIONARY_ACCESSIBILITYパラメータにより、データ・ディクショナリへのアクセスが制御されます。07_DICTIONARY_ACCESSIBILITYをTRUEに設定すると、ANYシステム権限を持つユーザーはデータ・ディクショナリにアクセスできます。その結果、これらのユーザーのアカウントが、データへの不正なアクセスの取得に利用されます。

2.1.50 DBA_ROLESビューへのアクセス

説明: DBA_ROLESビューへのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: DBA_ROLESビューには、データベースのすべてのロールの詳細が含まれます。データベースのロールの構造に関する情報は、悪質なユーザーによって利用される可能性があります。

2.1.51 DBA_USERSビューへのアクセス

説明: DBA_USERSビューへのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: ユーザー・パスワード・ハッシュおよびその他のアカウント情報が含まれています。この情報にアクセスされると、総当たり攻撃に利用される可能性があります。

2.1.52 STATS$SQLTEXT表へのアクセス

説明: STATS$SQLTEXT表へのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: この表には最近実行されたSQL文の完全なテキストが記載されています。SQL文から機密情報が公開される可能性があります。

2.1.53 SYS.AUD$表へのアクセス

説明: SYS.AUD$表へのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: 知識のある悪質なユーザーが、機密監査情報へアクセスできる可能性があります。

2.1.54 UTL_HTTP実行のための制限された権限

説明: PUBLICがUTL_HTTPパッケージに対する実行権限を持たないことを確認します。

重大度: クリティカル

理由: PUBLICロールに付与された権限は、自動的にすべてのユーザーに適用されます。悪質なユーザーによって、EXECUTE権限を使用され、電子メール、ネットワークおよびHTTPモジュールにアクセスされる可能性があります。

2.1.55 Well Knownアカウント

説明: Well Knownアカウントへのアクセス可能性をチェックします。

重大度: 警告

理由: Well Knownアカウントを利用して、知識のある悪質なユーザーがデータベースにアクセスする可能性があります。

2.1.56 Oracle Netサーバー・ログ・ディレクトリの権限

説明: サーバー・ログ・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: ログ・ファイルでは、エラー・スタックに含まれる情報が提供されます。エラー・スタックとは、ネットワーク・エラーの結果としてOracle通信スタック内に各レイヤーごとに作成される情報です。ログ・ファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

2.1.57 Oracle Netサーバー・ログ・ディレクトリの権限(Windows)

説明: サーバー・ログ・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: ログ・ファイルでは、エラー・スタックに含まれる情報が提供されます。エラー・スタックとは、ネットワーク・エラーの結果としてOracle通信スタック内に各レイヤーごとに作成される情報です。ログ・ファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

2.1.58 リモートOSロール

説明: REMOTE_OS_ROLES初期化パラメータがFALSEに設定されていることを確認します。

重大度: クリティカル

理由: リモート・ユーザーに権限のあるロールを付与できる場合、悪質なユーザーがデータベースにアクセスする可能性があります。

2.1.59 パブリック・トレース・ファイル

説明: データベース・トレース・ファイルがパブリックから読取り不可能であることを確認します。

重大度: クリティカル

理由: トレース・ファイルをPUBLICグループから読取り可能にすると、悪質なユーザーがトレース・ファイルを読取りにいき、機密情報が公開される可能性があります。

2.1.60 リモート・リスナー・インスタンスの使用

説明: データベース・インスタンスとは別のリモート・マシンでリスナー・インスタンスを使用していないことを確認します。

重大度: 警告

理由: REMOTE_LISTENER初期化パラメータを使用すると、リモート・マシン上のリスナーがデータベースにアクセスできます。マルチマスター・レプリケーション環境またはRAC環境では、このパラメータ設定によりロード・バランシング・メカニズムがリスナーに提供されるため、このパラメータは適用できません。

2.1.61 SYS.SOURCE$表へのアクセス

説明: SYS.SOURCE$表へのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: データベースにあるすべてのストアド・パッケージ・ユニットのソースが含まれています。

2.1.62 PUBLICへのDBMS_JOBに対する実行権限

説明: DBMS_JOBパッケージに対するEXECUTE権限がPUBLICに付与されていないことを確認します。

重大度: クリティカル

理由: DBMS_JOBパッケージに対するEXECUTE権限をPUBLICに付与すると、ユーザーがデータベースに対してジョブをスケジュールできるようになります。

2.1.63 PUBLICへのDBMS_SYS_SQLに対する実行権限

説明: DBMS_SYS_SQLパッケージに対するEXECUTE権限がPUBLICに付与されていないことを確認します。

重大度: クリティカル

理由: DBMS_SYS_SQLパッケージを使用すると、PL/SQLおよびSQLをコール元ではなくプロシージャの所有者として実行できます。

2.2 Oracleデータベースの構成のベスト・プラクティス

Oracleデータベース標準の構成のベスト・プラクティスのコンプライアンス・ルールは、次のとおりです。

2.2.1 強制ロギングが無効

説明: データベースの強制ロギングが無効になっていないかどうかをチェックします。

重大度: 警告

理由: データベースが強制ロギング・モードではありません。データベースがData Guardプライマリ・データベースの場合、ログに記録されない直接書込みはスタンバイ・データベースに伝播されません。

2.2.2 自動UNDO管理を使用していない

説明: 自動UNDO領域管理が使用されていないことをチェックします。

重大度: マイナー警告

理由: 自動UNDO管理を使用しないと、データベースで不要な競合とパフォーマンスの問題が発生します。特に、ロールバック・セグメントのヘッダー・ブロックに対する競合は、バッファ・ビジー待機の形で発生し、ORA-1555 (スナップショットが古すぎます)のエラーが発生する確率が高くなります。

2.2.3 自動PGA管理を使用していない

説明: PGA_AGGREGATE_TARGET初期化パラメータの値が0であるかどうか、またはWORKAREA_SIZE_POLICYの値がMANUALであるかどうかをチェックします。

重大度: 警告

理由: 自動PGAメモリー管理は、PGAメモリーの割当て方法を簡略化し向上させます。有効にすると、DBAが設定したPGA_AGGREGATE_TARGET制限を保持したまま、作業領域専用のPGAメモリーの一部がOracleによって動的に調整できるようになります。

2.2.4 高速リカバリ領域が未設定

説明: 高速リカバリ領域が設定されているかどうかをチェックします。

重大度: 警告

理由: NO_RECOVERY_AREA_IMPACT

2.2.5 STATISTICS_LEVELがALLに設定されている

説明: STATISTICS_LEVEL初期化パラメータがALLに設定されているかどうかをチェックします。

重大度: マイナー警告

理由: 自動統計収集は、オプティマイザによる正確な実行計画の生成を可能にし、またパフォーマンスの問題を特定および修正する場合に必要です。STATISTICS_LEVEL初期化パラメータは、現在、ALLに設定されています。これは指定時間に動作する追加のOSおよび計画実行統計が収集中であることを意味します。これらの統計は必要なく、またシステムに追加のオーバーヘッドを作成します。

2.2.6 SPFILEを使用していない

説明: SPFILEを使用しているかどうかをチェックします。

重大度: マイナー警告

理由: SPFILE (サーバー・パラメータ・ファイル)を使用すると、ALTER SYSTEMコマンドによって行ったOracle初期化パラメータへの動的な変更を永続させることができます。この永続性は、データベースのシャットダウン後にも維持されます。データベースでSPFILEが設定されている場合、対応する変更をOracleのinit.oraファイルに反映させる必要はありません。また、ALTER SYSTEMコマンドによって行われたすべての変更は、シャットダウンと再起動の後でも失われません。

2.2.7 統計レベルがBASICに設定されている

説明: STATISTICS_LEVEL初期化パラメータがBASICに設定されているかどうかをチェックします。

重大度: クリティカル

理由: 自動統計収集は、オプティマイザによる正確な実行計画の生成を可能にし、またパフォーマンスの問題を特定および修正する場合に必要です。STATISTICS_LEVELは、デフォルトでTYPICALに設定されます。STATISTICS_LEVEL初期化パラメータをBASICに設定すると、Oracleデータベースの機能に必要な多くの重要な統計の収集が無効になります。

2.2.8 TIMED_STATISTICSがFALSEに設定されている

説明: TIMED_STATISTICS初期化パラメータがFALSEに設定されているかどうかをチェックします。

重大度: クリティカル

理由: TIMED_STATISTICSをFALSEに設定すると、時間関連の統計(各種の内部操作の実行時間など)は収集されません。これらの統計は、診断やパフォーマンス・チューニングに役立ちます。TIMED_STATISTICSをTRUEに設定すると、時間関連の統計を収集できます。また、トレース・ファイルに記録される値も増えることで、長時間の操作についてより正確な統計を生成できます。

2.2.9 制御ファイル数の不足

説明: 単一の制御ファイルを使用していないかどうかをチェックします。

重大度: クリティカル

理由: 制御ファイルは、Oracleデータベースで最も重要なファイルの1つです。このファイルには、データベースに関する多くの物理特性と重要なリカバリ情報が記載されています。メディア・エラーによって1つしかない制御ファイルが失われると、不要な停止時間およびその他のリスクが発生します。

2.2.10 標準以外の初期化パラメータの使用

説明: 標準以外の初期化パラメータを使用していないかどうかをチェックします。

重大度: マイナー警告

理由: 標準以外の初期化パラメータが使用されています。これらのパラメータは、適切でないアドバイスや誤った推定に基づいて使用された可能性があります。特に、ラッチのSPIN_COUNTおよびドキュメントに記載されていないオプティマイザ機能に関連するパラメータは、多くの確認作業を必要とする大きな問題となる可能性があります。

2.3 Oracleデータベースの高度なセキュリティ構成

Oracleデータベース標準の高度なセキュリティ構成のコンプライアンス・ルールは、次のとおりです。

2.3.1 ALL_SOURCEビューへのアクセス

説明: ALL_SOURCEビューへのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: ALL_SOURCEビューにはデータベースにあるすべてのストアド・パッケージのソースが含まれています。

2.3.2 USER_ROLE_PRIVSビューへのアクセス

説明: USER_ROLE_PRIVSビューへのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: 現在のユーザーに付与されたロールがリストされています。データベースのロールの構造に関する情報は、悪質なユーザーによって利用される可能性があります。

2.3.3 PUBLICへのUTL_FILEに対する実行権限

説明: PUBLICがUTL_FILEパッケージに対する実行権限を持たないことを確認します。

重大度: クリティカル

理由: PUBLICロールに付与された権限は、自動的にすべてのユーザーに適用されます。UTL_FILE権限を付与すると、悪質なユーザーがシステム内の任意のファイルを読取り/書込みできるようになります。

2.3.4 %_CATALOG_%ロールへのアクセス

説明: %_CATALOG_%の付与が制限されていることを確認します。

重大度: クリティカル

理由: %_CATALOG_%ロールには、データベース・オブジェクトに対するクリティカル・アクセスが可能です。このため、データベース・システム内の重要情報が公開される可能性があります。

2.3.5 $ORACLE_HOME/network/adminディレクトリ所有者

説明: $ORACLE_HOME/network/admin所有権がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: network/adminの所有権をOracleソフトウェア・セットおよびDBAグループに制限しないと、悪質なユーザーにネット構成データが漏れてセキュリティ上の問題が発生する可能性があります。

2.3.6 Oracleホーム実行可能ファイルの権限

説明: ORACLE_HOME/binフォルダ内のすべてのファイルに対するパブリックからの書込み権限がないことを確認します。

重大度: 警告

理由: ファイル・アクセス権が適切でないOracleファイルがある場合、セキュリティ上の重要な問題が発生する可能性があります。

2.3.7 Oracle XSQL構成ファイルの所有者

説明: Oracle XSQL構成ファイル(XSQLConfig.xml)がOracleソフトウェアの所有者に所有されていることを確認します。

重大度: 警告

理由: Oracle XSQL構成ファイル(XSQLConfig.xml)には、データベース接続の機密情報が含まれています。XSQL構成ファイルがパブリックからアクセス可能な場合、機密データへのアクセスまたはさらなる攻撃に利用可能なデータベース・ユーザー名およびパスワードが漏れる可能性があります。

2.3.8 ログ・アーカイブ二重保存先

説明: サーバーのアーカイブ・ログ・ディレクトリが、Oracleソフトウェアの所有者に所有されている有効なディレクトリであることを確認します。

重大度: クリティカル

理由: LOG_ARCHIVE_DUPLEX_DESTパラメータ(init.oraファイル内)で指定されたディレクトリがOracleソフトウェア・インストールの所有者に所有されていないか、このディレクトリに対する権限が他のユーザーに付与されている場合、LogMinerを使用するとデータベース情報をアーカイブ・ログから取得できます。

2.3.9 Oracle AgentのSNMP読取り専用構成ファイルの所有者

説明: Oracle AgentのSNMP読取り専用構成ファイル(snmp_ro.ora)がOracleソフトウェアの所有者によって所有されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り専用構成ファイル(snmp_ro.ora)には、エージェントのリスニング・アドレス、認識しているSQL*NetリスナーとOracleデータベース・サービスの名前、およびトレース・パラメータが含まれています。SNMP読取り専用構成ファイルがパブリックからアクセス可能な場合、トレース・ディレクトリの場所やdbsnmpアドレスなどの機密データを取得するために使用される可能性があります。

2.3.10 ログ・アーカイブ保存先の権限(Windows)

説明: サーバーのアーカイブ・ログにパブリックからアクセスできないことを確認します。

重大度: クリティカル

理由: LOG_ARCHIVE_DESTパラメータ(init.oraファイル内)で指定されたディレクトリがOracleソフトウェア・インストールの所有者に所有されていないか、このディレクトリに対する権限が他のユーザーに付与されている場合、LogMinerを使用するとデータベース情報をアーカイブ・ログから取得できます。

2.3.11 ログ・アーカイブ二重保存先の権限(Windows)

説明: サーバーのアーカイブ・ログにパブリックからアクセスできないことを確認します。

重大度: クリティカル

理由: LOG_ARCHIVE_DUPLEX_DESTパラメータ(init.oraファイル内)で指定されたディレクトリがOracleソフトウェア・インストールの所有者に所有されていないか、このディレクトリに対する権限が他のユーザーに付与されている場合、LogMinerを使用するとデータベース情報をアーカイブ・ログから取得できます。

2.3.12 DISPATCHERS

説明: DISPATCHERSパラメータが設定されていることを確認します。

重大度: クリティカル

理由: これによりデフォルトのポートftp: 2100およびhttp: 8080が無効になります。XDBポートを削除することで、Oracleサーバーの攻撃対象領域が縮小されます。本番で使用する必要がない場合、これらのポートは無効にすることをお薦めします。

2.3.13 CPU PER SESSION

説明: すべてのプロファイルでCPU_PER_SESSIONがCPUサイクルの適切な数に設定されていることを確認します。

重大度: クリティカル

理由: 単一のアプリケーションまたはユーザーに過剰なCPUリソースの消費を許すと、Oracleデータベースに対するサービス拒否が生じることになります。

2.3.14 EXECUTE PROCEDURE権限の監査

説明: すべてのユーザーに対するアクセスによりEXECUTE ANY PROCEDURE権限が監査されていることを確認します。

重大度: クリティカル

理由: ロールの作成の監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

2.3.15 SELECT ANY DICTIONARY権限の監査

説明: すべてのユーザーに対するアクセスによりSELECT ANY DICTIONARY権限が監査されていることを確認します。

重大度: クリティカル

理由: SELECT ANY DICTIONARYの監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

2.3.16 USER_TAB_PRIVSビューへのアクセス

説明: USER_TAB_PRIVSビューへのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: ユーザーが所有者、権限付与者または権限受領者のオブジェクトに対する権限がリストされています。データベース内の権限に関する情報は、悪質なユーザーに利用される可能性があります。

2.3.17 V$シノニム・ロールへのアクセス

説明: SELECT権限がV$シノニムに付与されていないことを確認します。

重大度: クリティカル

理由: V$表にはOracleデータベースに関する機密情報が含まれており、システム管理者しかアクセスできないようにする必要があります。アクセス権を持つユーザーがいないか確認し、可能であれば取り消します。

2.3.18 IFILE参照先ファイルの権限

説明: IFILEパラメータによって参照されるファイルへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: IFILE初期化パラメータを使用すると、他の初期化パラメータ・ファイルの内容を現在の初期化パラメータ・ファイルに埋め込むことができます。初期化パラメータ・ファイルがパブリックからアクセス可能な場合、機密情報に関する初期化パラメータがスキャンされ、データベースのセキュリティ・ポリシーが公開される可能性があります。初期化パラメータ・ファイルを検索してOracleデータベース構成の設定の脆弱性を見つけることもできます。

2.3.19 ログ・アーカイブ保存先の所有者

説明: サーバーのアーカイブ・ログ・ディレクトリが、Oracleソフトウェアの所有者に所有されている有効なディレクトリであることを確認します。

重大度: クリティカル

理由: LOG_ARCHIVE_DESTパラメータ(init.oraファイル内)で指定されたディレクトリがOracleソフトウェア・インストールの所有者に所有されていないか、このディレクトリに対する権限が他のユーザーに付与されている場合、LogMinerを使用するとデータベース情報をアーカイブ・ログから取得できます。

2.3.20 ログ・アーカイブ保存先の権限

説明: サーバーのアーカイブ・ログにパブリックからアクセスできないことを確認します。

重大度: クリティカル

理由: LOG_ARCHIVE_DESTパラメータ(init.oraファイル内)で指定されたディレクトリがOracleソフトウェア・インストールの所有者に所有されていないか、このディレクトリに対する権限が他のユーザーに付与されている場合、LogMinerを使用するとデータベース情報をアーカイブ・ログから取得できます。

2.3.21 Oracle XSQL構成ファイルの権限

説明: Oracle XSQL構成ファイル(XSQLConfig.xml)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle XSQL構成ファイル(XSQLConfig.xml)には、データベース接続の機密情報が含まれています。XSQL構成ファイルがパブリックからアクセス可能な場合、機密データへのアクセスまたはさらなる攻撃に利用可能なデータベース・ユーザー名およびパスワードが漏れる可能性があります。

2.3.22 Webcache初期化ファイルの権限

説明: Webcache初期化ファイル(webcache.xml)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Webcache初期化ファイル(webcache.xml)には機密情報が格納されます。Webcache初期化ファイルがパブリックからアクセス可能な場合、管理者パスワードのハッシュなどの機密データを取得するために使用される可能性があります。

2.3.23 Oracle HTTP Server分散構成ファイルの所有者

説明: Oracle HTTP Server分散構成ファイルの所有権がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle HTTP Server分散構成ファイル(通常は.htaccess)は、Webフォルダのアクセス制御および認証に使用されます。このファイルを変更して、機密情報を含むページへのアクセス権を取得することができます。

2.3.24 Oracle HTTP Serverのmod_plsql構成ファイルの権限

説明: Oracle AgentのSNMP読取り専用構成ファイル(snmp_ro.ora)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り専用構成ファイル(snmp_ro.ora)には、エージェントのリスニング・アドレス、SQL*NetリスナーとOracleデータベース・サービスの名前が含まれています。

2.3.25 RETURN SERVER RELEASE BANNER

説明: パラメータSEC_RETURN_SERVER_RELEASE_BANNERの値がFALSEであることを確認します。

重大度: クリティカル

理由: パラメータSEC_RETURN_SERVER_RELEASE_BANNERがTRUEの場合、Oracleデータベースから完全なデータベース・バージョン情報がクライアントに返されます。正確なパッチ・セットが攻撃側に知られると利用される可能性があります。

2.3.26 SESSIONS_PER_USER

説明: すべてのプロファイルでSESSIONS_PER_USERが適切な数に設定されていることを確認します。

重大度: クリティカル

理由: 1ユーザー当たりのセッション数を無制限に許すと、Oracleリソースが消費され、サービス拒否が生じる可能性があります。個々のユーザーのセッション数を制限してください。

2.3.27 DROP ANY ROLE権限の監査

説明: すべてのユーザーに対するアクセスによりDROP ANY ROLE権限が監査されていることを確認します。

重大度: クリティカル

理由: ロールの作成の監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

2.3.28 Windows NTドメイン接頭辞の使用

説明: 外部で識別されたユーザーが接続中にドメインを指定していることを確認します。

重大度: クリティカル

理由: この設定は、Windowsシステムにのみ適用されます。アカウントを外部で識別する必要がある場合、レジストリでOSAUTH_PREFIX_DOMAINをTRUEに設定すると、アカウントにドメインの指定を義務付けます。このため、異なるドメインまたはローカル・システムからのユーザー・アクセスのなりすましを防ぐことができます。

2.3.29 ローカルの「Users」グループの「Domain Users」グループ・メンバー

説明: ドメイン・サーバーのローカルのUsersグループにDomain Usersグループが含まれていないことを確認します。

重大度: 警告

理由: ドメイン・サーバーのローカルのUsersグループにDomain Usersグループが含まれていると、重大なセキュリティ上の問題が発生する可能性があります。

2.3.30 tkprof実行可能ファイルの権限をOracleソフトウェア・セットおよびDBAグループに制限

説明: tkprof実行可能ファイルがOracleソフトウェアの所有者によって所有されていることを確認します。

重大度: 警告

理由: TKPROF所有権をOracleソフトウェア・セットおよびDBAグループに制限しないと、情報漏れが発生する可能性があります。

2.3.31 PUBLICへのDBMS_LOBに対する実行権限

説明: DBMS_LOBパッケージに対するEXECUTE権限がPUBLICグループに付与されていないことを確認します。

重大度: クリティカル

理由: DBMS_LOBパッケージを使用すると、Oracleソフトウェア・インストールの所有者としてシステム上のファイルにアクセスできます。

2.3.32 SYS.DBMS_RANDOM PUBLICに対する実行権限

説明: PUBLICがSYS.DBMS_RANDOMパッケージに対する実行権限を持たないことを確認します。

重大度: クリティカル

理由: PUBLICロールに付与された権限は、自動的にすべてのユーザーに適用されます。DBMS_RANDOMにより、SQLインジェクションが許可されます。このため、悪質なユーザーが利用できるようになります。

2.3.33 Oracle HTTP Serverのmod_plsql構成ファイルの所有者

説明: Oracle HTTP Serverのmod_plsql構成ファイル(wdbsvr.app)がOracleソフトウェアの所有者に所有されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り/書込み構成ファイル(snmp_rw.ora)には、認識しているエージェントのリスニング・アドレス、SQL*Netリスナーの名前およびOracleデータベース・サービスと、トレース・パラメータが含まれています。SNMP読取り-書込み構成ファイルがパブリックからアクセス可能な場合、トレース・ディレクトリの場所やdbsnmpアドレスなどの機密データを取得するために使用される可能性があります。

2.3.34 Oracle AgentのSNMP読取り-書込み構成ファイルの権限

説明: Oracle AgentのSNMP読取り-書込み構成ファイル(snmp_rw.ora)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り-書込み構成ファイル(snmp_ro.ora)には、認識しているエージェントのリスニング・アドレス、SQL*Netリスナーの名前およびOracleデータベース・サービスと、トレース・パラメータが含まれています。SNMP読取り-書込み構成ファイルがパブリックからアクセス可能な場合、トレース・ディレクトリの場所やdbsnmpアドレスなどの機密データを取得するために使用される可能性があります。

2.3.35 SQL92セキュリティ機能の使用

説明: SQL92セキュリティ機能の使用状況を確認します。

重大度: 警告

理由: SQL92セキュリティ機能を無効にすると、表に対するSELECT権限がなくても、ユーザーがWHERE句を使用してUPDATE文またはDELETE文を実行できる可能性があります。

2.3.36 リモート・パスワード・ファイル

説明: 特権ユーザーがオペレーティング・システムによって認証されます。つまり、パスワード・ファイルが無視されます。

重大度: マイナー警告

理由: REMOTE_LOGIN_PASSWORDFILEパラメータでは、Oracleがパスワード・ファイルをチェックするかどうかを指定します。パスワード・ファイルにはSYSを含むユーザーのパスワードが含まれているため、攻撃者が総当たりのパスワード関連攻撃を通じて接続することを防ぐ最も安全な方法は、特権ユーザーにオペレーティング・システムによる認証を要求することです。

2.3.37 DB SECUREFILE

説明: Oracleによって作成されたすべてのLOBファイルが、SecureFileとして作成されていることを確認します。

重大度: クリティカル

理由: LOBをSecureFileとして処理するには、COMPATIBILE初期化パラメータを11.1以上に設定します。2つのパーティション(ASSMが有効な表領域があるパーティションおよびASSMが無効な表領域があるパーティション)を持つLOB列がある場合、ASSMが有効な表領域を持つパーティションのLOBはSecureFileとして処理され、その他のパーティションのLOBはBasicFile LOBとして処理されます。db_securefileをALWAYSに設定すると、作成されたLOBファイルは必ずセキュア・ファイルになります。

2.3.38 パスワード再使用期間

説明: すべてのプロファイルでPASSWORD_REUSE_TIMEが適切な日数に設定されていることを確認します。

重大度: クリティカル

理由: PASSWORD_REUSE_TIMEパラメータの値が低いと、ユーザーが旧パスワードを何度も使用できるため、データベースのセキュリティ上の重大な問題が発生する可能性があります。

2.3.39 PRIVATE SGA

説明: ユーザーのPRIVATE_SGAプロファイルの設定が、特定のデータベースおよびアプリケーションに対して適切な値に設定されていることを確認します。

重大度: クリティカル

理由: 単一のアプリケーションまたはユーザーに過剰なシステム・グローバル領域の消費を許すと、Oracleデータベースに対するサービス拒否が生じることになります。

2.3.40 GRANT ANY OBJECT権限の監査

説明: すべてのユーザーに対するアクセスによりSELECT ANY DICTIONARY権限が監査されていることを確認します。

重大度: クリティカル

理由: SELECT ANY DICTIONARYの監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

2.3.41 AUD$権限の監査

説明: すべてのユーザーに対するアクセスによりAUD$が監査されていることを確認します。

重大度: クリティカル

理由: AUD$の監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

2.3.42 CREATE USER権限の監査

説明: すべてのユーザーに対するアクセスによりCREATE USER権限が監査されていることを確認します。

重大度: クリティカル

理由: CREATE USERの監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

2.3.43 DROP ANY TABLE権限の監査

説明: すべてのユーザーに対するアクセスによりDROP ANY TABLE権限が監査されていることを確認します。

重大度: クリティカル

理由: DROP ANY TABLEの監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

2.3.44 インストール済Oracleホームのドライブ権限

説明: Windowsで、インストール済Oracleホームのドライブが、Everyoneグループにアクセスできないことを確認します。

重大度: 警告

理由: Oracleがインストールされているドライブの権限をEveryoneに付与すると、重大なセキュリティ上の問題が発生する可能性があります。

2.3.45 Windowsツールの権限

説明: OracleサービスにWindowsツールの権限がないことを確認します。

重大度: 警告

理由: OracleサービスにWindowsツールの権限を付与すると、重大なセキュリティ上の問題が発生する可能性があります。

2.3.46 TKPROF実行可能ファイルの権限

説明: tkprof実行可能ファイルの権限がグループに対する読取りおよび実行権限に制限されていることと、パブリックにはアクセスできないことを確認します。

重大度: 警告

理由: TKPROFの権限が大きすぎると、内部の情報が保護されなくなります。

2.3.47 SYS.LINK$表へのアクセス

説明: SYS.LINK$表へのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: 知識のある悪質なユーザーが、SYS.LINK$表からユーザー・パスワードにアクセスできる可能性があります。

2.3.48 X_$ビューへのアクセス

説明: X$ビューに対するアクセスが制限されます。

重大度: クリティカル

理由: これにより、データベース内部の構造情報が漏えいする可能性があります。

2.3.49 Oracle AgentのSNMP読取り-書込み構成ファイルの所有者

説明: Oracle AgentのSNMP読取り-書込み構成ファイル(snmp_rw.ora)がOracleソフトウェアの所有者に所有されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り-書込み構成ファイル(snmp_ro.ora)には、認識しているエージェントのリスニング・アドレス、SQL*Netリスナーの名前およびOracleデータベース・サービスと、トレース・パラメータが含まれています。SNMP読取り-書込み構成ファイルがパブリックからアクセス可能な場合、トレース・ディレクトリの場所やdbsnmpアドレスなどの機密データを取得するために使用される可能性があります。

2.3.50 自動ログ・アーカイブ機能の使用

説明: REDOログのアーカイブが自動的に行われ、REDOログが一杯になった場合にインスタンス操作を一時停止しないことを確認します。データベースがARCHIVELOGモードの場合にのみ適用されます。

重大度: クリティカル

理由: LOG_ARCHIVE_START初期化パラメータをTRUEに設定すると、REDOログのアーカイブが自動的に行われ、REDOログが一杯になってもインスタンス操作が一時停止しません。この機能は、データベースがARCHIVELOGモードの場合にのみ適用されます。

2.3.51 Webcache初期化ファイルの権限(Windows)

説明: Webcache初期化ファイル(webcache.xml)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Webcache初期化ファイル(webcache.xml)には機密情報が格納されます。Webキャッシュ初期化ファイルがパブリックからアクセス可能な場合、機密データを取得するために使用される可能性があります。

2.3.52 Oracle HTTP Serverのmod_plsql構成ファイルの権限(Windows)

説明: Oracle HTTP Serverのmod_plsql構成ファイル(wdbsvr.app)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle HTTP Serverのmod_plsql構成ファイル(wdbsvr.app)には、認証に使用するデータベース・アクセス記述子が含まれています。mod_plsql構成ファイルがパブリックからアクセス可能な場合、悪質なユーザーがそれを利用し、データベース・アクセス記述子の設定を変更してPL/SQLアプリケーションにアクセスしたり、DoS攻撃を実行したりする可能性があります。

2.3.53 CREATE ANY LIBRARY権限の監査

説明: すべてのユーザーに対するアクセスによりCREATE ANY LIBRARY権限が監査されていることを確認します。

重大度: クリティカル

理由: CREATE ANY LIBRARYの監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

2.3.54 ドメイン・コントローラへのインストール

説明: Oracleがドメイン・コントローラにインストールされていないことを確認します。

重大度: 警告

理由: Oracleをドメイン・コントローラにインストールすると、重大なセキュリティ上の問題が発生する可能性があります。

2.3.55 無制限の表領域割当て

説明: データベース・ユーザーに対する表領域の割当てが制限されていることを確認します。

重大度: 警告

理由: 表領域を無制限に割り当てると、割当て済ディスク領域がすべて使用される可能性があります。また、これによってデータベースが応答しなくなる可能性があります。

2.3.56 PUBLICへのSYS.DBMS_EXPORT_EXTENSIONに対する実行権限

説明: PUBLICがSYS.DBMS_EXPORT_EXTENSIONパッケージに対する実行権限を持たないことを確認します。

重大度: クリティカル

理由: PUBLICロールに付与された権限は、自動的にすべてのユーザーに適用されます。DBMS_EXPORT_EXTENSIONにより、SQLインジェクションが許可されます。このため、悪質なユーザーが利用できるようになります。

2.3.57 SQL*Plus実行可能ファイルの権限

説明: SQL*Plus実行可能ファイルの権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: ユーザーがSQL*Plusを使用すると、データベース上ですべてのSQLを実行できます。SQL*PlusにPUBLIC EXECUTE権限があると、悪質なユーザーに機密データが漏れてセキュリティ上の問題が発生する可能性があります。

2.3.58 Webcache初期化ファイルの所有者

説明: Webcache初期化ファイル(webcache.xml)がOracleソフトウェアの所有者によって所有されていることを確認します。

重大度: 警告

理由: Webcache初期化ファイル(webcache.xml)には機密情報が格納されます。Webcache初期化ファイルがパブリックからアクセス可能な場合、管理者パスワードのハッシュなどの機密データを取得するために使用される可能性があります。

2.3.59 Oracle AgentのSNMP読取り専用構成ファイルの権限

説明: Oracle AgentのSNMP読取り専用構成ファイル(snmp_ro.ora)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り専用構成ファイル(snmp_ro.ora)には、エージェントのリスニング・アドレス、認識しているSQL*NetリスナーとOracleデータベース・サービスの名前、およびトレース・パラメータが含まれています。SNMP読取り専用構成ファイルがパブリックからアクセス可能な場合、トレース・ディレクトリの場所やdbsnmpアドレスなどの機密データを取得するために使用される可能性があります。

2.3.60 ログ・アーカイブ二重保存先の権限

説明: サーバーのアーカイブ・ログにパブリックからアクセスできないことを確認します。

重大度: クリティカル

理由: LOG_ARCHIVE_DUPLEX_DESTパラメータ(init.oraファイル内)で指定されたディレクトリがOracleソフトウェア・インストールの所有者に所有されていないか、このディレクトリに対する権限が他のユーザーに付与されている場合、LogMinerを使用するとデータベース情報をアーカイブ・ログから取得できます。

2.3.61 $ORACLE_HOME/network/adminファイル権限(Windows)

説明: $ORACLE_HOME/network/admin内のファイルの所有権がOracleソフトウェア・セットに制限され、グループがDBAグループに制限され、パブリックが書込み権限を持っていないことを確認します。

重大度: 警告

理由: network/adminの所有権をOracleソフトウェア・セットおよびDBAグループに制限しないと、悪質なユーザーにネット構成データが漏れてセキュリティ上の問題が発生する可能性があります。

2.3.62 CREATE ROLE権限の監査

説明: すべてのユーザーに対するアクセスによりCREATE ROLE権限が監査されていることを確認します。

重大度: クリティカル

理由: ロールの作成の監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

2.3.63 CREATE LIBRARY権限の監査

説明: すべてのユーザーに対するアクセスによりCREATE LIBRARY権限が監査されていることを確認します。

重大度: クリティカル

理由: CREATE LIBRARYの監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

2.3.64 プロキシ・アカウント

説明: プロキシ・アカウントの権限が制限されていることを確認します。

重大度: 警告

理由: プロキシ・ユーザーが必要なのはデータベースへの接続だけです。接続した後は、代理で接続している元のユーザーの権限を使用します。CREATE SESSION権限以外の権限をプロキシ・ユーザーに付与することは、不要であり誤用を招くおそれがあります。

2.3.65 PUBLICへのシステム権限

説明: PUBLICにSYSTEM権限が付与されていないことを確認します。

重大度: クリティカル

理由: PUBLICロールに付与された権限は、自動的にすべてのユーザーに適用されます。すべてのユーザーにSYSTEM権限が付与されることになるため、セキュリティ上のリスクがあります。

2.3.66 Oracle9iリリース1以上でのユーティリティ・ファイル・ディレクトリ初期化パラメータの設定

説明: UTL_FILE_DIR初期化パラメータがOracle9iリリース1以上で使用されていないことを確認します。

重大度: クリティカル

理由: UTL_FILEパッケージがアクセス可能なディレクトリを指定します。パラメータをアスタリスク(*)、ピリオド(.)または機密情報ディレクトリに設定すると、UTL_FILEパッケージに対する実行権限のあるすべてのユーザーに機密情報が公開される可能性があります。

2.3.67 IFILE参照先ファイルの権限(Windows)

説明: IFILEパラメータによって参照されるファイルへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: IFILE初期化パラメータを使用すると、他の初期化パラメータ・ファイルの内容を現在の初期化パラメータ・ファイルに埋め込むことができます。初期化パラメータ・ファイルがパブリックからアクセス可能な場合、機密情報に関する初期化パラメータがスキャンされ、データベースのセキュリティ・ポリシーが公開される可能性があります。初期化パラメータ・ファイルを検索してOracleデータベース構成の設定の脆弱性を見つけることもできます。

2.3.68 SQL*Plus実行可能ファイルの権限(Windows)

説明: SQL*Plus実行可能ファイルの権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: ユーザーがSQL*Plusを使用すると、データベース上ですべてのSQLを実行できます。SQL*PlusにPUBLIC EXECUTE権限があると、悪質なユーザーに機密データが漏れてセキュリティ上の問題が発生する可能性があります。

2.3.69 Oracle XSQL構成ファイルの権限(Windows)

説明: Oracle XSQL構成ファイル(XSQLConfig.xml)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle XSQL構成ファイル(XSQLConfig.xml)には、データベース接続の機密情報が含まれています。XSQL構成ファイルがパブリックからアクセス可能な場合、機密データへのアクセスまたはさらなる攻撃に利用可能なデータベース・ユーザー名およびパスワードが漏れる可能性があります。

2.3.70 OSロール

説明: ロールがDBMSの外部ファイル以外のデータベースに保存され、管理および保護されます。

重大度: 警告

理由: ロールがOSによって管理されている場合、セキュリティ上の重大な問題が発生する可能性があります。

2.3.71 パスワード再使用最大回数

説明: すべてのプロファイルでPASSWORD_REUSE_MAXが適切な回数に設定されていることを確認します。

重大度: 警告

理由: 現在のパスワードを推測する場合、旧パスワードが通常最も多く使用されます。PASSWORD_REUSE_MAXパラメータの値が低いと、ユーザーが旧パスワードを何度も使用できるため、データベースのセキュリティ上の重大な問題が発生する可能性があります。

2.3.72 ALTER USER権限の監査

説明: すべてのユーザーに対するアクセスによりALTER USER権限が監査されていることを確認します。

重大度: クリティカル

理由: ALTER USERの監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

2.3.73 GRANT ANY PRIVILEGE権限の監査

説明: すべてのユーザーに対するアクセスによりGRANT ANY PRIVILEGE権限が監査されていることを確認します。

重大度: クリティカル

理由: GRANT ANY PRIVILEGEの監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

2.3.74 TKPROF実行可能ファイルの権限(Windows)

説明: tkprof実行可能ファイルの権限がグループに対する読取りおよび実行権限に制限されていることと、パブリックにはアクセスできないことを確認します。

重大度: 警告

理由: TKPROFの権限が大きすぎると、内部の情報が保護されなくなります。

2.3.75 DBA_*ビューへのアクセス

説明: SELECT権限がどのDBA_ビューにも付与されていないことを確認します。

重大度: 警告

理由: DBA_*ビューを使用すると、データベースの権限およびポリシーの設定にアクセスできます。DBA_*ビューの一部では、セキュリティ・ポリシーを理解するために使用できる重要なPL/SQLコードを表示することもできます。

2.3.76 ROLE_ROLE_PRIVSビューへのアクセス

説明: ROLE_ROLE_PRIVSビューへのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: 他のロールに付与されたロールがリストされています。データベースのロールの構造に関する情報は、悪質なユーザーによって利用される可能性があります。

2.3.77 SELECT ANY TABLE権限の付与

説明: SELECT ANY PRIVILEGEがどのユーザーまたはロールにも付与されていないことを確認します。

重大度: 警告

理由: SELECT ANY TABLE権限は、ユーザーまたはロール自身が所有していない表のデータを表示できるようにするために使用できます。この権限を持つユーザー・アカウントへのアクセス権を持つ悪質なユーザーは、これを利用して機密データにアクセスできます。

2.3.78 V$ビューへのアクセス

説明: SELECT権限がどのV$ビューにも付与されていないことを確認します。

重大度: クリティカル

理由: V$表にはOracleデータベースに関する機密情報が含まれており、システム管理者しかアクセスできないようにする必要があります。アクセス権を持つユーザーがいないか確認し、可能であれば取り消します。

2.3.79 $ORACLE_HOME/network/adminファイル権限

説明: $ORACLE_HOME/network/admin内のファイルの所有権がOracleソフトウェア・セットに制限され、グループがDBAグループに制限され、パブリックが書込み権限を持っていないことを確認します。

重大度: 警告

理由: network/adminの所有権をOracleソフトウェア・セットおよびDBAグループに制限しないと、悪質なユーザーにネット構成データが漏れてセキュリティ上の問題が発生する可能性があります。

2.3.80 Oracle HTTP Serverのmod_plsql構成ファイルの権限

説明: Oracle HTTP Serverのmod_plsql構成ファイル(wdbsvr.app)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り/書込み構成ファイル(snmp_rw.ora)には、認識しているエージェントのリスニング・アドレス、SQL*Netリスナーの名前およびOracleデータベース・サービスと、トレース・パラメータが含まれています。SNMP読取り-書込み構成ファイルがパブリックからアクセス可能な場合、トレース・ディレクトリの場所やdbsnmpアドレスなどの機密データを取得するために使用される可能性があります。

2.3.81 Oracle AgentのSNMP読取り-書込み構成ファイルの権限(Windows)

説明: Oracle AgentのSNMP読取り-書込み構成ファイル(snmp_rw.ora)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り-書込み構成ファイル(snmp_ro.ora)には、エージェントのリスニング・アドレス、SQL*NetリスナーとOracleデータベース・サービスの名前が含まれています。

2.3.82 CASE SENSITIVE LOGON

説明: sec_case_sensitive_logonパラメータがTRUEに設定されていることを確認します。

重大度: クリティカル

理由: これでパスワードがより複雑になり、総当りのパスワード攻撃に対する防衛に役立ちます。

2.3.83 LOGICAL READS PER SESSION

説明: ユーザー・プロファイル設定LOGICAL_READS_ PER_SESSIONが、特定のデータベースおよびアプリケーションに対して適切な値に設定されていることを確認します。

重大度: クリティカル

理由: 単一のアプリケーションまたはユーザーにディスクに対する過剰な読取りの実行を許すと、Oracleデータベースに対するサービス拒否が生じることになります。

2.3.84 ALTER ANY TABLE権限の監査

説明: すべてのユーザーに対するアクセスによりALTER ANY TABLE権限が監査されていることを確認します。

重大度: クリティカル

理由: ALTER ANY TABLEの監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

2.3.85 CREATE SESSION権限の監査

説明: すべてのユーザーに対するアクセスによりCREATE SESSION権限が監査されていることを確認します。

重大度: クリティカル

理由: CREATE SESSIONの監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

2.3.86 OS認証の制限

説明: データベース・アカウントはOS認証に依存しないことを確認します。

重大度: クリティカル

理由: ホスト・オペレーティング・システムのデータベース・アカウントに、パスワードがEXTERNALに設定されている必須ユーザーIDが存在する場合、資格証明の確認はこれ以上実行されません。ホストが認証を行っていることを前提としているため、ユーザーの確認を行わずデータベースへのアクセスを許可します。

2.3.87 OTRACEデータファイル

説明: OTRACEで収集されたデータによって引き起こされる、データベース・パフォーマンスとディスク領域使用量への悪影響を回避します。

重大度: 警告

理由: データ収集によるパフォーマンスとリソースの使用は、データベース・パフォーマンスとディスク領域使用量に悪影響を与える可能性があります。

2.3.88 バックグラウンド・ダンプ保存先

説明: トレース・ファイル・ディレクトリへのアクセスがOracleソフトウェア・セットの所有者とDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: ログ・ライター・プロセスやデータベース・ライター・プロセスなどのバックグラウンド・プロセスは、データベース操作の状態変化および例外やエラーの記録にトレース・ファイルを使用します。トレース・ファイルは、BACKGROUND_DUMP_DEST初期化パラメータで指定されたディレクトリに保存されます。このディレクトリに対するパブリック読取り権限を付与すると、データベースおよびアプリケーションに関する内部の重要な機密情報の詳細が公開される可能性があります。

2.3.89 SQL*Plus実行可能ファイルの所有者

説明: SQL*Plus所有権がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: ユーザーがSQL*Plusを使用すると、データベース上ですべてのSQLを実行できます。SQL*Plusの所有権をOracleソフトウェア・セットおよびDBAグループに制限しないと、悪質なユーザーに機密データが漏れてセキュリティ上の問題が発生する可能性があります。

2.3.90 Oracle HTTP Server分散構成ファイルの権限

説明: Oracle HTTP Server分散構成ファイルの権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle HTTP Server分散構成ファイル(通常は.htaccess)は、Webフォルダのアクセス制御および認証に使用されます。このファイルを変更して、機密情報を含むページへのアクセス権を取得することができます。

2.3.91 Oracleホーム実行可能ファイルの権限(Windows)

説明: ORACLE_HOME/binフォルダ内のすべてのファイルに対するパブリックからの書込み権限がないことを確認します。

重大度: 警告

理由: ファイル・アクセス権が適切でないOracleファイルがある場合、セキュリティ上の重要な問題が発生する可能性があります。

2.3.92 データベース・リンクのネーミング

説明: データベース・リンクの名前が、リモート・データベース名と同じであることを確認します。

重大度: 警告

理由: データベース・リンク名が接続するデータベースのグローバル名と一致しない場合、テスト・サーバーまたは開発サーバーから本番サーバーへのアクセスを管理者が誤って許可してしまう可能性があります。この情報は、悪質なユーザーがターゲット・データベースにアクセスする際に使用されます。

2.3.93 セキュアなOS監査レベル

説明: UNIXシステムでOSレベルの監査が有効な場合、AUDIT_SYSLOG_LEVELがデフォルト以外の値に設定されていることを確認します。

重大度: 警告

理由: AUDIT_SYSLOG_LEVEL初期化パラメータをデフォルト値(NONE)に設定すると、DBAがOS監査レコードにアクセスできるようになります。

2.3.94 CONNECT TIME

説明: ユーザー・プロファイル設定CONNECT_TIMEが、特定のデータベースおよびアプリケーションに対して適切な値に設定されていることを確認します。

重大度: クリティカル

理由: 複数のセッションがオープンのままになっている期間が長すぎると、システム・リソースが消費され、Oracleデータベースの他のユーザーに対するサービス拒否が生じる可能性があります。CONNECT_TIMEパラメータでは、セッションをオープン状態にしておける期間の上限を制限します。このパラメータは、分単位で指定します。接続時間を超過したセッションは中断され、ロールバックされます。

2.3.95 監査の挿入失敗

説明: 重要なデータ・オブジェクトについて挿入の失敗が監査されていることを確認します。

重大度: 警告

理由: 重要なデータ・オブジェクトについて挿入の失敗を監査しないと、悪質なユーザーがシステムのセキュリティに侵入する可能性があります。

2.3.96 DROP ANY PROCEDURE権限の監査

説明: すべてのユーザーに対するアクセスによりDROP ANY PROCEDURE権限が監査されていることを確認します。

重大度: クリティカル

理由: DROP ANY PROCEDUREの監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

2.4 Oracleデータベースのパッチ適用可能な構成

Oracleデータベース標準のパッチ適用可能な構成のコンプライアンス・ルールは、次のとおりです。

2.4.1 パッチ適用可能性

説明: Oracleデータベース・ターゲットがパッチ適用可能な構成であることを確認します。

重大度: 警告

理由: 提供されているEnterprise Managerのパッチ適用機能を使用して、パッチ適用できないOracleデータベース・ターゲットにパッチを適用できません。

2.5 Oracleデータベースの記憶域のベスト・プラクティス

Oracleデータベース標準の記憶域のベスト・プラクティスのコンプライアンス・ルールは、次のとおりです。

2.5.1 自動セグメント領域管理が使用されていない表領域

説明: 手動セグメント領域管理を使用しているローカル管理表領域をチェックします。

重大度: マイナー警告

理由: 自動セグメント領域管理は、セグメント内の領域を管理する、より簡単で効率的な方法です。表領域に作成されるスキーマ・オブジェクトの記憶域パラメータPCTUSED、FREELISTSおよびFREELIST GROUPSの指定やチューニングを行う必要はまったくありません。RAC環境では、空きリスト・グループを使用する場合の領域の難しいパーティション化を回避できるという利点もあります。

2.5.2 ディクショナリ管理表領域

説明: ディクショナリ管理表領域をチェックします。

重大度: マイナー警告

理由: これらの表領域はディクショナリ管理されています。パフォーマンスの向上および領域管理の簡略化のために、自動セグメント領域管理を使用して、ローカル管理表領域を使用することをお薦めします。

2.5.3 表領域の不均一なデフォルト・エクステント・サイズ

説明: デフォルト・エクステント・サイズが不均一なディクショナリ管理表領域または移行されたローカル管理表領域がないかどうかをチェックします。

重大度: マイナー警告

理由: 均一でないデフォルト・エクステント・サイズを使用しているディクショナリ管理表領域または移行されたローカル管理表領域が見つかりました。1つの表領域内に様々なサイズのエクステントが存在すると、フラグメンテーションが発生し、領域が適切に使用されず、パフォーマンスの低下を招きます。

2.5.4 エクステント増加ポリシーに違反するセグメント

説明: エクステント・サイズが不適切であるか、または増加率が0以外に設定されている(あるいはその両方の)ディクショナリ管理表領域または移行されたローカル管理表領域のセグメントをチェックします。

重大度: マイナー警告

理由: これらのセグメントには、サイズが初期エクステントの倍数ではない、または増加率がゼロ以外に設定されているエクステントが含まれています。この状態では領域が適切に再利用されず、フラグメンテーションの問題が発生することがあります。

2.5.5 システム表領域をデフォルト表領域として使用しているシステム以外のユーザー

説明: SYSTEMまたはSYSAUXをデフォルト表領域として使用しているシステム以外のユーザーをチェックします。

重大度: マイナー警告

理由: これらのシステム以外のユーザーが、システム表領域をデフォルト表領域として使用しています。この違反状態では、システム以外のデータ・セグメントがシステム表領域に追加されるため、これらのデータ・セグメントの管理がより困難になり、システム表領域のパフォーマンス低下の原因となります。これはセキュリティ上の問題でもあります。システム表領域内のすべての使用可能な領域が消費されるため、データベースが停止する可能性があります。

2.5.6 デフォルトの一時表領域がシステム表領域に設定されている

説明: DEFAULT_TEMP_TABLESPACEデータベース・プロパティがシステム表領域に設定されているかどうかをチェックします。

重大度: 警告

理由: 明示的に指定されていない場合、DEFAULT_TEMP_TABLESPACEはデフォルトでシステム表領域になります。この設定は、お薦めしません。この設定の場合、一時表領域が明示的に割り当てられていないすべてのユーザーは、システム表領域を一時表領域として使用します。一時データの格納にシステム表領域を使用することはお薦めしません。これはセキュリティ上の問題でもあります。システム以外のユーザーがシステム表領域にデータを格納して、システム表領域の使用可能なすべての領域を消費するため、データベースが停止する可能性があります。

2.5.7 デフォルトの永続表領域がシステム表領域に設定されている

説明: DEFAULT_PERMANENT_TABLESPACEデータベース・プロパティがシステム表領域に設定されているかどうかをチェックします。

重大度: 警告

理由: 明示的に指定されていない場合、DEFAULT_PERMANENT_TABLESPACEはデフォルトでシステム表領域になります。これは推奨の設定ではありません。この設定の場合、永続表領域が明示的に割り当てられていないすべてのユーザーは、システム表領域を使用します。このように使用すると、データベースのパフォーマンスが低下する可能性があります。これはセキュリティ上の問題でもあります。システム以外のユーザーがシステム表領域にデータを格納して、システム表領域の使用可能なすべての領域を消費するため、データベースが停止する可能性があります。

2.5.8 ロールバックおよびデータ・セグメントを含む表領域

説明: ロールバック・セグメントとデータ・セグメントの両方を含む表領域がないかどうかをチェックします。

重大度: マイナー警告

理由: これらの表領域には、ロールバック・セグメントとデータ・セグメントの両方が含まれています。このようにタイプの異なるセグメントを混在させると、領域管理がより困難になり、表領域のパフォーマンスが低下することもあります。ロールバック・セグメント専用の表領域を使用すれば、可用性とパフォーマンスが向上します。

2.5.9 REDOログ数の不足

説明: 使用しているREDOログが2つ以下でないかをチェックします。

重大度: 警告

理由: オンラインREDOログ・ファイルは、データベースにおける変更を記録するために使用されます。アーカイブが有効な場合、オンラインREDOログを再利用する前にアーカイブする必要があります。各データベースでは、最低でも2つのオンラインREDOログ・グループが実行中である必要があります。オンラインREDOログのサイズと数が不足すると、LGWRはログを上書きする前に、ARCHがアーカイブ済ログ保存先への書込みを完了するのを待ちます。このような動作は、アクティビティがピークに達する期間には著しくパフォーマンスを低下させる原因となります。

2.5.10 SYSTEM表領域のSYSTEM以外のデータ・セグメント

説明: 表領域SYSTEMおよびSYSAUX内にあって、システム以外のユーザーが所有しているデータ・セグメントをチェックします。

重大度: マイナー警告

理由: システム・ユーザー以外に属するこれらのセグメントは、システム表領域(SYSTEMまたはSYSAUX)に格納されています。この違反状態では、これらのデータ・セグメントの管理がより困難になり、システム表領域のパフォーマンス低下の原因となる場合があります。これはセキュリティ上の問題でもあります。システム以外のユーザーがシステム表領域にデータを格納している場合、システム表領域内のすべての使用可能な領域が消費されるため、データベースが停止する可能性があります。

2.5.11 REDOログ・サイズの不足

説明: REDOログ・ファイルが1MB未満でないかをチェックします。

重大度: クリティカル

理由: REDOログのサイズが小さいと、システム・チェックポイントでバッファ・キャッシュとI/Oシステムに継続的に高負荷がかかります。

2.5.12 SYSTEM表領域のデータベース・ロールバック・セグメント

説明: SYSTEM表領域にロールバック・セグメントがないかどうかをチェックします。

重大度: マイナー警告

理由: SYSTEM表領域は、Oracleデータ・ディクショナリとその関連オブジェクト専用に確保しておく必要があります。ユーザー表、ユーザー索引、ユーザー・ビュー、ロールバック・セグメント、UNDOセグメント、一時セグメントなど他のタイプのオブジェクトの格納には使用しないでください。

2.5.13 永続表領域を一時表領域として使用しているユーザー

説明: 永続表領域を一時表領域として使用しているユーザーをチェックします。

重大度: マイナー警告

理由: これらのユーザーは、永続表領域を一時表領域として使用しています。一時表領域を使用すれば、ソート操作の領域管理をさらに効率的にできます。ソート操作に永続表領域を使用した場合、特にReal Application Clustersではパフォーマンス低下の原因になることがあります。さらに他のセキュリティ上の問題があります。ユーザーがシステム表領域内のすべての使用可能な領域を使用できるため、データベースが停止する可能性があります。

3 Oracle Real Application Clusterデータベースのコンプライアンス標準

次に示すのは、Oracle Application Clusterデータベースのコンプライアンス標準のコンプライアンス・ルールです。コンプライアンス標準は次のとおりです。

- Oracleクラスタ・データベースの基本的なセキュリティ構成

- Oracle Real Application Clusterデータベースの構成のベスト・プラクティス

- Oracleクラスタ・データベースの高度なセキュリティ構成

- Real Application Clusterデータベースのパッチ適用可能な構成

- Oracle Real Applicationデータベースの記憶域のベスト・プラクティス

- Oracleクラスタ・データベース・インスタンスの基本的なセキュリティ構成

- Oracleクラスタ・データベース・インスタンスの高度なセキュリティ構成

3.1 Oracleクラスタ・データベースの基本的なセキュリティ構成

Oracleクラスタ・データベース標準の基本的なセキュリティ構成のコンプライアンス・ルールは、次のとおりです。

3.1.1 Oracle Netクライアント・ログ・ディレクトリの権限

説明: クライアント・ログ・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: ログ・ファイルでは、エラー・スタックに含まれる情報が提供されます。エラー・スタックとは、ネットワーク・エラーの結果としてOracle通信スタック内に各レイヤーごとに作成される情報です。ログ・ファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

3.1.2 Oracle Netクライアント・トレース・ディレクトリの権限

説明: クライアントのトレース・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: トレースにより、ネットワーク・イベントを実行時に記述する一連の詳細な文が作成されます。操作をトレースすると、Oracle Net Servicesのコンポーネントの内部操作に関して、ログ・ファイルよりも詳しい情報を取得できます。このファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

3.1.3 Oracleホーム・ファイルの権限

説明: ORACLE_HOMEディレクトリ(ORACLE_HOME/bin以外)のすべてのファイルに対するパブリックからの読取り、書込みまたは実行の権限がないことを確認します。

重大度: 警告

理由: ファイル・アクセス権が適切でないOracleファイルがある場合、セキュリティ上の重要な問題が発生する可能性があります。

3.1.4 監査ファイル保存先(Windows)

説明: 監査ファイル・ディレクトリへのアクセスがOracleソフトウェア・セットの所有者とDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: AUDIT_FILE_DEST初期化パラメータは、Oracleの監査機能により作成される監査ファイルのディレクトリを指定します。このディレクトリに対するパブリック読取り権限を付与すると、起動、停止および優先接続のログ情報などの重要な情報が公開される可能性があります。

3.1.5 Oracle Netクライアント・トレース・ディレクトリの権限(Windows)

説明: クライアントのトレース・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: トレースにより、ネットワーク・イベントを実行時に記述する一連の詳細な文が作成されます。操作をトレースすると、Oracle Net Servicesのコンポーネントの内部操作に関して、ログ・ファイルよりも詳しい情報を取得できます。このファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

3.1.6 リモートOS認証

説明: REMOTE_OS_AUTHENT初期化パラメータがFALSEに設定されていることを確認します。

重大度: クリティカル

理由: リモートOS認証が許可されている場合、悪質なユーザーがデータベースにアクセスする可能性があります。

3.1.7 PROTOCOL ERROR TRACE ACTION

説明: sec_protocol_error_trace_actionパラメータがLOGまたはALERTに設定されていることを確認します。

重大度: クリティカル

理由: SEC_PROTOCOL_ERROR_TRACE_ACTIONには、悪意を持つ可能性があるクライアントから不正なパケットを受信したときに、データベースが行うアクションを指定します。データベース・サーバーでは不正なパケットが無視され、トレース・ファイルやログ・メッセージが生成されないため、NONEを指定しないでください。デフォルト値TRACEを指定すると、データベース・サーバーでは詳細なトレース・ファイルが生成されるため、デバッグのときのみ指定します。

3.1.8 パスワード・ロック期間

説明: すべてのプロファイルでPASSWORD_LOCK_TIMEが適切な日数に設定されていることを確認します。

重大度: 警告

理由: 小さい値を指定すると、DoS攻撃の可能性が増加します。

3.1.9 SYS.USER_HISTORY$表へのアクセス

説明: SYS.USER_HISTORY$表へのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: ユーザー名およびパスワード・ハッシュがSYS.USER_HISTORY$表から読み取られるため、ハッカーによる総当たり攻撃が可能になります。

3.1.10 SYS.USER$表へのアクセス

説明: SYS.USER$表へのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: ユーザー名およびパスワード・ハッシュがSYS.USER$表から読み取られるため、ハッカーによる総当たり攻撃が可能になります。

3.1.11 SYS.SOURCE$表へのアクセス

説明: SYS.SOURCE$表へのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: データベースにあるすべてのストアド・パッケージ・ユニットのソースが含まれています。

3.1.12 UTL_HTTP実行のための制限された権限

説明: PUBLICがUTL_HTTPパッケージに対する実行権限を持たないことを確認します。

重大度: クリティカル

理由: PUBLICロールに付与された権限は、自動的にすべてのユーザーに適用されます。EXECUTE権限を使用して、悪質なユーザーが電子メール、ネットワークおよびhttpモジュールにアクセスすることが可能です。

3.1.13 IDLE TIME

説明: ユーザー・プロファイル設定IDLE_TIMEが、特定のデータベースおよびアプリケーションに対して適切な値に設定されていることを確認します。

重大度: クリティカル

理由: 複数のアイドル・セッションがオープンのままになっている期間が長すぎると、システム・リソースが消費され、Oracleデータベースの他のユーザーに対するサービス拒否が生じる可能性があります。セッションをアイドル状態にしておける最大分数を制限してください。

3.1.14 Oracleホーム実行可能ファイルの所有者

説明: ORACLE_HOME/binフォルダ内のすべてのファイルおよびディレクトリの所有者がOracleソフトウェア・インストールの所有者と同じであることを確認します。

重大度: クリティカル

理由: ファイル・アクセス権が適切でないOracleファイルがある場合、セキュリティ上の重要な問題が発生する可能性があります。

3.1.15 Oracleホーム・ファイルの権限

説明: ORACLE_HOMEディレクトリ(ORACLE_HOME/bin以外)のすべてのファイルに対するパブリックからの読取り、書込みまたは実行の権限がないことを確認します。

重大度: 警告

理由: ファイル・アクセス権が適切でないOracleファイルがある場合、セキュリティ上の重要な問題が発生する可能性があります。

3.1.16 Oracle Netサーバー・トレース・ディレクトリの権限

説明: サーバーのトレース・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: トレースにより、ネットワーク・イベントを実行時に記述する一連の詳細な文が作成されます。操作をトレースすると、Oracle Net Servicesのコンポーネントの内部操作に関して、ログ・ファイルよりも詳しい情報を取得できます。このファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

3.1.17 データベース監査の有効化

説明: データベース監査が有効であることを確認します。

重大度: マイナー警告

理由: AUDIT_TRAILパラメータは、データベース監査を有効または無効にします。監査により、責務が強制され、誤使用の証拠が提供され、規制へのコンプライアンスが頻繁に要求されるため、セキュリティが向上します。また、監査により、システム管理者は保護の強化、不審なアクティビティの早期検出およびセキュリティ・レスポンスの微調整を行うことができます。

3.1.18 Oracleホーム・データファイルの権限

説明: データファイルへのアクセス権がOracleソフトウェア・セットの所有者とDBAグループに制限されます。

重大度: クリティカル

理由: データファイルには、すべてのデータベース・データが含まれています。パブリックからデータファイルの読取りが可能な場合、このデータに対するデータベース権限のないユーザーがデータファイルを読み取ることができます。

3.1.19 Oracleホーム・データファイルの権限(Windows)

説明: データファイルへのアクセス権がOracleソフトウェア・セットの所有者とDBAグループに制限されます。

重大度: クリティカル

理由: データファイルには、すべてのデータベース・データが含まれています。パブリックからデータファイルの読取りが可能な場合、このデータに対するデータベース権限のないユーザーがデータファイルを読み取ることができます。

3.1.20 制御ファイルの権限(Windows)

説明: 制御ファイル・ディレクトリへのアクセスがOracleソフトウェア・セットの所有者とDBAグループに制限されていることを確認します。

重大度: クリティカル

理由:制御ファイルとは、データファイルへのアクセスを制御するバイナリ構成ファイルです。制御ファイルは、CONTROL_FILES初期化パラメータで指定されたディレクトリに保存されます。このディレクトリに対するパブリック書込み権限があると、セキュリティ上の重大な問題を引き起こす可能性があります。

3.1.21 DBA_ROLESビューへのアクセス

説明: DBA_ROLESビューへのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: DBA_ROLESビューには、データベースのすべてのロールの詳細が含まれます。データベースのロールの構造に関する情報は、悪質なユーザーによって利用される可能性があります。

3.1.22 サーバー・パラメータ・ファイルの権限

説明: サーバー・パラメータ・ファイルへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: サーバー・パラメータ・ファイル(SPFILE)を使用すると、初期化パラメータをサーバー側ディスク・ファイルで永続的に保存および管理できます。SPFILEがパブリックからアクセス可能な場合、機密情報に関する初期化パラメータがスキャンされ、データベースのセキュリティ・ポリシーが公開される可能性があります。SPFILEを検索してOracleデータベース構成の設定の脆弱性を見つけることもできます。

3.1.23 コア・ダンプ保存先

説明: コア・ダンプ・ファイル・ディレクトリへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: コア・ダンプ・ファイルは、CORE_DUMP_DEST初期化パラメータで指定されたディレクトリに保存されます。このディレクトリに対するパブリック読取り権限があると、コア・ダンプ・ファイルから機密情報が公開される可能性があります。

3.1.24 初期化パラメータ・ファイルの権限(Windows)

説明: 初期化パラメータ・ファイルへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: 警告

理由: 従来、Oracleではテキストの初期化パラメータ・ファイルに初期化パラメータが格納されます。初期化パラメータ・ファイルがパブリックからアクセス可能な場合、機密情報に関する初期化パラメータがスキャンされ、データベースのセキュリティ・ポリシーが公開される可能性があります。IFILEを検索してOracleデータベース構成の設定の脆弱性を見つけることもできます。

3.1.25 ユーザー・ダンプ保存先(Windows)

説明: トレース・ファイル・ディレクトリへのアクセスがOracleソフトウェア・セットの所有者とDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: サーバー・プロセスのトレース・ファイルは、USER_DUMP_DEST初期化パラメータで指定されたディレクトリに保存されます。このディレクトリに対するパブリック読取り権限を付与すると、データベースおよびアプリケーションに関する内部の重要な機密情報の詳細が公開される可能性があります。

3.1.26 Oracle Netサーバー・トレース・ディレクトリの権限(Windows)

説明: サーバーのトレース・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: トレースにより、ネットワーク・イベントを実行時に記述する一連の詳細な文が作成されます。操作をトレースすると、Oracle Net Servicesのコンポーネントの内部操作に関して、ログ・ファイルよりも詳しい情報を取得できます。このファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

3.1.27 SYS操作の監査有効

説明: SYSとして接続したユーザーのセッションが完全に監査されていることを確認します。

重大度: 警告

理由: AUDIT_SYS_OPERATIONSパラメータは、SYSユーザーおよびSYSDBAまたはSYSOPER権限で接続しているユーザーが発行した操作の監査を有効または無効にします。

3.1.28 ユーティリティ・ファイル・ディレクトリ初期化パラメータの設定

説明: ユーティリティ・ファイル・ディレクトリ(UTL_FILE_DIR)初期化パラメータが、アスタリスク(*)、ピリオド(.)およびコア・ダンプ・トレース・ファイルの場所のいずれにも設定されていないことを確認します。

重大度: クリティカル

理由: UTL_FILEパッケージがアクセス可能なディレクトリを指定します。パラメータをアスタリスク(*)、ピリオド(.)または機密情報ディレクトリに設定すると、UTL_FILEパッケージに対して実行権限を持つすべてのユーザーに機密情報が公開される可能性があります。

3.1.29 パスワード存続期間

説明: すべてのプロファイルでPASSWORD_LIFE_TIMEが適切な日数に設定されていることを確認します。

重大度: 警告

理由: パスワード存続期間が長いと、ハッカーにパスワードを推測する時間を多く与えることになります。そのため、データベースのセキュリティ上の重大な問題が発生する可能性があります。

3.1.30 DBA_USERSビューへのアクセス

説明: DBA_USERSビューへのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: ユーザー・パスワード・ハッシュおよびその他のアカウント情報が含まれています。この情報にアクセスされると、総当たり攻撃に利用される可能性があります。

3.1.31 サーバー・パラメータ・ファイルの権限(Windows)

説明: サーバー・パラメータ・ファイルへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: サーバー・パラメータ・ファイル(SPFILE)を使用すると、初期化パラメータをサーバー側ディスク・ファイルで永続的に保存および管理できます。SPFILEがパブリックからアクセス可能な場合、機密情報に関する初期化パラメータがスキャンされ、データベースのセキュリティ・ポリシーが公開される可能性があります。SPFILEを検索してOracleデータベース構成の設定の脆弱性を見つけることもできます。

3.1.32 Oracle Netクライアント・ログ・ディレクトリの権限(Windows)

説明: クライアント・ログ・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: ログ・ファイルでは、エラー・スタックに含まれる情報が提供されます。エラー・スタックとは、ネットワーク・エラーの結果としてOracle通信スタック内に各レイヤーごとに作成される情報です。ログ・ファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

3.1.33 外部で識別されたアカウントの使用

説明: OS認証接頭辞がOPS$以外の値に設定されていることを確認します。

重大度: 警告

理由: OS_AUTHENT_PREFIXパラメータは、サーバーに接続しようとするユーザーの認証に使用される接頭辞を指定します。接続がリクエストされたら、Oracleは接頭辞付きユーザー名とデータベースのユーザー名を比較します。接頭辞(特にOPS$)を使用すると、アカウントをオペレーティング・システム・ユーザーとして、またはIDENTIFIED句で使用されるパスワードを使用して認証できるため、構成が安全でなくなる傾向があります。攻撃者はこれを認識しており、このようなアカウントを攻撃します。

3.1.34 制御ファイルの権限

説明: 制御ファイル・ディレクトリへのアクセスがOracleソフトウェア・セットの所有者とDBAグループに制限されていることを確認します。

重大度: クリティカル

理由:制御ファイルとは、データファイルへのアクセスを制御するバイナリ構成ファイルです。制御ファイルは、CONTROL_FILES初期化パラメータで指定されたディレクトリに保存されます。このディレクトリに対するパブリック書込み権限があると、セキュリティ上の重大な問題を引き起こす可能性があります。

3.1.35 STATS$SQLTEXT表へのアクセス

説明: STATS$SQLTEXT表へのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: この表には最近実行されたSQL文の完全なテキストが記載されています。SQL文から機密情報が公開される可能性があります。

3.1.36 初期化パラメータ・ファイルの権限

説明: 初期化パラメータ・ファイルへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: 警告

理由: 従来、Oracleではテキストの初期化パラメータ・ファイルに初期化パラメータが格納されます。初期化パラメータ・ファイルがパブリックからアクセス可能な場合、機密情報に関する初期化パラメータがスキャンされ、データベースのセキュリティ・ポリシーが公開される可能性があります。IFILEを検索してOracleデータベース構成の設定の脆弱性を見つけることもできます。

3.1.37 監査ファイル保存先

説明: 監査ファイル・ディレクトリへのアクセスがOracleソフトウェア・セットの所有者とDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: AUDIT_FILE_DEST初期化パラメータは、Oracleの監査機能により作成される監査ファイルのディレクトリを指定します。このディレクトリに対するパブリック読取り権限を付与すると、起動、停止および優先接続のログ情報などの重要な情報が公開される可能性があります。

3.1.38 バックグラウンド・ダンプ保存先(Windows)

説明: トレース・ファイル・ディレクトリへのアクセスがOracleソフトウェア・セットの所有者とDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: ログ・ライター・プロセスやデータベース・ライター・プロセスなどのバックグラウンド・プロセスは、データベース操作の状態変化および例外やエラーの記録にトレース・ファイルを使用します。トレース・ファイルは、BACKGROUND_DUMP_DEST初期化パラメータで指定されたディレクトリに保存されます。このディレクトリに対するパブリック読取り権限を付与すると、データベースおよびアプリケーションに関する内部の重要な機密情報の詳細が公開される可能性があります。

3.1.39 PROTOCOL ERROR FURTHER ACTION

説明: SEC_PROTOCOL_ERROR_FURTHER_ACTIONパラメータがDROPまたはDELAYに設定されていることを確認します。

重大度: クリティカル

理由: デフォルト値CONTINUEが使用されている場合、不良パケットが受信されても、サーバー・プロセスは継続して実行されます。悪意を持つクライアントが不正なパケットを継続的に送信する場合、データベース・サーバーはサービス妨害(DoS)攻撃を受ける可能性があります。

3.1.40 DBA_TAB_PRIVSビューへのアクセス

説明: DBA_TAB_PRIVSビューへのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: ユーザーまたはロールに付与された、データベース内のオブジェクトに対する権限がリストされています。データベースのロールの構造に関する情報は、悪質なユーザーによって利用される可能性があります。

3.1.41 STATS$SQL_SUMMARY表へのアクセス

説明: トレース・ファイル・ディレクトリへのアクセスがOracleソフトウェア・セットの所有者とDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: サーバー・プロセスのトレース・ファイルは、USER_DUMP_DEST初期化パラメータで指定されたディレクトリに保存されます。このディレクトリに対するパブリック読取り権限を付与すると、データベースおよびアプリケーションに関する内部の重要な機密情報の詳細が公開される可能性があります。

3.1.42 許可されたログオン・バージョン

説明: 一致するバージョン以上のクライアントからのログオンのみを、サーバーが許可することを確認します。

重大度: 警告

理由: sqlnet.oraでSQLNET.ALLOWED_LOGON_VERSIONパラメータをサーバーのバージョンより低く設定すると、比較的セキュアでない認証プロトコルが強制的にサーバーで使用されます。

3.1.43 Well Knownアカウント

説明: Well Knownアカウントへのアクセス可能性をチェックします。

重大度: 警告

理由: Well Knownアカウントを利用して、知識のある悪質なユーザーがデータベースにアクセスする可能性があります。

3.1.44 DBA_ROLE_PRIVSビューへのアクセス

説明: DBA_ROLE_PRIVSビューへのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: DBA_ROLE_PRIVSビューにはユーザーに付与されたロールおよびその他のロールがリストされています。データベースのロールの構造に関する情報は、悪質なユーザーによって利用される可能性があります。

3.1.45 SYS.AUD$表へのアクセス

説明: SYS.AUD$表へのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: 知識のある悪質なユーザーが、機密監査情報へアクセスできる可能性があります。

3.1.46 STATS$SQL_SUMMARY表へのアクセス

説明: STATS$SQL_SUMMARY表へのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: サーバーに対して発行されたほとんどのリソース集約コマンドを表すSQLテキストの最初の数行が含まれています。バインド変数なしで実行されたSQL文がここに表示され、機密情報が公開される可能性があります。

3.1.47 UNIXシステムにおける適切なumaskの使用

説明: UNIXシステムでOracleソフトウェアの所有者が適切なumask値である022に設定されていることを確認します。

重大度: 警告

理由: umaskが適切な値(022など)に設定されていない場合、ログまたはトレース・ファイルがパブリックからアクセスできるようになり、機密情報が公開される可能性があります。

3.1.48 コア・ダンプ保存先(Windows)

説明: コア・ダンプ・ファイル・ディレクトリへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: コア・ダンプ・ファイルは、CORE_DUMP_DEST初期化パラメータで指定されたディレクトリに保存されます。このディレクトリに対するパブリック読取り権限があると、コア・ダンプ・ファイルから機密情報が公開される可能性があります。

3.1.49 データ・ディクショナリ保護

説明: データ・ディクショナリの保護が有効であることを確認します。

重大度: クリティカル

理由: 07_DICTIONARY_ACCESSIBILITYパラメータにより、データ・ディクショナリへのアクセスが制御されます。07_DICTIONARY_ACCESSIBILITYをTRUEに設定すると、ANYシステム権限を持つユーザーはデータ・ディクショナリにアクセスできます。その結果、これらのユーザーのアカウントが、データへの不正なアクセスの取得に利用されます。

3.1.50 デフォルト・パスワード

説明: 既知のアカウントにデフォルト・パスワードがないことを確認します。

重大度: 警告

理由: デフォルト・パスワードを使用して、悪質なユーザーがデータベースにアクセスすることが可能です。

3.1.51 パスワードの複雑性の検証機能の使用

説明: プロファイルに対してPASSWORD_VERIFY_FUNCTIONリソースが設定されていることを確認します。

重大度: クリティカル

理由: 複雑性の最低要件を満たさないパスワードを使用すると、複雑なパスワードを使用する場合に比べて大幅に保護機能が低下します。

3.1.52 DBA_SYS_PRIVSビューへのアクセス

説明: DBA_SYS_PRIVSビューへのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: DBA_SYS_PRIVSビューに問い合せて、ロールおよびユーザーに付与されたシステム権限を検索できます。データベースのロールの構造に関する情報は、悪質なユーザーによって利用される可能性があります。

3.1.53 PUBLICへのDBMS_JOBに対する実行権限

説明: DBMS_JOBパッケージに対するEXECUTE権限がPUBLICに付与されていないことを確認します。

重大度: クリティカル

理由: DBMS_JOBパッケージに対するEXECUTE権限をPUBLICに付与すると、ユーザーがデータベースに対してジョブをスケジュールできるようになります。

3.1.54 PUBLICへのDBMS_SYS_SQLに対する実行権限

説明: DBMS_SYS_SQLパッケージに対するEXECUTE権限がPUBLICに付与されていないことを確認します。

重大度: クリティカル

理由: DBMS_SYS_SQLパッケージを使用すると、PL/SQLおよびSQLをコール元ではなくプロシージャの所有者として実行できます。

3.1.55 UTL_TCP実行のための制限された権限

説明: PUBLICがUTL_TCPパッケージに対する実行権限を持たないことを確認します。

重大度: クリティカル

理由: PUBLICロールに付与された権限は、自動的にすべてのユーザーに適用されます。EXECUTE権限を使用して、悪質なユーザーが電子メール、ネットワークおよびhttpモジュールにアクセスすることが可能です。

3.1.56 Oracle Netサーバー・ログ・ディレクトリの権限

説明: サーバー・ログ・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: ログ・ファイルでは、エラー・スタックに含まれる情報が提供されます。エラー・スタックとは、ネットワーク・エラーの結果としてOracle通信スタック内に各レイヤーごとに作成される情報です。ログ・ファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

3.1.57 Oracle Netサーバー・ログ・ディレクトリの権限(Windows)

説明: サーバー・ログ・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: ログ・ファイルでは、エラー・スタックに含まれる情報が提供されます。エラー・スタックとは、ネットワーク・エラーの結果としてOracle通信スタック内に各レイヤーごとに作成される情報です。ログ・ファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

3.1.58 リモートOSロール

説明: REMOTE_OS_ROLES初期化パラメータがFALSEに設定されていることを確認します。

重大度: クリティカル

理由: リモート・ユーザーに権限のあるロールを付与できる場合、悪質なユーザーがデータベースにアクセスする可能性があります。

3.1.59 パブリック・トレース・ファイル

説明: データベース・トレース・ファイルがパブリックから読取り不可能であることを確認します。

重大度: クリティカル

理由: トレース・ファイルをPUBLICグループから読取り可能にすると、悪質なユーザーがトレース・ファイルを読取りにいき、機密情報が公開される可能性があります。

3.1.60 リモート・リスナー・インスタンスの使用

説明: データベース・インスタンスとは別のリモート・マシンでリスナー・インスタンスを使用していないことを確認します。

重大度: 警告

理由: REMOTE_LISTENER初期化パラメータを使用すると、リモート・マシン上のリスナーがデータベースにアクセスできます。このパラメータは、マルチ・マスター・レプリケーションまたはReal Application Cluster環境では、設定によってリスナーのロード・バランス・メカニズムが指定されるため、適用できません。

3.1.61 パスワード猶予期間

説明: すべてのプロファイルでPASSWORD_GRACE_TIMEが適切な日数に設定されていることを確認します。

重大度: クリティカル

理由: PASSWORD_GRACE_TIMEパラメータの値が高く設定されていると、ユーザーが同じパスワードを長時間使用できるため、データベースのセキュリティ上の重大な問題が発生する可能性があります。

3.1.62 クリアテキスト・パスワードを使用するデータベース・リンクの使用

説明: クリアテキスト・パスワードを使用するデータベース・リンクが使用されていないことを確認します。

重大度: 警告

理由: SYS.LINK$表には、データベース・リンクで使用されるクリアテキスト・パスワードが含まれます。悪質なユーザーがSYS.LINK$表からクリアテキスト・パスワードを読み取り、望ましくない結果になる可能性があります。

3.1.63 UTL_SMTP実行のための制限された権限

説明: PUBLICがUTL_SMTPパッケージに対する実行権限を持たないことを確認します。

重大度: クリティカル

理由: PUBLICロールに付与された権限は、自動的にすべてのユーザーに適用されます。悪質なユーザーによって、EXECUTE権限を使用され、電子メール、ネットワークおよびHTTPモジュールにアクセスされる可能性があります。

3.2 Oracle Real Application Clusterデータベースの構成のベスト・プラクティス

Oracle Real Application Clusterデータベース・コンプライアンス標準の構成のベスト・プラクティスのコンプライアンス標準ルールは、次のとおりです。

3.2.1 制御ファイル数の不足

説明: 単一の制御ファイルを使用していないかどうかをチェックします。

重大度: クリティカル

理由: 制御ファイルは、Oracleデータベースで最も重要なファイルの1つです。このファイルには、データベースに関する多くの物理特性と重要なリカバリ情報が記載されています。メディア・エラーによって1つしかない制御ファイルが失われると、不要な停止時間およびその他のリスクが発生します。

3.2.2 強制ロギングが無効

説明: Data Guardの使用時に、プライマリ・データベースの強制ロギングが無効になっていないかをチェックします。

重大度: 警告

理由: プライマリ・データベースは強制ロギング・モードではありません。そのため、ログに記録されないプライマリ・データベースへの直接書込みはスタンバイ・データベースに伝播されません。

3.2.3 高速リカバリ領域が設定されていない

説明: リカバリ領域が設定されているかどうかをチェックします。

重大度: 警告

理由: NO_RECOVERY_AREA_IMPACT

高速リカバリ領域を使用すると、バックアップ関連ファイル用のディスク領域を手動で管理したり、様々なタイプのファイル間で使用する領域のバランスをとる必要性を最小限に抑えられます。バックアップ管理を簡略化するために高速リカバリ領域を有効にすることをお薦めします。

3.3 Oracleクラスタ・データベースの高度なセキュリティ構成

Oracleクラスタ・データベース標準の高度なセキュリティ構成のコンプライアンス・ルールは、次のとおりです。

3.3.1 $ORACLE_HOME/network/adminディレクトリ所有者

説明: $ORACLE_HOME/network/admin所有権がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: network/adminの所有権をOracleソフトウェア・セットおよびDBAグループに制限しないと、悪質なユーザーにネット構成データが漏れてセキュリティ上の問題が発生する可能性があります。

3.3.2 Oracleホーム実行可能ファイルの権限

説明: ORACLE_HOME/binフォルダ内のすべてのファイルに対するパブリックからの書込み権限がないことを確認します。

重大度: 警告

理由: ファイル・アクセス権が適切でないOracleファイルがある場合、セキュリティ上の重要な問題が発生する可能性があります。

3.3.3 Oracle XSQL構成ファイルの所有者

説明: Oracle XSQL構成ファイル(XSQLConfig.xml)がOracleソフトウェアの所有者に所有されていることを確認します。

重大度: 警告

理由: Oracle XSQL構成ファイル(XSQLConfig.xml)には、データベース接続の機密情報が含まれています。XSQL構成ファイルがパブリックからアクセス可能な場合、機密データへのアクセスまたはさらなる攻撃に利用可能なデータベース・ユーザー名およびパスワードが漏れる可能性があります。

3.3.4 ログ・アーカイブ二重保存先の所有者

説明: サーバーのアーカイブ・ログ・ディレクトリが、Oracleソフトウェアの所有者に所有されている有効なディレクトリであることを確認します。

重大度: クリティカル

理由: LOG_ARCHIVE_DUPLEX_DESTパラメータ(init.oraファイル内)で指定されたディレクトリがOracleソフトウェア・インストールの所有者に所有されていないか、このディレクトリに対する権限が他のユーザーに付与されている場合、LogMinerを使用するとデータベース情報をアーカイブ・ログから取得できます。

3.3.5 Oracle AgentのSNMP読取り専用構成ファイルの所有者

説明: Oracle AgentのSNMP読取り専用構成ファイル(snmp_ro.ora)がOracleソフトウェアの所有者によって所有されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り専用構成ファイル(snmp_ro.ora)には、エージェントのリスニング・アドレス、認識しているSQL*NetリスナーとOracleデータベース・サービスの名前、およびトレース・パラメータが含まれています。SNMP読取り専用構成ファイルがパブリックからアクセス可能な場合、トレース・ディレクトリの場所やdbsnmpアドレスなどの機密データを取得するために使用される可能性があります。

3.3.6 ログ・アーカイブ保存先の権限(Windows)

説明: サーバーのアーカイブ・ログにパブリックからアクセスできないことを確認します。

重大度: クリティカル

理由: LOG_ARCHIVE_DESTパラメータ(init.oraファイル内)で指定されたディレクトリがOracleソフトウェア・インストールの所有者に所有されていないか、このディレクトリに対する権限が他のユーザーに付与されている場合、LogMinerを使用するとデータベース情報をアーカイブ・ログから取得できます。

3.3.7 ログ・アーカイブ二重保存先の権限(Windows)

説明: サーバーのアーカイブ・ログにパブリックからアクセスできないことを確認します。

重大度: クリティカル

理由: LOG_ARCHIVE_DUPLEX_DESTパラメータ(init.oraファイル内)で指定されたディレクトリがOracleソフトウェア・インストールの所有者に所有されていないか、このディレクトリに対する権限が他のユーザーに付与されている場合、LogMinerを使用するとデータベース情報をアーカイブ・ログから取得できます。

3.3.8 DISPATCHERS

説明: DISPATCHERSパラメータが設定されていることを確認します。

重大度: クリティカル

理由: これによりデフォルトのポートftp: 2100およびhttp: 8080が無効になります。XDBポートを削除することで、Oracleサーバーの攻撃対象領域が縮小されます。本番で使用する必要がない場合、これらのポートは無効にすることをお薦めします。

3.3.9 PUBLICへのUTL_FILEに対する実行権限

説明: PUBLICがUTL_FILEパッケージに対する実行権限を持たないことを確認します。

重大度: クリティカル

理由: PUBLICロールに付与された権限は、自動的にすべてのユーザーに適用されます。UTL_FILE権限を付与すると、悪質なユーザーがシステム内の任意のファイルを読取り/書込みできるようになります。

3.3.10 CPU PER SESSION

説明: すべてのプロファイルでCPU_PER_SESSIONがCPUサイクルの適切な数に設定されていることを確認します。

重大度: クリティカル

理由: 単一のアプリケーションまたはユーザーに過剰なCPUリソースの消費を許すと、Oracleデータベースに対するサービス拒否が生じることになります。

3.3.11 EXECUTE PROCEDURE権限の監査

説明: すべてのユーザーに対するアクセスによりEXECUTE ANY PROCEDURE権限が監査されていることを確認します。

重大度: クリティカル

理由: ロールの作成の監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

3.3.12 SELECT ANY DICTIONARY権限の監査

説明: すべてのユーザーに対するアクセスによりSELECT ANY DICTIONARY権限が監査されていることを確認します。

重大度: クリティカル

理由: SELECT ANY DICTIONARYの監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

3.3.13 IFILE参照先ファイルの権限

説明: IFILEパラメータによって参照されるファイルへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: IFILE初期化パラメータを使用すると、他の初期化パラメータ・ファイルの内容を現在の初期化パラメータ・ファイルに埋め込むことができます。初期化パラメータ・ファイルがパブリックからアクセス可能な場合、機密情報に関する初期化パラメータがスキャンされ、データベースのセキュリティ・ポリシーが公開される可能性があります。初期化パラメータ・ファイルを検索してOracleデータベース構成の設定の脆弱性を見つけることもできます。

3.3.14 ログ・アーカイブ保存先の所有者

説明: サーバーのアーカイブ・ログ・ディレクトリが、Oracleソフトウェアの所有者に所有されている有効なディレクトリであることを確認します。

重大度: クリティカル

理由: LOG_ARCHIVE_DESTパラメータ(init.oraファイル内)で指定されたディレクトリがOracleソフトウェア・インストールの所有者に所有されていないか、このディレクトリに対する権限が他のユーザーに付与されている場合、LogMinerを使用するとデータベース情報をアーカイブ・ログから取得できます。

3.3.15 ログ・アーカイブ保存先の権限

説明: サーバーのアーカイブ・ログにパブリックからアクセスできないことを確認します。

重大度: クリティカル

理由: LOG_ARCHIVE_DESTパラメータ(init.oraファイル内)で指定されたディレクトリがOracleソフトウェア・インストールの所有者に所有されていないか、このディレクトリに対する権限が他のユーザーに付与されている場合、LogMinerを使用するとデータベース情報をアーカイブ・ログから取得できます。

3.3.16 Oracle XSQL構成ファイルの権限

説明: Oracle XSQL構成ファイル(XSQLConfig.xml)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle XSQL構成ファイル(XSQLConfig.xml)には、データベース接続の機密情報が含まれています。XSQL構成ファイルがパブリックからアクセス可能な場合、機密データへのアクセスまたはさらなる攻撃に利用可能なデータベース・ユーザー名およびパスワードが漏れる可能性があります。

3.3.17 Webcache初期化ファイルの権限

説明: Webcache初期化ファイル(webcache.xml)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Webcache初期化ファイル(webcache.xml)には機密情報が格納されます。Webcache初期化ファイルがパブリックからアクセス可能な場合、管理者パスワードのハッシュなどの機密データを取得するために使用される可能性があります。

3.3.18 Oracle HTTP Server分散構成ファイルの所有者

説明: Oracle HTTP Server分散構成ファイルの所有権がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle HTTP Server分散構成ファイル(通常は.htaccess)は、Webフォルダのアクセス制御および認証に使用されます。このファイルを変更して、機密情報を含むページへのアクセス権を取得することができます。

3.3.19 Oracle HTTP Serverのmod_plsql構成ファイルの権限

説明: Oracle AgentのSNMP読取り専用構成ファイル(snmp_ro.ora)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り専用構成ファイル(snmp_ro.ora)には、エージェントのリスニング・アドレス、認識しているSQL*NetリスナーとOracleデータベース・サービスの名前、およびトレース・パラメータが含まれています。SNMP読取り専用構成ファイルがパブリックからアクセス可能な場合、トレース・ディレクトリの場所やdbsnmpアドレスなどの機密データを取得するために使用される可能性があります。

3.3.20 RETURN SERVER RELEASE BANNER

説明: パラメータSEC_RETURN_SERVER_RELEASE_BANNERの値がFALSEであることを確認します。

重大度: クリティカル

理由: パラメータSEC_RETURN_SERVER_RELEASE_BANNERがTRUEの場合、Oracleデータベースから完全なデータベース・バージョン情報がクライアントに返されます。正確なパッチ・セットが攻撃側に知られると利用される可能性があります。

3.3.21 tkprof実行可能ファイルの権限のOracleソフトウェア・セットおよびDBAグループへの制限

説明: tkprof実行可能ファイルがOracleソフトウェアの所有者によって所有されていることを確認します。

重大度: 警告

理由: TKPROF所有権をOracleソフトウェア・セットおよびDBAグループに制限しないと、情報漏れが発生する可能性があります。

3.3.22 SESSIONS_PER_USER

説明: すべてのプロファイルでSESSIONS_PER_USERが適切な数に設定されていることを確認します。

重大度: クリティカル

理由: 1ユーザー当たりのセッション数を無制限に許すと、Oracleリソースが消費され、サービス拒否が生じる可能性があります。個々のユーザーのセッション数を制限してください。

3.3.23 DROP ANY ROLE権限の監査

説明: すべてのユーザーに対するアクセスによりDROP ANY ROLE権限が監査されていることを確認します。

重大度: クリティカル

理由: ロールの作成の監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

3.3.24 Windows NTドメイン接頭辞の使用

説明: 外部で識別されたユーザーが接続中にドメインを指定していることを確認します。

重大度: クリティカル

理由: この設定は、Windowsシステムにのみ適用されます。アカウントを外部で識別する必要がある場合、レジストリでOSAUTH_PREFIX_DOMAINをTRUEに設定すると、アカウントにドメインの指定を義務付けます。このため、異なるドメインまたはローカル・システムからのユーザー・アクセスのなりすましを防ぐことができます。

3.3.25 ローカルの「Users」グループの「Domain Users」グループ・メンバー

説明: ドメイン・サーバーのローカルのUsersグループにDomain Usersグループが含まれていないことを確認します。

重大度: 警告

理由: ドメイン・サーバーのローカルのUsersグループにDomain Usersグループが含まれていると、重大なセキュリティ上の問題が発生する可能性があります。

3.3.26 Oracle HTTP Serverのmod_plsql構成ファイルの所有者

説明: Oracle HTTP Serverのmod_plsql構成ファイル(wdbsvr.app)がOracleソフトウェアの所有者に所有されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り/書込み構成ファイル(snmp_rw.ora)には、認識しているエージェントのリスニング・アドレス、SQL*Netリスナーの名前およびOracleデータベース・サービスと、トレース・パラメータが含まれています。SNMP読取り-書込み構成ファイルがパブリックからアクセス可能な場合、トレース・ディレクトリの場所やdbsnmpアドレスなどの機密データを取得するために使用される可能性があります。

3.3.27 Oracle AgentのSNMP読取り-書込み構成ファイルの権限

説明: Oracle AgentのSNMP読取り-書込み構成ファイル(snmp_rw.ora)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り-書込み構成ファイル(snmp_ro.ora)には、認識しているエージェントのリスニング・アドレス、SQL*Netリスナーの名前およびOracleデータベース・サービスと、トレース・パラメータが含まれています。SNMP読取り-書込み構成ファイルがパブリックからアクセス可能な場合、トレース・ディレクトリの場所やdbsnmpアドレスなどの機密データを取得するために使用される可能性があります。

3.3.28 SQL92セキュリティ機能の使用

説明: SQL92セキュリティの使用状況を確認します。

重大度: 警告

理由: SQL92セキュリティ機能を無効にすると、表に対するSELECT権限がなくても、ユーザーがWHERE句を使用してUPDATE文またはDELETE文を実行できる可能性があります。

3.3.29 リモート・パスワード・ファイル

説明: 特権ユーザーがオペレーティング・システムによって認証されます。つまり、パスワード・ファイルが無視されます。

重大度: マイナー警告

理由: REMOTE_LOGIN_PASSWORDFILEパラメータでは、Oracleがパスワード・ファイルをチェックするかどうかを指定します。パスワード・ファイルにはSYSを含むユーザーのパスワードが含まれているため、攻撃者が総当たりのパスワード関連攻撃を通じて接続することを防ぐ最も安全な方法は、特権ユーザーにオペレーティング・システムによる認証を要求することです。

3.3.30 DB SECUREFILE

説明: Oracleによって作成されたすべてのLOBファイルが、SecureFileとして作成されていることを確認します。

重大度: クリティカル

理由: LOBをSecureFileとして処理するには、COMPATIBILE初期化パラメータを11.1以上に設定します。2つのパーティション(ASSMが有効な表領域があるパーティションおよびASSMが無効な表領域があるパーティション)を持つLOB列がある場合、ASSMが有効な表領域を持つパーティションのLOBはSecureFileとして処理され、その他のパーティションのLOBはBasicFile LOBとして処理されます。db_securefileをALWAYSに設定すると、作成されたLOBファイルは必ずセキュア・ファイルになります。

3.3.31 TKPROF実行可能ファイルの権限

説明: tkprof実行可能ファイルの権限がグループに対する読取りおよび実行権限に制限されていることと、パブリックにはアクセスできないことを確認します。

重大度: 警告

理由: TKPROFの権限が大きすぎると、内部の情報が保護されなくなります。

3.3.32 PUBLICへのDBMS_LOBに対する実行権限

説明: DBMS_LOBパッケージに対するEXECUTE権限がPUBLICグループに付与されていないことを確認します。

重大度: クリティカル

理由: DBMS_LOBパッケージを使用すると、Oracleソフトウェア・インストールの所有者としてシステム上のファイルにアクセスできます。

3.3.33 PUBLICへのSYS.DBMS_EXPORT_EXTENSIONに対する実行権限

説明: PUBLICがSYS.DBMS_EXPORT_EXTENSIONパッケージに対する実行権限を持たないことを確認します。

重大度: クリティカル

理由: PUBLICロールに付与された権限は、自動的にすべてのユーザーに適用されます。DBMS_EXPORT_EXTENSIONにより、SQLインジェクションが許可されます。このため、悪質なユーザーが利用できるようになります。

3.3.34 %_CATALOG_%ロールへのアクセス

説明: %_CATALOG_%の付与が制限されていることを確認します。

重大度: クリティカル

理由: %_CATALOG_%ロールには、データベース・オブジェクトに対するクリティカル・アクセスが可能です。このため、データベース・システム内の重要情報が公開される可能性があります。

3.3.35 パスワード再使用期間

説明: すべてのプロファイルでPASSWORD_REUSE_TIMEが適切な日数に設定されていることを確認します。

重大度: クリティカル

理由: PASSWORD_REUSE_TIMEパラメータの値が低いと、ユーザーが旧パスワードを何度も使用できるため、データベースのセキュリティ上の重大な問題が発生する可能性があります。

3.3.36 PRIVATE SGA

説明: ユーザーのPRIVATE_SGAプロファイルの設定が、特定のデータベースおよびアプリケーションに対して適切な値に設定されていることを確認します。

重大度: クリティカル

理由: 単一のアプリケーションまたはユーザーに過剰なシステム・グローバル領域の消費を許すと、Oracleデータベースに対するサービス拒否が生じることになります。

3.3.37 GRANT ANY OBJECT権限の監査

説明: すべてのユーザーに対するアクセスによりSELECT ANY DICTIONARY権限が監査されていることを確認します。

重大度: クリティカル

理由: SELECT ANY DICTIONARYの監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

3.3.38 AUD$権限の監査

説明: すべてのユーザーに対するアクセスによりAUD$が監査されていることを確認します。

重大度: クリティカル

理由: AUD$の監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

3.3.39 CREATE USER権限の監査

説明: すべてのユーザーに対するアクセスによりCREATE USER権限が監査されていることを確認します。

重大度: クリティカル

理由: CREATE USERの監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

3.3.40 DROP ANY TABLE権限の監査

説明: すべてのユーザーに対するアクセスによりDROP ANY TABLE権限が監査されていることを確認します。

重大度: クリティカル

理由: DROP ANY TABLEの監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

3.3.41 インストール済Oracleホームのドライブ権限

説明: Windowsで、インストール済Oracleホームのドライブが、Everyoneグループにアクセスできないことを確認します。

重大度: 警告

理由: Oracleがインストールされているドライブの権限をEveryoneに付与すると、重大なセキュリティ上の問題が発生する可能性があります。

3.3.42 Windowsツールの権限

説明: OracleサービスにWindowsツールの権限がないことを確認します。

重大度: 警告

理由: OracleサービスにWindowsツールの権限を付与すると、重大なセキュリティ上の問題が発生する可能性があります。

3.3.43 Oracle AgentのSNMP読取り-書込み構成ファイルの所有者

説明: Oracle AgentのSNMP読取り-書込み構成ファイル(snmp_rw.ora)がOracleソフトウェアの所有者に所有されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り-書込み構成ファイル(snmp_ro.ora)には、認識しているエージェントのリスニング・アドレス、SQL*Netリスナーの名前およびOracleデータベース・サービスと、トレース・パラメータが含まれています。SNMP読取り-書込み構成ファイルがパブリックからアクセス可能な場合、トレース・ディレクトリの場所やdbsnmpアドレスなどの機密データを取得するために使用される可能性があります。

3.3.44 自動ログ・アーカイブ機能の使用

説明: REDOログのアーカイブが自動的に行われ、REDOログが一杯になった場合にインスタンス操作を一時停止しないことを確認します。データベースがARCHIVELOGモードの場合にのみ適用されます。

重大度: クリティカル

理由: LOG_ARCHIVE_START初期化パラメータをTRUEに設定すると、REDOログのアーカイブが自動的に行われ、REDOログが一杯になってもインスタンス操作が一時停止しません。この機能は、データベースがARCHIVELOGモードの場合にのみ適用されます。

3.3.45 Webcache初期化ファイルの権限(Windows)

説明: Webcache初期化ファイル(webcache.xml)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Webcache初期化ファイル(webcache.xml)には機密情報が格納されます。Webcache初期化ファイルがパブリックからアクセス可能な場合、管理者パスワードのハッシュなどの機密データを取得するために使用される可能性があります。

3.3.46 Oracle HTTP Serverのmod_plsql構成ファイルの権限(Windows)

説明: Oracle HTTP Serverのmod_plsql構成ファイル(wdbsvr.app)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle HTTP Serverのmod_plsql構成ファイル(wdbsvr.app)には、認証に使用するデータベース・アクセス記述子が含まれています。mod_plsql構成ファイルがパブリックからアクセス可能な場合、悪質なユーザーがそれを利用し、データベース・アクセス記述子の設定を変更してPL/SQLアプリケーションにアクセスしたり、DoS攻撃を実行したりする可能性があります。

3.3.47 SELECT ANY TABLE権限の付与

説明: SELECT ANY PRIVILEGEがどのユーザーまたはロールにも付与されていないことを確認します。

重大度: 警告

理由: SELECT ANY TABLE権限は、ユーザーまたはロール自身が所有していない表のデータを表示できるようにするために使用できます。この権限を持つユーザー・アカウントへのアクセス権を持つ悪質なユーザーは、これを利用して機密データにアクセスできます。

3.3.48 PUBLICへのシステム権限

説明: PUBLICにSYSTEM権限が付与されていないことを確認します。

重大度: クリティカル

理由: PUBLICロールに付与された権限は、自動的にすべてのユーザーに適用されます。すべてのユーザーにSYSTEM権限が付与されることになるため、セキュリティ上のリスクがあります。

3.3.49 V$シノニム・ロールへのアクセス

説明: SELECT権限がV$シノニムに付与されていないことを確認します。

重大度: クリティカル

理由: V$表にはOracleデータベースに関する機密情報が含まれており、システム管理者しかアクセスできないようにする必要があります。アクセス権を持つユーザーがいないか確認し、可能であれば取り消します。

3.3.50 CREATE ANY LIBRARY権限の監査

説明: すべてのユーザーに対するアクセスによりCREATE ANY LIBRARY権限が監査されていることを確認します。

重大度: クリティカル

理由: CREATE ANY LIBRARYの監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

3.3.51 ドメイン・コントローラへのインストール

説明: Oracleがドメイン・コントローラにインストールされていないことを確認します。

重大度: 警告

理由: Oracleをドメイン・コントローラにインストールすると、重大なセキュリティ上の問題が発生する可能性があります。

3.3.52 無制限の表領域割当て

説明: データベース・ユーザーに対する表領域の割当てが制限されていることを確認します。

重大度: 警告

理由: 表領域を無制限に割り当てると、割当て済ディスク領域がすべて使用される可能性があります。また、これによってデータベースが応答しなくなる可能性があります。

3.3.53 SQL*Plus実行可能ファイルの権限

説明: SQL*Plus実行可能ファイルの権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: ユーザーがSQL*Plusを使用すると、データベース上ですべてのSQLを実行できます。SQL*PlusにPUBLIC EXECUTE権限があると、悪質なユーザーに機密データが漏れてセキュリティ上の問題が発生する可能性があります。

3.3.54 Webcache初期化ファイルの所有者

説明: Webcache初期化ファイル(webcache.xml)がOracleソフトウェアの所有者によって所有されていることを確認します。

重大度: 警告

理由: Webcache初期化ファイル(webcache.xml)には機密情報が格納されます。Webcache初期化ファイルがパブリックからアクセス可能な場合、管理者パスワードのハッシュなどの機密データを取得するために使用される可能性があります。

3.3.55 Oracle AgentのSNMP読取り専用構成ファイルの権限

説明: Oracle AgentのSNMP読取り専用構成ファイル(snmp_ro.ora)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り専用構成ファイル(snmp_ro.ora)には、エージェントのリスニング・アドレス、認識しているSQL*NetリスナーとOracleデータベース・サービスの名前、およびトレース・パラメータが含まれています。SNMP読取り専用構成ファイルがパブリックからアクセス可能な場合、トレース・ディレクトリの場所やdbsnmpアドレスなどの機密データを取得するために使用される可能性があります。

3.3.56 ログ・アーカイブ二重保存先の権限

説明: サーバーのアーカイブ・ログにパブリックからアクセスできないことを確認します。

重大度: クリティカル

理由: LOG_ARCHIVE_DUPLEX_DESTパラメータ(init.oraファイル内)で指定されたディレクトリがOracleソフトウェア・インストールの所有者に所有されていないか、このディレクトリに対する権限が他のユーザーに付与されている場合、LogMinerを使用するとデータベース情報をアーカイブ・ログから取得できます。

3.3.57 $ORACLE_HOME/network/adminファイル権限(Windows)

説明: $ORACLE_HOME/network/admin内のファイルの所有権がOracleソフトウェア・セットに制限され、グループがDBAグループに制限され、パブリックが書込み権限を持っていないことを確認します。

重大度: 警告

理由: network/adminの所有権をOracleソフトウェア・セットおよびDBAグループに制限しないと、悪質なユーザーにネット構成データが漏れてセキュリティ上の問題が発生する可能性があります。

3.3.58 X_$ビューへのアクセス

説明: X$ビューに対するアクセスが制限されます。

重大度: クリティカル

理由: これにより、データベース内部の構造情報が漏えいする可能性があります。

3.3.59 ROLE_ROLE_PRIVSビューへのアクセス

説明: ROLE_ROLE_PRIVSビューへのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: 他のロールに付与されたロールがリストされています。データベースのロールの構造に関する情報は、悪質なユーザーによって利用される可能性があります。

3.3.60 USER_ROLE_PRIVSビューへのアクセス

説明: USER_ROLE_PRIVSビューへのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: 現在のユーザーに付与されたロールがリストされています。データベースのロールの構造に関する情報は、悪質なユーザーによって利用される可能性があります。

3.3.61 SYS.DBMS_RANDOM PUBLICに対する実行権限

説明: PUBLICがSYS.DBMS_RANDOMパッケージに対する実行権限を持たないことを確認します。

重大度: クリティカル

理由: PUBLICロールに付与された権限は、自動的にすべてのユーザーに適用されます。DBMS_RANDOMにより、SQLインジェクションが許可されます。このため、悪質なユーザーが利用できるようになります。

3.3.62 CREATE ROLE権限の監査

説明: すべてのユーザーに対するアクセスによりCREATE ROLE権限が監査されていることを確認します。

重大度: クリティカル

理由: ロールの作成の監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

3.3.63 CREATE LIBRARY権限の監査

説明: すべてのユーザーに対するアクセスによりCREATE LIBRARY権限が監査されていることを確認します。

重大度: クリティカル

理由: CREATE LIBRARYの監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

3.3.64 プロキシ・アカウント

説明: プロキシ・アカウントの権限が制限されていることを確認します。

重大度: 警告

理由: プロキシ・ユーザーが必要なのはデータベースへの接続だけです。接続した後は、代理で接続している元のユーザーの権限を使用します。CREATE SESSION権限以外の権限をプロキシ・ユーザーに付与することは、不要であり誤用を招くおそれがあります。

3.3.65 Oracle9iリリース1以上でのユーティリティ・ファイル・ディレクトリ初期化パラメータの設定

説明: UTL_FILE_DIR初期化パラメータがOracle9iリリース1以上で使用されていないことを確認します。

重大度: クリティカル

理由: UTL_FILEパッケージがアクセス可能なディレクトリを指定します。パラメータをアスタリスク(*)、ピリオド(.)または機密情報ディレクトリに設定すると、UTL_FILEパッケージに対する実行権限のあるすべてのユーザーに機密情報が公開される可能性があります。

3.3.66 IFILE参照先ファイルの権限(Windows)

説明: IFILEパラメータによって参照されるファイルへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: IFILE初期化パラメータを使用すると、他の初期化パラメータ・ファイルの内容を現在の初期化パラメータ・ファイルに埋め込むことができます。初期化パラメータ・ファイルがパブリックからアクセス可能な場合、機密情報に関する初期化パラメータがスキャンされ、データベースのセキュリティ・ポリシーが公開される可能性があります。初期化パラメータ・ファイルを検索してOracleデータベース構成の設定の脆弱性を見つけることもできます。

3.3.67 SQL*Plus実行可能ファイルの権限(Windows)

説明: SQL*Plus実行可能ファイルの権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: ユーザーがSQL*Plusを使用すると、データベース上ですべてのSQLを実行できます。SQL*PlusにPUBLIC EXECUTE権限があると、悪質なユーザーに機密データが漏れてセキュリティ上の問題が発生する可能性があります。

3.3.68 Oracle XSQL構成ファイルの権限(Windows)

説明: Oracle XSQL構成ファイル(XSQLConfig.xml)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle XSQL構成ファイル(XSQLConfig.xml)には、データベース接続の機密情報が含まれています。XSQL構成ファイルがパブリックからアクセス可能な場合、機密データへのアクセスまたはさらなる攻撃に利用可能なデータベース・ユーザー名およびパスワードが漏れる可能性があります。

3.3.69 OSロール

説明: ロールがDBMSの外部ファイル以外のデータベースに保存され、管理および保護されます。

重大度: 警告

理由: ロールがOSによって管理されている場合、セキュリティ上の重大な問題が発生する可能性があります。

3.3.70 tkprof実行可能ファイルの権限(Windows)

説明: tkprof実行可能ファイルの権限がグループに対する読取りおよび実行権限に制限されていることと、パブリックにはアクセスできないことを確認します。

重大度: 警告

理由: TKPROFの権限が大きすぎると、内部の情報が保護されなくなります。

3.3.71 SYS.LINK$表へのアクセス

説明: SYS.LINK$表へのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: 知識のある悪質なユーザーが、SYS.LINK$表からユーザー・パスワードにアクセスできる可能性があります。

3.3.72 ALL_SOURCEビューへのアクセス

説明: ALL_SOURCEビューへのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: ALL_SOURCEビューにはデータベースにあるすべてのストアド・パッケージのソースが含まれています。

3.3.73 パスワード再使用最大回数

説明: すべてのプロファイルでPASSWORD_REUSE_MAXが適切な回数に設定されていることを確認します。

重大度: 警告

理由: 現在のパスワードを推測する場合、旧パスワードが通常最も多く使用されます。PASSWORD_REUSE_MAXパラメータの値が低いと、ユーザーが旧パスワードを何度も使用できるため、データベースのセキュリティ上の重大な問題が発生する可能性があります。

3.3.74 ALTER USER権限の監査

説明: すべてのユーザーに対するアクセスによりALTER USER権限が監査されていることを確認します。

重大度: クリティカル

理由: ALTER USERの監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

3.3.75 GRANT ANY PRIVILEGE権限の監査

説明: すべてのユーザーに対するアクセスによりGRANT ANY PRIVILEGE権限が監査されていることを確認します。

重大度: クリティカル

理由: GRANT ANY PRIVILEGEの監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

3.3.76 $ORACLE_HOME/network/adminファイル権限

説明: $ORACLE_HOME/network/admin内のファイルの所有権がOracleソフトウェア・セットに制限され、グループがDBAグループに制限され、パブリックが書込み権限を持っていないことを確認します。

重大度: 警告

理由: network/adminの所有権をOracleソフトウェア・セットおよびDBAグループに制限しないと、悪質なユーザーにネット構成データが漏れてセキュリティ上の問題が発生する可能性があります。

3.3.77 Oracle HTTP Serverのmod_plsql構成ファイルの権限

説明: Oracle HTTP Serverのmod_plsql構成ファイル(wdbsvr.app)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り/書込み構成ファイル(snmp_rw.ora)には、認識しているエージェントのリスニング・アドレス、SQL*Netリスナーの名前およびOracleデータベース・サービスと、トレース・パラメータが含まれています。SNMP読取り-書込み構成ファイルがパブリックからアクセス可能な場合、トレース・ディレクトリの場所やdbsnmpアドレスなどの機密データを取得するために使用される可能性があります。

3.3.78 Oracle AgentのSNMP読取り-書込み構成ファイルの権限(Windows)

説明: Oracle AgentのSNMP読取り-書込み構成ファイル(snmp_rw.ora)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り-書込み構成ファイル(snmp_ro.ora)には、認識しているエージェントのリスニング・アドレス、SQL*Netリスナーの名前およびOracleデータベース・サービスと、トレース・パラメータが含まれています。SNMP読取り専用構成ファイルがパブリックからアクセス可能な場合、トレース・ディレクトリの場所やdbsnmpアドレスなどの機密データを取得するために使用される可能性があります。

3.3.79 CASE SENSITIVE LOGON

説明: sec_case_sensitive_logonパラメータがTRUEに設定されていることを確認します。

重大度: クリティカル

理由: これでパスワードがより複雑になり、総当りのパスワード攻撃に対する防衛に役立ちます。

3.3.80 OTRACEデータファイル

説明: OTRACEで収集されたデータによって引き起こされる、データベース・パフォーマンスとディスク領域使用量への悪影響を回避します。

重大度: 警告

理由: データ収集によるパフォーマンスとリソースの使用は、データベース・パフォーマンスとディスク領域使用量に悪影響を与える可能性があります。

3.3.81 DBA_*ビューへのアクセス

説明: SELECT権限がどのDBA_ビューにも付与されていないことを確認します。

重大度: 警告

理由: DBA_*ビューを使用すると、データベースの権限およびポリシーの設定にアクセスできます。DBA_*ビューの一部では、セキュリティ・ポリシーを理解するために使用できる重要なPL/SQLコードを表示することもできます。

3.3.82 USER_TAB_PRIVSビューへのアクセス

説明: USER_TAB_PRIVSビューへのアクセスが制限されていることを確認します。

重大度: マイナー警告

理由: ユーザーが所有者、権限付与者または権限受領者のオブジェクトに対する権限がリストされています。データベース内の権限に関する情報は、悪質なユーザーに利用される可能性があります。

3.3.83 LOGICAL READS PER SESSION

説明: ユーザー・プロファイル設定LOGICAL_READS_ PER_SESSIONが、特定のデータベースおよびアプリケーションに対して適切な値に設定されていることを確認します。

重大度: クリティカル

理由: 単一のアプリケーションまたはユーザーにディスクに対する過剰な読取りの実行を許すと、Oracleデータベースに対するサービス拒否が生じることになります。

3.3.84 ALTER ANY TABLE権限の監査

説明: すべてのユーザーに対するアクセスによりALTER ANY TABLE権限が監査されていることを確認します。

重大度: クリティカル

理由: ALTER ANY TABLEの監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

3.3.85 CREATE SESSION権限の監査

説明: すべてのユーザーに対するアクセスによりCREATE SESSION権限が監査されていることを確認します。

重大度: クリティカル

理由: CREATE SESSIONの監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

3.3.86 OS認証の制限

説明: データベース・アカウントはOS認証に依存しないことを確認します。

重大度: クリティカル

理由: ホスト・オペレーティング・システムのデータベース・アカウントに、パスワードがEXTERNALに設定されている必須ユーザーIDが存在する場合、資格証明の確認はこれ以上実行されません。ホストが認証を行っていることを前提としているため、ユーザーの確認を行わずデータベースへのアクセスを許可します。

3.3.87 バックグラウンド・ダンプ保存先

説明: トレース・ファイル・ディレクトリへのアクセスがOracleソフトウェア・セットの所有者とDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: ログ・ライター・プロセスやデータベース・ライター・プロセスなどのバックグラウンド・プロセスは、データベース操作の状態変化および例外やエラーの記録にトレース・ファイルを使用します。トレース・ファイルは、BACKGROUND_DUMP_DEST初期化パラメータで指定されたディレクトリに保存されます。このディレクトリに対するパブリック読取り権限を付与すると、データベースおよびアプリケーションに関する内部の重要な機密情報の詳細が公開される可能性があります。

3.3.88 SQL*Plus実行可能ファイルの所有者

説明: SQL*Plus所有権がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: ユーザーがSQL*Plusを使用すると、データベース上ですべてのSQLを実行できます。SQL*Plusの所有権をOracleソフトウェア・セットおよびDBAグループに制限しないと、悪質なユーザーに機密データが漏れてセキュリティ上の問題が発生する可能性があります。

3.3.89 Oracle HTTP Server分散構成ファイルの権限

説明: Oracle HTTP Server分散構成ファイルの権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle HTTP Server分散構成ファイル(通常は.htaccess)は、Webフォルダのアクセス制御および認証に使用されます。このファイルを変更して、機密情報を含むページへのアクセス権を取得することができます。

3.3.90 Oracleホーム実行可能ファイルの権限(Windows)

説明: ORACLE_HOME/binフォルダ内のすべてのファイルに対するパブリックからの書込み権限がないことを確認します。

重大度: 警告

理由: ファイル・アクセス権が適切でないOracleファイルがある場合、セキュリティ上の重要な問題が発生する可能性があります。

3.3.91 データベース・リンクのネーミング

説明: データベース・リンクの名前が、リモート・データベース名と同じであることを確認します。

重大度: 警告

理由: データベース・リンク名が接続するデータベースのグローバル名と一致しない場合、テスト・サーバーまたは開発サーバーから本番サーバーへのアクセスを管理者が誤って許可してしまう可能性があります。この情報は、悪質なユーザーがターゲット・データベースにアクセスする際に使用されます。

3.3.92 セキュアなOS監査レベル

説明: UNIXシステムでOSレベルの監査が有効な場合、AUDIT_SYSLOG_LEVELがデフォルト以外の値に設定されていることを確認します。

重大度: 警告

理由: AUDIT_SYSLOG_LEVEL初期化パラメータをデフォルト値(NONE)に設定すると、DBAがOS監査レコードにアクセスできるようになります。

3.3.93 CONNECT TIME

説明: ユーザー・プロファイル設定CONNECT_TIMEが、特定のデータベースおよびアプリケーションに対して適切な値に設定されていることを確認します。

重大度: クリティカル

理由: 複数のセッションがオープンのままになっている期間が長すぎると、システム・リソースが消費され、Oracleデータベースの他のユーザーに対するサービス拒否が生じる可能性があります。CONNECT_TIMEパラメータでは、セッションをオープン状態にしておける期間の上限を制限します。このパラメータは、分単位で指定します。接続時間を超過したセッションは中断され、ロールバックされます。

3.3.94 監査の挿入失敗

説明: 重要なデータ・オブジェクトについて挿入の失敗が監査されていることを確認します。

重大度: 警告

理由: 重要なデータ・オブジェクトについて挿入の失敗を監査しないと、悪質なユーザーがシステムのセキュリティに侵入する可能性があります。

3.3.95 DROP ANY PROCEDURE権限の監査

説明: すべてのユーザーに対するアクセスによりDROP ANY PROCEDURE権限が監査されていることを確認します。

重大度: クリティカル

理由: DROP ANY PROCEDUREの監査により、アカウント管理権限が適切に使用されていることを確認するレコードが提供されます。この情報は、特定のセキュリティ・イベントの調査の際にも役立ちます。

3.4 Real Application Clusterデータベースのパッチ適用可能な構成

Oracleデータベース標準のパッチ適用可能な構成のコンプライアンス・ルールは、次のとおりです。

3.4.1 パッチ適用可能性

説明: Real Application Clusterデータベース・ターゲットがパッチ適用可能な構成であることを確認します。

重大度: 警告

理由: 提供されているEnterprise Managerのパッチ適用機能を使用して、パッチ適用できないReal Application Clusterデータベース・ターゲットにパッチを適用できません。

3.5 Oracle Real Applicationデータベースの記憶域のベスト・プラクティス

Oracle Real Applicationデータベース・コンプライアンス標準の記憶域のベスト・プラクティスのコンプライアンス・ルールは、次のとおりです。

3.5.1 永続表領域を一時表領域として使用しているユーザー

説明: 永続表領域を一時表領域として使用しているユーザーをチェックします。

重大度: マイナー警告

理由: これらのユーザーは、永続表領域を一時表領域として使用しています。一時表領域を使用すれば、ソート操作の領域管理をさらに効率的にできます。ソート操作に永続表領域を使用した場合、特にReal Application Clustersではパフォーマンス低下の原因になることがあります。さらに他のセキュリティ上の問題があります。ユーザーがシステム表領域内のすべての使用可能な領域を使用できるため、データベースが停止する可能性があります。

3.5.2 表領域の不均一なデフォルト・エクステント・サイズ

説明: デフォルト・エクステント・サイズが不均一なディクショナリ管理表領域または移行されたローカル管理表領域がないかどうかをチェックします。

重大度: マイナー警告

理由: 均一でないデフォルト・エクステント・サイズを使用しているディクショナリ管理表領域または移行されたローカル管理表領域が見つかりました。1つの表領域内に様々なサイズのエクステントが存在すると、フラグメンテーションが発生し、領域が適切に使用されず、パフォーマンスの低下を招きます。

3.5.3 SYSTEM表領域のデータベース・ロールバック・セグメント

説明: SYSTEM表領域にロールバック・セグメントがないかどうかをチェックします。

重大度: マイナー警告

理由: SYSTEM表領域は、Oracleデータ・ディクショナリとその関連オブジェクト専用に確保しておく必要があります。ユーザー表、ユーザー索引、ユーザー・ビュー、ロールバック・セグメント、UNDOセグメント、一時セグメントなど他のタイプのオブジェクトの格納には使用しないでください。

3.5.4 SYSTEM表領域のSYSTEM以外のデータ・セグメント

説明: 表領域SYSTEMおよびSYSAUX内にあって、システム以外のユーザーが所有しているデータ・セグメントをチェックします。

重大度: マイナー警告

理由: システム・ユーザー以外に属するこれらのセグメントは、システム表領域(SYSTEMまたはSYSAUX)に格納されています。この違反状態では、これらのデータ・セグメントの管理がより困難になり、システム表領域のパフォーマンス低下の原因となる場合があります。これはセキュリティ上の問題でもあります。システム以外のユーザーがシステム表領域にデータを格納している場合、システム表領域内のすべての使用可能な領域が消費されるため、データベースが停止する可能性があります。

3.5.5 REDOログ数の不足

説明: 使用しているREDOログが2つ以下でないかをチェックします。

重大度: 警告

理由: オンラインREDOログ・ファイルは、データベースにおける変更を記録するために使用されます。アーカイブが有効な場合、オンラインREDOログを再利用する前にアーカイブする必要があります。各データベースでは、最低でも2つのオンラインREDOログ・グループが実行中である必要があります。オンラインREDOログのサイズと数が不足すると、LGWRはログを上書きする前に、ARCHがアーカイブ済ログ保存先への書込みを完了するのを待ちます。このような動作は、アクティビティがピークに達する期間には著しくパフォーマンスを低下させる原因となります。

3.5.6 REDOログ・サイズの不足

説明: REDOログ・ファイルが1MB未満でないかをチェックします。

重大度: クリティカル

理由: REDOログのサイズが小さいと、システム・チェックポイントでバッファ・キャッシュとI/Oシステムに継続的に高負荷がかかります。

3.5.7 ロールバックおよびデータ・セグメントを含む表領域

説明: ロールバック・セグメントとデータ・セグメントの両方を含む表領域がないかどうかをチェックします。

重大度: マイナー警告

理由: これらの表領域には、ロールバック・セグメントとデータ・セグメントの両方が含まれています。このようにタイプの異なるセグメントを混在させると、領域管理がより困難になり、表領域のパフォーマンスが低下することもあります。ロールバック・セグメント専用の表領域を使用すれば、可用性とパフォーマンスが向上します。

3.5.8 エクステント増加ポリシーに違反するセグメント

説明: エクステント・サイズが不適切であるか、または増加率が0以外に設定されている(あるいはその両方の)ディクショナリ管理表領域または移行されたローカル管理表領域のセグメントをチェックします。

重大度: マイナー警告

理由: これらのセグメントには、サイズが初期エクステントの倍数ではない、または増加率がゼロ以外に設定されているエクステントが含まれています。この状態では領域が適切に再利用されず、フラグメンテーションの問題が発生することがあります。

3.5.9 システム表領域をデフォルト表領域として使用しているシステム以外のユーザー

説明: SYSTEMまたはSYSAUXをデフォルト表領域として使用しているシステム以外のユーザーをチェックします。

重大度: マイナー警告

理由: これらのシステム以外のユーザーが、システム表領域をデフォルト表領域として使用しています。この違反状態では、システム以外のデータ・セグメントがシステム表領域に追加されるため、これらのデータ・セグメントの管理がより困難になり、システム表領域のパフォーマンス低下の原因となります。これはセキュリティ上の問題でもあります。システム表領域内のすべての使用可能な領域が消費されるため、データベースが停止する可能性があります。

3.5.10 自動セグメント領域管理が使用されていない表領域

説明: 手動セグメント領域管理を使用しているローカル管理表領域をチェックします。

重大度: マイナー警告

理由: 自動セグメント領域管理は、セグメント内の領域を管理する、より簡単で効率的な方法です。表領域に作成されるスキーマ・オブジェクトの記憶域パラメータPCTUSED、FREELISTSおよびFREELIST GROUPSの指定やチューニングを行う必要はまったくありません。Real Application Cluster環境では、空きリスト・グループを使用する場合の領域の難しいパーティション化を回避できるという利点もあります。

3.5.11 デフォルトの一時表領域がシステム表領域に設定されている

説明: DEFAULT_TEMP_TABLESPACEデータベース・プロパティがシステム表領域に設定されているかどうかをチェックします。

重大度: 警告

理由: 明示的に指定されていない場合、DEFAULT_TEMP_TABLESPACEはデフォルトでシステム表領域になります。この設定は、お薦めしません。この設定の場合、一時表領域が明示的に割り当てられていないすべてのユーザーは、システム表領域を一時表領域として使用します。一時データの格納にシステム表領域を使用することはお薦めしません。これはセキュリティ上の問題でもあります。システム以外のユーザーがシステム表領域にデータを格納して、システム表領域の使用可能なすべての領域を消費するため、データベースが停止する可能性があります。

3.5.12 デフォルトの永続表領域がシステム表領域に設定されている

説明: DEFAULT_PERMANENT_TABLESPACEデータベース・プロパティがシステム表領域に設定されているかどうかをチェックします。

重大度: 警告

理由: 明示的に指定されていない場合、DEFAULT_PERMANENT_TABLESPACEはデフォルトでシステム表領域になります。これは推奨の設定ではありません。この設定の場合、永続表領域が明示的に割り当てられていないすべてのユーザーは、システム表領域を使用します。このように使用すると、データベースのパフォーマンスが低下する可能性があります。これはセキュリティ上の問題でもあります。システム以外のユーザーがシステム表領域にデータを格納して、システム表領域の使用可能なすべての領域を消費するため、データベースが停止する可能性があります。

3.5.13 ディクショナリ管理表領域

説明: ディクショナリ管理表領域をチェックします。

重大度: マイナー警告

理由: これらの表領域はディクショナリ管理されています。パフォーマンスの向上および領域管理の簡略化のために、自動セグメント領域管理を使用して、ローカル管理表領域を使用することをお薦めします。

3.6 Oracleクラスタ・データベース・インスタンスの基本的なセキュリティ構成

Oracleクラスタ・データベース・インスタンスのコンプライアンス標準の基本的なセキュリティ構成のコンプライアンス・ルールは、次のとおりです。

3.6.1 Oracle Netクライアント・ログ・ディレクトリの権限

説明: クライアント・ログ・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: ログ・ファイルでは、エラー・スタックに含まれる情報が提供されます。エラー・スタックとは、ネットワーク・エラーの結果としてOracle通信スタック内に各レイヤーごとに作成される情報です。ログ・ファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

3.6.2 Oracle Netクライアント・トレース・ディレクトリの権限

説明: クライアントのトレース・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: トレースにより、ネットワーク・イベントを実行時に記述する一連の詳細な文が作成されます。操作をトレースすると、Oracle Net Servicesのコンポーネントの内部操作に関して、ログ・ファイルよりも詳しい情報を取得できます。このファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

3.6.3 Oracleホーム・ファイルの権限

説明: ORACLE_HOMEディレクトリ(ORACLE_HOME/bin以外)のすべてのファイルに対するパブリックからの読取り、書込みまたは実行の権限がないことを確認します。

重大度: 警告

理由: ファイル・アクセス権が適切でないOracleファイルがある場合、セキュリティ上の重要な問題が発生する可能性があります。

3.6.4 監査ファイル保存先(Windows)

説明: 監査ファイル・ディレクトリへのアクセスがOracleソフトウェア・セットの所有者とDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: AUDIT_FILE_DEST初期化パラメータは、Oracleの監査機能により作成される監査ファイルのディレクトリを指定します。このディレクトリに対するパブリック読取り権限を付与すると、起動、停止および優先接続のログ情報などの重要な情報が公開される可能性があります。

3.6.5 Oracle Netクライアント・トレース・ディレクトリの権限(Windows)

説明: クライアントのトレース・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: トレースにより、ネットワーク・イベントを実行時に記述する一連の詳細な文が作成されます。操作をトレースすると、Oracle Net Servicesのコンポーネントの内部操作に関して、ログ・ファイルよりも詳しい情報を取得できます。このファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

3.6.6 リモートOS認証

説明: REMOTE_OS_AUTHENT初期化パラメータがFALSEに設定されていることを確認します。

重大度: クリティカル

理由: リモートOS認証が許可されている場合、悪質なユーザーがデータベースにアクセスする可能性があります。

3.6.7 PROTOCOL ERROR TRACE ACTION

説明: sec_protocol_error_trace_actionパラメータがLOGまたはALERTに設定されていることを確認します。

重大度: クリティカル

理由: SEC_PROTOCOL_ERROR_TRACE_ACTIONには、悪意を持つ可能性があるクライアントから不正なパケットを受信したときに、データベースが行うアクションを指定します。データベース・サーバーでは不正なパケットが無視され、トレース・ファイルやログ・メッセージが生成されないため、NONEを指定しないでください。デフォルト値TRACEを指定すると、データベース・サーバーでは詳細なトレース・ファイルが生成されるため、デバッグのときのみ指定します。

3.6.8 Oracleホーム実行可能ファイルの所有者

説明: ORACLE_HOME/binフォルダ内のすべてのファイルおよびディレクトリの所有者がOracleソフトウェア・インストールの所有者と同じであることを確認します。

重大度: クリティカル

理由: ファイル・アクセス権が適切でないOracleファイルがある場合、セキュリティ上の重要な問題が発生する可能性があります。

3.6.9 Oracleホーム・ファイルの権限

説明: ORACLE_HOMEディレクトリ(ORACLE_HOME/bin以外)のすべてのファイルに対するパブリックからの読取り、書込みまたは実行の権限がないことを確認します。

重大度: 警告

理由: ファイル・アクセス権が適切でないOracleファイルがある場合、セキュリティ上の重要な問題が発生する可能性があります。

3.6.10 Oracle Netサーバー・トレース・ディレクトリの権限

説明: サーバーのトレース・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: トレースにより、ネットワーク・イベントを実行時に記述する一連の詳細な文が作成されます。操作をトレースすると、Oracle Net Servicesのコンポーネントの内部操作に関して、ログ・ファイルよりも詳しい情報を取得できます。このファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

3.6.11 データベース監査の有効化

説明: データベース監査が有効であることを確認します。

重大度: マイナー警告

理由: AUDIT_TRAILパラメータは、データベース監査を有効または無効にします。監査により、責務が強制され、誤使用の証拠が提供され、規制へのコンプライアンスが頻繁に要求されるため、セキュリティが向上します。また、監査により、システム管理者は保護の強化、不審なアクティビティの早期検出およびセキュリティ・レスポンスの微調整を行うことができます。

3.6.12 サーバー・パラメータ・ファイルの権限

説明: サーバー・パラメータ・ファイルへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: サーバー・パラメータ・ファイル(SPFILE)を使用すると、初期化パラメータをサーバー側ディスク・ファイルで永続的に保存および管理できます。SPFILEがパブリックからアクセス可能な場合、機密情報に関する初期化パラメータがスキャンされ、データベースのセキュリティ・ポリシーが公開される可能性があります。SPFILEを検索してOracleデータベース構成の設定の脆弱性を見つけることもできます。

3.6.13 コア・ダンプ保存先

説明: コア・ダンプ・ファイル・ディレクトリへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: コア・ダンプ・ファイルは、CORE_DUMP_DEST初期化パラメータで指定されたディレクトリに保存されます。このディレクトリに対するパブリック読取り権限があると、コア・ダンプ・ファイルから機密情報が公開される可能性があります。

3.6.14 初期化パラメータ・ファイルの権限(Windows)

説明: 初期化パラメータ・ファイルへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: 警告

理由: 従来、Oracleではテキストの初期化パラメータ・ファイルに初期化パラメータが格納されます。初期化パラメータ・ファイルがパブリックからアクセス可能な場合、機密情報に関する初期化パラメータがスキャンされ、データベースのセキュリティ・ポリシーが公開される可能性があります。IFILEを検索してOracleデータベース構成の設定の脆弱性を見つけることもできます。

3.6.15 ユーザー・ダンプ保存先(Windows)

説明: トレース・ファイル・ディレクトリへのアクセスがOracleソフトウェア・セットの所有者とDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: サーバー・プロセスのトレース・ファイルは、USER_DUMP_DEST初期化パラメータで指定されたディレクトリに保存されます。このディレクトリに対するパブリック読取り権限を付与すると、データベースおよびアプリケーションに関する内部の重要な機密情報の詳細が公開される可能性があります。

3.6.16 Oracle Netサーバー・トレース・ディレクトリの権限(Windows)

説明: サーバーのトレース・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: トレースにより、ネットワーク・イベントを実行時に記述する一連の詳細な文が作成されます。操作をトレースすると、Oracle Net Servicesのコンポーネントの内部操作に関して、ログ・ファイルよりも詳しい情報を取得できます。このファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

3.6.17 SYS操作の監査有効

説明: SYSとして接続したユーザーのセッションが完全に監査されていることを確認します。

重大度: 警告

理由: AUDIT_SYS_OPERATIONSパラメータは、SYSユーザーおよびSYSDBAまたはSYSOPER権限で接続しているユーザーが発行した操作の監査を有効または無効にします。

3.6.18 ユーティリティ・ファイル・ディレクトリ初期化パラメータの設定

説明: ユーティリティ・ファイル・ディレクトリ(UTL_FILE_DIR)初期化パラメータが、アスタリスク(*)、ピリオド(.)およびコア・ダンプ・トレース・ファイルの場所のいずれにも設定されていないことを確認します。

重大度: クリティカル

理由: UTL_FILEパッケージがアクセス可能なディレクトリを指定します。パラメータをアスタリスク(*)、ピリオド(.)または機密情報ディレクトリに設定すると、UTL_FILEパッケージに対して実行権限を持つすべてのユーザーに機密情報が公開される可能性があります。

3.6.19 サーバー・パラメータ・ファイルの権限(Windows)

説明: サーバー・パラメータ・ファイルへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: サーバー・パラメータ・ファイル(SPFILE)を使用すると、初期化パラメータをサーバー側ディスク・ファイルで永続的に保存および管理できます。SPFILEがパブリックからアクセス可能な場合、機密情報に関する初期化パラメータがスキャンされ、データベースのセキュリティ・ポリシーが公開される可能性があります。SPFILEを検索してOracleデータベース構成の設定の脆弱性を見つけることもできます。

3.6.20 Oracle Netクライアント・ログ・ディレクトリの権限(Windows)

説明: クライアント・ログ・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: ログ・ファイルでは、エラー・スタックに含まれる情報が提供されます。エラー・スタックとは、ネットワーク・エラーの結果としてOracle通信スタック内に各レイヤーごとに作成される情報です。ログ・ファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

3.6.21 外部で識別されたアカウントの使用

説明: OS認証接頭辞がOPS$以外の値に設定されていることを確認します。

重大度: 警告

理由: OS_AUTHENT_PREFIXパラメータは、サーバーに接続しようとするユーザーの認証に使用される接頭辞を指定します。接続がリクエストされたら、Oracleは接頭辞付きユーザー名とデータベースのユーザー名を比較します。接頭辞(特にOPS$)を使用すると、アカウントをオペレーティング・システム・ユーザーとして、またはIDENTIFIED句で使用されるパスワードを使用して認証できるため、構成が安全でなくなる傾向があります。攻撃者はこれを認識しており、このようなアカウントを攻撃します。

3.6.22 初期化パラメータ・ファイルの権限

説明: 初期化パラメータ・ファイルへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: 警告

理由: 従来、Oracleではテキストの初期化パラメータ・ファイルに初期化パラメータが格納されます。初期化パラメータ・ファイルがパブリックからアクセス可能な場合、機密情報に関する初期化パラメータがスキャンされ、データベースのセキュリティ・ポリシーが公開される可能性があります。IFILEを検索してOracleデータベース構成の設定の脆弱性を見つけることもできます。

3.6.23 監査ファイル保存先

説明: 監査ファイル・ディレクトリへのアクセスがOracleソフトウェア・セットの所有者とDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: AUDIT_FILE_DEST初期化パラメータは、Oracleの監査機能により作成される監査ファイルのディレクトリを指定します。このディレクトリに対するパブリック読取り権限を付与すると、起動、停止および優先接続のログ情報などの重要な情報が公開される可能性があります。

3.6.24 バックグラウンド・ダンプ保存先(Windows)

説明: トレース・ファイル・ディレクトリへのアクセスがOracleソフトウェア・セットの所有者とDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: ログ・ライター・プロセスやデータベース・ライター・プロセスなどのバックグラウンド・プロセスは、データベース操作の状態変化および例外やエラーの記録にトレース・ファイルを使用します。トレース・ファイルは、BACKGROUND_DUMP_DEST初期化パラメータで指定されたディレクトリに保存されます。このディレクトリに対するパブリック読取り権限を付与すると、データベースおよびアプリケーションに関する内部の重要な機密情報の詳細が公開される可能性があります。

3.6.25 PROTOCOL ERROR FURTHER ACTION

説明: SEC_PROTOCOL_ERROR_FURTHER_ACTIONパラメータがDROPまたはDELAYに設定されていることを確認します。

重大度: クリティカル

理由: デフォルト値CONTINUEが使用されている場合、不良パケットが受信されても、サーバー・プロセスは継続して実行されます。悪意を持つクライアントが不正なパケットを継続的に送信する場合、データベース・サーバーはサービス妨害(DoS)攻撃を受ける可能性があります。

3.6.26 STATS$SQL_SUMMARY表へのアクセス

説明: トレース・ファイル・ディレクトリへのアクセスがOracleソフトウェア・セットの所有者とDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: サーバー・プロセスのトレース・ファイルは、USER_DUMP_DEST初期化パラメータで指定されたディレクトリに保存されます。このディレクトリに対するパブリック読取り権限を付与すると、データベースおよびアプリケーションに関する内部の重要な機密情報の詳細が公開される可能性があります。

3.6.27 許可されたログオン・バージョン

説明: 一致するバージョン以上のクライアントからのログオンのみを、サーバーが許可することを確認します。

重大度: 警告

理由: sqlnet.oraでSQLNET.ALLOWED_LOGON_VERSIONパラメータをサーバーのバージョンより低く設定すると、比較的セキュアでない認証プロトコルが強制的にサーバーで使用されます。

3.6.28 UNIXシステムにおける適切なumaskの使用

説明: UNIXシステムでOracleソフトウェアの所有者が適切なumask値である022に設定されていることを確認します。

重大度: 警告

理由: umaskが適切な値(022など)に設定されていない場合、ログまたはトレース・ファイルがパブリックからアクセスできるようになり、機密情報が公開される可能性があります。

3.6.29 コア・ダンプ保存先(Windows)

説明: コア・ダンプ・ファイル・ディレクトリへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: コア・ダンプ・ファイルは、CORE_DUMP_DEST初期化パラメータで指定されたディレクトリに保存されます。このディレクトリに対するパブリック読取り権限があると、コア・ダンプ・ファイルから機密情報が公開される可能性があります。

3.6.30 データ・ディクショナリ保護

説明: データ・ディクショナリの保護が有効であることを確認します。

重大度: クリティカル

理由: 07_DICTIONARY_ACCESSIBILITYパラメータにより、データ・ディクショナリへのアクセスが制御されます。07_DICTIONARY_ACCESSIBILITYをTRUEに設定すると、ANYシステム権限を持つユーザーはデータ・ディクショナリにアクセスできます。その結果、これらのユーザーのアカウントが、データへの不正なアクセスの取得に利用されます。

3.6.31 Oracle Netサーバー・ログ・ディレクトリの権限

説明: サーバー・ログ・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: ログ・ファイルでは、エラー・スタックに含まれる情報が提供されます。エラー・スタックとは、ネットワーク・エラーの結果としてOracle通信スタック内に各レイヤーごとに作成される情報です。ログ・ファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

3.6.32 Oracle Netサーバー・ログ・ディレクトリの権限(Windows)

説明: サーバー・ログ・ディレクトリがOracleセットに所有された有効なディレクトリであり、パブリックには権限がないことを確認します。

重大度: クリティカル

理由: ログ・ファイルでは、エラー・スタックに含まれる情報が提供されます。エラー・スタックとは、ネットワーク・エラーの結果としてOracle通信スタック内に各レイヤーごとに作成される情報です。ログ・ファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ディレクトリへのアクセスを許可すると、ログ・ファイルが一般に公開される可能性があります。

3.6.33 リモートOSロール

説明: REMOTE_OS_ROLES初期化パラメータがFALSEに設定されていることを確認します。

重大度: クリティカル

理由: リモート・ユーザーに権限のあるロールを付与できる場合、悪質なユーザーがデータベースにアクセスする可能性があります。

3.6.34 パブリック・トレース・ファイル

説明: データベース・トレース・ファイルがパブリックから読取り不可能であることを確認します。

重大度: クリティカル

理由: トレース・ファイルをPUBLICグループから読取り可能にすると、悪質なユーザーがトレース・ファイルを読取りにいき、機密情報が公開される可能性があります。

3.6.35 リモート・リスナー・インスタンスの使用

説明: データベース・インスタンスとは別のリモート・マシンでリスナー・インスタンスを使用していないことを確認します。

重大度: 警告

理由: REMOTE_LISTENER初期化パラメータを使用すると、リモート・マシン上のリスナーがデータベースにアクセスできます。このパラメータは、マルチ・マスター・レプリケーションまたはReal Application Cluster環境では、設定によってリスナーのロード・バランス・メカニズムが指定されるため、適用できません。

3.7 Oracleクラスタ・データベース・インスタンスの高度なセキュリティ構成

Oracleクラスタ・データベース・インスタンスのコンプライアンス標準の高度なセキュリティ構成のコンプライアンス・ルールは、次のとおりです。

3.7.1 $ORACLE_HOME/network/adminディレクトリ所有者

説明: $ORACLE_HOME/network/admin所有権がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: network/adminの所有権をOracleソフトウェア・セットおよびDBAグループに制限しないと、悪質なユーザーにネット構成データが漏れてセキュリティ上の問題が発生する可能性があります。

3.7.2 Oracleホーム実行可能ファイルの権限

説明: ORACLE_HOME/binフォルダ内のすべてのファイルに対するパブリックからの書込み権限がないことを確認します。

重大度: 警告

理由: ファイル・アクセス権が適切でないOracleファイルがある場合、セキュリティ上の重要な問題が発生する可能性があります。

3.7.3 Oracle XSQL構成ファイルの所有者

説明: Oracle XSQL構成ファイル(XSQLConfig.xml)がOracleソフトウェアの所有者に所有されていることを確認します。

重大度: 警告

理由: Oracle XSQL構成ファイル(XSQLConfig.xml)には、データベース接続の機密情報が含まれています。XSQL構成ファイルがパブリックからアクセス可能な場合、機密データへのアクセスまたはさらなる攻撃に利用可能なデータベース・ユーザー名およびパスワードが漏れる可能性があります。

3.7.4 ログ・アーカイブ二重保存先の所有者

説明: サーバーのアーカイブ・ログ・ディレクトリが、Oracleソフトウェアの所有者に所有されている有効なディレクトリであることを確認します。

重大度: クリティカル

理由: LOG_ARCHIVE_DUPLEX_DESTパラメータ(init.oraファイル内)で指定されたディレクトリがOracleソフトウェア・インストールの所有者に所有されていないか、このディレクトリに対する権限が他のユーザーに付与されている場合、LogMinerを使用するとデータベース情報をアーカイブ・ログから取得できます。

3.7.5 Oracle AgentのSNMP読取り専用構成ファイルの所有者

説明: Oracle AgentのSNMP読取り専用構成ファイル(snmp_ro.ora)がOracleソフトウェアの所有者によって所有されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り専用構成ファイル(snmp_ro.ora)には、エージェントのリスニング・アドレス、認識しているSQL*NetリスナーとOracleデータベース・サービスの名前、およびトレース・パラメータが含まれています。SNMP読取り専用構成ファイルがパブリックからアクセス可能な場合、トレース・ディレクトリの場所やdbsnmpアドレスなどの機密データを取得するために使用される可能性があります。

3.7.6 ログ・アーカイブ保存先の権限(Windows)

説明: サーバーのアーカイブ・ログにパブリックからアクセスできないことを確認します。

重大度: クリティカル

理由: LOG_ARCHIVE_DESTパラメータ(init.oraファイル内)で指定されたディレクトリがOracleソフトウェア・インストールの所有者に所有されていないか、このディレクトリに対する権限が他のユーザーに付与されている場合、LogMinerを使用するとデータベース情報をアーカイブ・ログから取得できます。

3.7.7 ログ・アーカイブ二重保存先の権限(Windows)

説明: サーバーのアーカイブ・ログにパブリックからアクセスできないことを確認します。

重大度: クリティカル

理由: LOG_ARCHIVE_DUPLEX_DESTパラメータ(init.oraファイル内)で指定されたディレクトリがOracleソフトウェア・インストールの所有者に所有されていないか、このディレクトリに対する権限が他のユーザーに付与されている場合、LogMinerを使用するとデータベース情報をアーカイブ・ログから取得できます。

3.7.8 DISPATCHERS

説明: DISPATCHERSパラメータが設定されていることを確認します。

重大度: クリティカル

理由: これによりデフォルトのポートftp: 2100およびhttp: 8080が無効になります。XDBポートを削除することで、Oracleサーバーの攻撃対象領域が縮小されます。本番で使用する必要がない場合、これらのポートは無効にすることをお薦めします。

3.7.9 IFILE参照先ファイルの権限

説明: IFILEパラメータによって参照されるファイルへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: IFILE初期化パラメータを使用すると、他の初期化パラメータ・ファイルの内容を現在の初期化パラメータ・ファイルに埋め込むことができます。初期化パラメータ・ファイルがパブリックからアクセス可能な場合、機密情報に関する初期化パラメータがスキャンされ、データベースのセキュリティ・ポリシーが公開される可能性があります。初期化パラメータ・ファイルを検索してOracleデータベース構成の設定の脆弱性を見つけることもできます。

3.7.10 ログ・アーカイブ保存先の所有者

説明: サーバーのアーカイブ・ログ・ディレクトリが、Oracleソフトウェアの所有者に所有されている有効なディレクトリであることを確認します。

重大度: クリティカル

理由: LOG_ARCHIVE_DESTパラメータ(init.oraファイル内)で指定されたディレクトリがOracleソフトウェア・インストールの所有者に所有されていないか、このディレクトリに対する権限が他のユーザーに付与されている場合、LogMinerを使用するとデータベース情報をアーカイブ・ログから取得できます。

3.7.11 ログ・アーカイブ保存先の権限

説明: サーバーのアーカイブ・ログにパブリックからアクセスできないことを確認します。

重大度: クリティカル

理由: LOG_ARCHIVE_DESTパラメータ(init.oraファイル内)で指定されたディレクトリがOracleソフトウェア・インストールの所有者に所有されていないか、このディレクトリに対する権限が他のユーザーに付与されている場合、LogMinerを使用するとデータベース情報をアーカイブ・ログから取得できます。

3.7.12 Oracle XSQL構成ファイルの権限

説明: Oracle XSQL構成ファイル(XSQLConfig.xml)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle XSQL構成ファイル(XSQLConfig.xml)には、データベース接続の機密情報が含まれています。XSQL構成ファイルがパブリックからアクセス可能な場合、機密データへのアクセスまたはさらなる攻撃に利用可能なデータベース・ユーザー名およびパスワードが漏れる可能性があります。

3.7.13 Webcache初期化ファイルの権限

説明: Webcache初期化ファイル(webcache.xml)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Webcache初期化ファイル(webcache.xml)には機密情報が格納されます。Webcache初期化ファイルがパブリックからアクセス可能な場合、管理者パスワードのハッシュなどの機密データを取得するために使用される可能性があります。

3.7.14 Oracle HTTP Server分散構成ファイルの所有者

説明: Oracle HTTP Server分散構成ファイルの所有権がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle HTTP Server分散構成ファイル(通常は.htaccess)は、Webフォルダのアクセス制御および認証に使用されます。このファイルを変更して、機密情報を含むページへのアクセス権を取得することができます。

3.7.15 Oracle HTTP Serverのmod_plsql構成ファイルの権限

説明: Oracle AgentのSNMP読取り専用構成ファイル(snmp_ro.ora)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り専用構成ファイル(snmp_ro.ora)には、エージェントのリスニング・アドレス、認識しているSQL*NetリスナーとOracleデータベース・サービスの名前、およびトレース・パラメータが含まれています。SNMP読取り専用構成ファイルがパブリックからアクセス可能な場合、トレース・ディレクトリの場所やdbsnmpアドレスなどの機密データを取得するために使用される可能性があります。

3.7.16 RETURN SERVER RELEASE BANNER

説明: パラメータSEC_RETURN_SERVER_RELEASE_BANNERの値がFALSEであることを確認します。

重大度: クリティカル

理由: パラメータSEC_RETURN_SERVER_RELEASE_BANNERがTRUEの場合、Oracleデータベースから完全なデータベース・バージョン情報がクライアントに返されます。正確なパッチ・セットが攻撃側に知られると利用される可能性があります。

3.7.17 tkprof実行可能ファイルの権限をOracleソフトウェア・セットおよびDBAグループに制限

説明: tkprof実行可能ファイルがOracleソフトウェアの所有者によって所有されていることを確認します。

重大度: 警告

理由: TKPROF所有権をOracleソフトウェア・セットおよびDBAグループに制限しないと、情報漏れが発生する可能性があります。

3.7.18 Oracle HTTP Serverのmod_plsql構成ファイルの所有者

説明: Oracle HTTP Serverのmod_plsql構成ファイル(wdbsvr.app)がOracleソフトウェアの所有者に所有されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り/書込み構成ファイル(snmp_rw.ora)には、認識しているエージェントのリスニング・アドレス、SQL*Netリスナーの名前およびOracleデータベース・サービスと、トレース・パラメータが含まれています。SNMP読取り-書込み構成ファイルがパブリックからアクセス可能な場合、トレース・ディレクトリの場所やdbsnmpアドレスなどの機密データを取得するために使用される可能性があります。

3.7.19 Oracle AgentのSNMP読取り-書込み構成ファイルの権限

説明: Oracle AgentのSNMP読取り-書込み構成ファイル(snmp_rw.ora)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り-書込み構成ファイル(snmp_ro.ora)には、認識しているエージェントのリスニング・アドレス、SQL*Netリスナーの名前およびOracleデータベース・サービスと、トレース・パラメータが含まれています。SNMP読取り-書込み構成ファイルがパブリックからアクセス可能な場合、トレース・ディレクトリの場所やdbsnmpアドレスなどの機密データを取得するために使用される可能性があります。

3.7.20 SQL92セキュリティ機能の使用

説明: SQL92セキュリティ機能の使用状況を確認します。

重大度: 警告

理由: SQL92セキュリティ機能を無効にすると、表に対するSELECT権限がなくても、ユーザーがWHERE句を使用してUPDATE文またはDELETE文を実行できる可能性があります。

3.7.21 リモート・パスワード・ファイル

説明: 特権ユーザーがオペレーティング・システムによって認証されます。つまり、パスワード・ファイルが無視されます。

重大度: マイナー警告

理由: REMOTE_LOGIN_PASSWORDFILEパラメータでは、Oracleがパスワード・ファイルをチェックするかどうかを指定します。パスワード・ファイルにはSYSを含むユーザーのパスワードが含まれているため、攻撃者が総当たりのパスワード関連攻撃を通じて接続することを防ぐ最も安全な方法は、特権ユーザーにオペレーティング・システムによる認証を要求することです。

3.7.22 DB SECUREFILE

説明: Oracleによって作成されたすべてのLOBファイルが、SecureFileとして作成されていることを確認します。

重大度: クリティカル

理由: LOBをSecureFileとして処理するには、COMPATIBILE初期化パラメータを11.1以上に設定します。2つのパーティション(ASSMが有効な表領域があるパーティションおよびASSMが無効な表領域があるパーティション)を持つLOB列がある場合、ASSMが有効な表領域を持つパーティションのLOBはSecureFileとして処理され、その他のパーティションのLOBはBasicFile LOBとして処理されます。db_securefileをALWAYSに設定すると、作成されたLOBファイルは必ずセキュア・ファイルになります。

3.7.23 TKPROF実行可能ファイルの権限

説明: tkprof実行可能ファイルの権限がグループに対する読取りおよび実行権限に制限されていることと、パブリックにはアクセスできないことを確認します。

重大度: 警告

理由: TKPROFの権限が大きすぎると、内部の情報が保護されなくなります。

3.7.24 Oracle AgentのSNMP読取り-書込み構成ファイルの所有者

説明: Oracle AgentのSNMP読取り-書込み構成ファイル(snmp_rw.ora)がOracleソフトウェアの所有者に所有されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り-書込み構成ファイル(snmp_ro.ora)には、認識しているエージェントのリスニング・アドレス、SQL*Netリスナーの名前およびOracleデータベース・サービスと、トレース・パラメータが含まれています。SNMP読取り-書込み構成ファイルがパブリックからアクセス可能な場合、トレース・ディレクトリの場所やdbsnmpアドレスなどの機密データを取得するために使用される可能性があります。

3.7.25 自動ログ・アーカイブ機能の使用

説明: REDOログのアーカイブが自動的に行われ、REDOログが一杯になった場合にインスタンス操作を一時停止しないことを確認します。データベースがARCHIVELOGモードの場合にのみ適用されます。

重大度: クリティカル

理由: LOG_ARCHIVE_START初期化パラメータをTRUEに設定すると、REDOログのアーカイブが自動的に行われ、REDOログが一杯になってもインスタンス操作が一時停止しません。この機能は、データベースがARCHIVELOGモードの場合にのみ適用されます。

3.7.26 Webcache初期化ファイルの権限(Windows)

説明: Webcache初期化ファイル(webcache.xml)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Webcache初期化ファイル(webcache.xml)には機密情報が格納されます。Webcache初期化ファイルがパブリックからアクセス可能な場合、管理者パスワードのハッシュなどの機密データを取得するために使用される可能性があります。

3.7.27 Oracle HTTP Serverのmod_plsql構成ファイルの権限(Windows)

説明: Oracle HTTP Serverのmod_plsql構成ファイル(wdbsvr.app)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle HTTP Serverのmod_plsql構成ファイル(wdbsvr.app)には、認証に使用するデータベース・アクセス記述子が含まれています。mod_plsql構成ファイルがパブリックからアクセス可能な場合、悪質なユーザーがそれを利用し、データベース・アクセス記述子の設定を変更してPL/SQLアプリケーションにアクセスしたり、DoS攻撃を実行したりする可能性があります。

3.7.28 SQL*Plus実行可能ファイルの権限

説明: SQL*Plus実行可能ファイルの権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: ユーザーがSQL*Plusを使用すると、データベース上ですべてのSQLを実行できます。SQL*PlusにPUBLIC EXECUTE権限があると、悪質なユーザーに機密データが漏れてセキュリティ上の問題が発生する可能性があります。

3.7.29 Webcache初期化ファイルの所有者

説明: Webcache初期化ファイル(webcache.xml)がOracleソフトウェアの所有者によって所有されていることを確認します。

重大度: 警告

理由: Webcache初期化ファイル(webcache.xml)には機密情報が格納されます。Webcache初期化ファイルがパブリックからアクセス可能な場合、管理者パスワードのハッシュなどの機密データを取得するために使用される可能性があります。

3.7.30 Oracle AgentのSNMP読取り専用構成ファイルの権限

説明: Oracle AgentのSNMP読取り専用構成ファイル(snmp_ro.ora)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り専用構成ファイル(snmp_ro.ora)には、エージェントのリスニング・アドレス、認識しているSQL*NetリスナーとOracleデータベース・サービスの名前、およびトレース・パラメータが含まれています。SNMP読取り専用構成ファイルがパブリックからアクセス可能な場合、トレース・ディレクトリの場所やdbsnmpアドレスなどの機密データを取得するために使用される可能性があります。

3.7.31 ログ・アーカイブ二重保存先の権限

説明: サーバーのアーカイブ・ログにパブリックからアクセスできないことを確認します。

重大度: クリティカル

理由: LOG_ARCHIVE_DUPLEX_DESTパラメータ(init.oraファイル内)で指定されたディレクトリがOracleソフトウェア・インストールの所有者に所有されていないか、このディレクトリに対する権限が他のユーザーに付与されている場合、LogMinerを使用するとデータベース情報をアーカイブ・ログから取得できます。

3.7.32 $ORACLE_HOME/network/adminファイル権限(Windows)

説明: $ORACLE_HOME/network/admin内のファイルの所有権がOracleソフトウェア・セットに制限され、グループがDBAグループに制限され、パブリックが書込み権限を持っていないことを確認します。

重大度: 警告

理由: network/adminの所有権をOracleソフトウェア・セットおよびDBAグループに制限しないと、悪質なユーザーにネット構成データが漏れてセキュリティ上の問題が発生する可能性があります。

3.7.33 Oracle9iリリース1以上でのユーティリティ・ファイル・ディレクトリ初期化パラメータの設定

説明: UTL_FILE_DIR初期化パラメータがOracle9iリリース1以上で使用されていないことを確認します。

重大度: クリティカル

理由: UTL_FILEパッケージがアクセス可能なディレクトリを指定します。パラメータをアスタリスク(*)、ピリオド(.)または機密情報ディレクトリに設定すると、UTL_FILEパッケージに対する実行権限のあるすべてのユーザーに機密情報が公開される可能性があります。

3.7.34 IFILE参照先ファイルの権限(Windows)

説明: IFILEパラメータによって参照されるファイルへのアクセスが、Oracleソフトウェア・セットの所有者およびDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: IFILE初期化パラメータを使用すると、他の初期化パラメータ・ファイルの内容を現在の初期化パラメータ・ファイルに埋め込むことができます。初期化パラメータ・ファイルがパブリックからアクセス可能な場合、機密情報に関する初期化パラメータがスキャンされ、データベースのセキュリティ・ポリシーが公開される可能性があります。初期化パラメータ・ファイルを検索してOracleデータベース構成の設定の脆弱性を見つけることもできます。

3.7.35 SQL*Plus実行可能ファイルの権限(Windows)

説明: SQL*Plus実行可能ファイルの権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: ユーザーがSQL*Plusを使用すると、データベース上ですべてのSQLを実行できます。SQL*PlusにPUBLIC EXECUTE権限があると、悪質なユーザーに機密データが漏れてセキュリティ上の問題が発生する可能性があります。

3.7.36 Oracle XSQL構成ファイルの権限(Windows)

説明: Oracle XSQL構成ファイル(XSQLConfig.xml)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle XSQL構成ファイル(XSQLConfig.xml)には、データベース接続の機密情報が含まれています。XSQL構成ファイルがパブリックからアクセス可能な場合、機密データへのアクセスまたはさらなる攻撃に利用可能なデータベース・ユーザー名およびパスワードが漏れる可能性があります。

3.7.37 OSロール

説明: ロールがDBMSの外部ファイル以外のデータベースに保存され、管理および保護されます。

重大度: 警告

理由: ロールがOSによって管理されている場合、セキュリティ上の重大な問題が発生する可能性があります。

3.7.38 TKPROF実行可能ファイルの権限(Windows)

説明: tkprof実行可能ファイルの権限がグループに対する読取りおよび実行権限に制限されていることと、パブリックにはアクセスできないことを確認します。

重大度: 警告

理由: TKPROFの権限が大きすぎると、内部の情報が保護されなくなります。

3.7.39 $ORACLE_HOME/network/adminファイル権限

説明: $ORACLE_HOME/network/admin内のファイルの所有権がOracleソフトウェア・セットに制限され、グループがDBAグループに制限され、パブリックが書込み権限を持っていないことを確認します。

重大度: 警告

理由: network/adminの所有権をOracleソフトウェア・セットおよびDBAグループに制限しないと、悪質なユーザーにネット構成データが漏れてセキュリティ上の問題が発生する可能性があります。

3.7.40 Oracle HTTP Serverのmod_plsql構成ファイルの権限

説明: Oracle HTTP Serverのmod_plsql構成ファイル(wdbsvr.app)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り/書込み構成ファイル(snmp_rw.ora)には、認識しているエージェントのリスニング・アドレス、SQL*Netリスナーの名前およびOracleデータベース・サービスと、トレース・パラメータが含まれています。SNMP読取り-書込み構成ファイルがパブリックからアクセス可能な場合、トレース・ディレクトリの場所やdbsnmpアドレスなどの機密データを取得するために使用される可能性があります。

3.7.41 Oracle AgentのSNMP読取り-書込み構成ファイルの権限(Windows)

説明: Oracle AgentのSNMP読取り-書込み構成ファイル(snmp_rw.ora)の権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle AgentのSNMP読取り-書込み構成ファイル(snmp_ro.ora)には、認識しているエージェントのリスニング・アドレス、SQL*Netリスナーの名前およびOracleデータベース・ユーザーと、トレース・パラメータが含まれています。SNMP読取り-書込み構成ファイルがパブリックからアクセス可能な場合、トレース・ディレクトリの場所やdbsnmpアドレスなどの機密データを取得するために使用される可能性があります。

3.7.42 CASE SENSITIVE LOGON

説明: sec_case_sensitive_logonパラメータがTRUEに設定されていることを確認します。

重大度: クリティカル

理由: これでパスワードがより複雑になり、総当りのパスワード攻撃に対する防衛に役立ちます。

3.7.43 OTRACEデータファイル

説明: OTRACEで収集されたデータによって引き起こされる、データベース・パフォーマンスとディスク領域使用量への悪影響を回避します。

重大度: 警告

理由: データ収集によるパフォーマンスとリソースの使用は、データベース・パフォーマンスとディスク領域使用量に悪影響を与える可能性があります。

3.7.44 バックグラウンド・ダンプ保存先

説明: トレース・ファイル・ディレクトリへのアクセスがOracleソフトウェア・セットの所有者とDBAグループに制限されていることを確認します。

重大度: クリティカル

理由: ログ・ライター・プロセスやデータベース・ライター・プロセスなどのバックグラウンド・プロセスは、データベース操作の状態変化および例外やエラーの記録にトレース・ファイルを使用します。トレース・ファイルは、BACKGROUND_DUMP_DEST初期化パラメータで指定されたディレクトリに保存されます。このディレクトリに対するパブリック読取り権限を付与すると、データベースおよびアプリケーションに関する内部の重要な機密情報の詳細が公開される可能性があります。

3.7.45 SQL*Plus実行可能ファイルの所有者

説明: SQL*Plus所有権がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: ユーザーがSQL*Plusを使用すると、データベース上ですべてのSQLを実行できます。SQL*Plusの所有権をOracleソフトウェア・セットおよびDBAグループに制限しないと、悪質なユーザーに機密データが漏れてセキュリティ上の問題が発生する可能性があります。

3.7.46 Oracle HTTP Server分散構成ファイルの権限

説明: Oracle HTTP Server分散構成ファイルの権限がOracleソフトウェア・セットおよびDBAグループに制限されていることを確認します。

重大度: 警告

理由: Oracle HTTP Server分散構成ファイル(通常は.htaccess)は、Webフォルダのアクセス制御および認証に使用されます。このファイルを変更して、機密情報を含むページへのアクセス権を取得することができます。

3.7.47 Oracleホーム実行可能ファイルの権限(Windows)

説明: ORACLE_HOME/binフォルダ内のすべてのファイルに対するパブリックからの書込み権限がないことを確認します。

重大度: 警告

理由: ファイル・アクセス権が適切でないOracleファイルがある場合、セキュリティ上の重要な問題が発生する可能性があります。

3.7.48 データベース・リンクのネーミング

説明: データベース・リンクの名前が、リモート・データベース名と同じであることを確認します。

重大度: 警告

理由: データベース・リンク名が接続するデータベースのグローバル名と一致しない場合、テスト・サーバーまたは開発サーバーから本番サーバーへのアクセスを管理者が誤って許可してしまう可能性があります。この情報は、悪質なユーザーがターゲット・データベースにアクセスする際に使用されます。

3.7.49 セキュアなOS監査レベル

説明: UNIXシステムでOSレベルの監査が有効な場合、AUDIT_SYSLOG_LEVELがデフォルト以外の値に設定されていることを確認します。

重大度: 警告

理由: AUDIT_SYSLOG_LEVEL初期化パラメータをデフォルト値(NONE)に設定すると、DBAがOS監査レコードにアクセスできるようになります。

4 自動ストレージ管理のコンプライアンス標準

次に示すのは、自動ストレージ管理(ASM)のコンプライアンス標準のコンプライアンス・ルールです。コンプライアンス標準は次のとおりです。

- ASMの記憶域のベスト・プラクティス

- ASMのパッチ適用可能な構成

4.1 ASMの記憶域のベスト・プラクティス

ASMコンプライアンス標準についての記憶域のベスト・プラクティスのコンプライアンス・ルールは、次のとおりです。

4.1.1 「標準」または「高」の冗長性を持つディスク・グループに、ミラー化されたディスクまたはパリティ保護されたディスクがある

説明: 「標準」または「高」の冗長性を持つディスク・グループで、ミラー化されているディスクまたはパリティ保護されているディスクをチェックします。

重大度: マイナー警告

理由: ディスクとそのディスク・グループがデータの冗長性を提供している場合は、ディスク・リソースが消費され、不必要にパフォーマンスに影響を与えます。

4.1.2 ディスク・グループは外部冗長性に依存し、非保護のディスクを所有している

説明: 外部冗長性に依存するディスク・グループで、ミラー化されていないか、またはパリティ保護されていないディスクをチェックします。

重大度: 警告

理由: ディスク・グループが外部冗長性に依存し、ディスクがミラー化されていないか、またはパリティ保護されていない場合は、データ損失が発生する可能性があります。

4.1.3 ディスク・グループには、異なる冗長性属性を持つディスクが含まれている

説明: ディスク・グループで、異なる冗長性属性を持つディスクをチェックします。

重大度: 警告

理由: 異なる冗長性属性を持つディスクが同じディスク・グループ内にあると、データ保護のレベルに一貫性がなくなる場合があります。

4.1.4 ディスク・グループにはサイズが大幅に異なるディスクが含まれている

説明: ディスク・グループで、ディスク・サイズの差が5%を超えるディスクをチェックします。

重大度: 警告

理由: ディスク・グループ内のディスク間では、それぞれのサイズの差を5%以内にする必要があります。ただし、データ移行時を除きます。自動ストレージ管理では、ディスクのサイズに比例してデータを均一に分散します。I/Oと最適なパフォーマンスのバランスをとるためには、指定したディスク・グループ内のディスクを、同一のサイズとパフォーマンス特性にする必要があります。

4.2 ASMのパッチ適用可能な構成

ASMコンプライアンス標準のパッチ適用可能な構成のコンプライアンス・ルールは、次のとおりです。

4.2.1 パッチ適用可能性

説明: ASMターゲットがパッチ適用可能な構成であることを確認します。

重大度: 警告

理由: 提供されているEnterprise Managerのパッチ適用機能を使用して、パッチ適用できないASMターゲットにパッチを適用できません。

5 Oracleリスナーのコンプライアンス標準

次に示すのは、Oracleリスナーのコンプライアンス標準のコンプライアンス・ルールです。コンプライアンス標準は次のとおりです。

- Oracleリスナーの基本的なセキュリティ構成

- Oracleリスナーの高度なセキュリティ構成

5.1 Oracleリスナーの基本的なセキュリティ構成

Oracleリスナーのコンプライアンス標準の基本的なセキュリティ構成についてのコンプライアンス・ルールは、次のとおりです。

5.1.1 リスナー・トレース・ディレクトリの権限

説明: リスナー・トレース・ディレクトリに対するパブリックからの読取りまたは書込みの権限がないことを確認します。

重大度: クリティカル

理由: トレース・ディレクトリへのアクセスを許可すると、この情報が一般に公開され、セキュリティに影響を与える可能性があります。

5.1.2 リスナー・トレース・ファイルの権限(Windows)

説明: リスナー・トレース・ファイルにパブリックからアクセスできないことを確認します。

重大度: クリティカル

理由: トレース・ファイルへのアクセスを許可すると、この情報が一般に公開され、セキュリティに影響を与える可能性があります。

5.1.3 リスナー・トレース・ディレクトリの権限(Windows)

説明: リスナー・トレース・ディレクトリに対するパブリックからの読取りまたは書込みの権限がないことを確認します。

重大度: クリティカル

理由: トレース・ディレクトリへのアクセスを許可すると、この情報が一般に公開され、セキュリティに影響を与える可能性があります。

5.1.4 リスナー・ログ・ファイルの権限

説明: パブリックからのリスナー・ログ・ファイルの読取りまたは書込みが不可能であることを確認します。

重大度: クリティカル

理由: ログ・ファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ファイルへのアクセスを許可すると、この情報が一般に公開され、セキュリティに影響を与える可能性があります。

5.1.5 リスナー・トレース・ファイルの権限

説明: リスナー・トレース・ファイルにパブリックからアクセスできないことを確認します。

重大度: クリティカル

理由: トレース・ファイルへのアクセスを許可すると、この情報が一般に公開され、セキュリティに影響を与える可能性があります。

5.1.6 リスナー・ログ・ファイルの権限(Windows)

説明: パブリックからのリスナー・ログ・ファイルの読取りまたは書込みが不可能であることを確認します。

重大度: クリティカル

理由: ログ・ファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ファイルへのアクセスを許可すると、この情報が一般に公開され、セキュリティに影響を与える可能性があります。

5.2 Oracleリスナーの高度なセキュリティ構成

Oracleリスナーのコンプライアンス標準の高度なセキュリティ構成についてのコンプライアンス・ルールは、次のとおりです。

5.2.1 Oracle Net TCP有効ノード・チェック

説明: tcp.validnode_checkingパラメータがyesに設定されていることを確認します。

重大度: マイナー警告

理由: 有効ノードのチェックを設定しないと、悪質なユーザーがサーバーに接続する可能性があります。

5.2.2 リスナーのロギング・ステータス

説明: リスナー・ロギングが有効であることを確認します。

重大度: 警告

理由: リスナー・ロギングを使用しない場合、気付かないうちにリスナーが攻撃される可能性があります。

5.2.3 listener.oraでのホスト名の使用

説明: listener.oraで、リスナー・ホストがホスト名としてではなくIPアドレスとして指定されていることを確認します。

重大度: 警告

理由: セキュアでないドメイン・ネーム・システム(DNS)サーバーは、なりすまし攻撃に利用される可能性があります。ネーム・サーバーで障害が発生すると、リスナーでホストを解決できなくなります。

5.2.4 セキュアなリモート・リスナー管理

説明: 管理リクエストはTCPSおよびIPCでのみ受け入れられることを確認します。

重大度: 警告

理由: リモート管理用のトランスポートをTCPSおよびIPCに制限すると、不正アクセスの危険性が減少します。

5.2.5 リスナー直接管理

説明: リスナー構成の実行時変更が許可されていないことを確認します。

重大度: クリティカル

理由: 実行中のリスナーにアクセスする攻撃者によって、lsnrctlプログラムを使用した実行時変更操作(SET操作など)を受ける可能性があります。

5.2.6 リスナーのデフォルト名

説明: リスナーのデフォルト名が使用されていないことを確認します。

重大度: 警告

理由: リスナーにデフォルト名を使用すると、不正アクセスやDoS攻撃の危険性が増します。

5.2.7 リスナー・ログ・ファイルの所有者

説明: リスナー・ログ・ファイルがOracleソフトウェアの所有者に所有されていることを確認します。

重大度: クリティカル

理由: ログ・ファイルの情報から、ネットワークおよびデータベース接続に関する重要な詳細情報がわかる場合があります。ログ・ファイルがOracleソフトウェアの所有者に所有されていないと、この情報が一般に公開され、セキュリティに影響を与える可能性があります。

5.2.8 リスナー・トレース・ディレクトリの所有者

説明: リスナー・トレース・ディレクトリが、Oracleソフトウェアの所有者に所有されている有効なディレクトリであることを確認します。

重大度: クリティカル

理由: トレース・ディレクトリがOracleソフトウェアの所有者に所有されていないと、このトレース・ファイルが一般に公開され、セキュリティに影響を与える可能性があります。

5.2.9 sqlnet.ora権限の制限(Windows)

説明: sqlnet.oraファイルにパブリックからアクセスできないことを確認します。

重大度: クリティカル

理由: sqlnet.oraファイルがパブリックから読取り可能な場合は、悪意のあるユーザーがこれを読み取る可能性があり、その結果、機密情報が公開される可能性があります。たとえば、クライアントおよびサーバーのログやトレースの保存先情報などです。

5.2.10 listener.oraの権限(Windows)

説明: listener.oraファイルの権限がOracleソフトウェアの所有者に制限されていることを確認します。

重大度: クリティカル

理由: listener.oraファイルがパブリックから読取り可能な場合、このファイルからパスワードが抽出される可能性があります。このため、リスナー、データベースおよびアプリケーション構成に関する詳細情報が公開される可能性があります。また、パブリックからの書込み権限がある場合、悪質なユーザーがリスナーに設定されたパスワードを削除してしまう可能性があります。

5.2.11 リスナー・トレース・ファイルの所有者

説明: リスナー・トレース・ファイルの所有者がOracleソフトウェアの所有者と同じであることを確認します。

重大度: クリティカル

理由: トレース・ファイルがOracleソフトウェアの所有者に所有されていないと、この情報が一般に公開され、セキュリティに影響を与える可能性があります。

5.2.12 tcp.excluded_nodes

説明: tcp.excludeded_nodesパラメータが設定されていることを確認します。

重大度: 警告

理由: 有効ノードのチェックを設定しないと、悪質なユーザーがサーバーに接続する可能性があります。

5.2.13 セキュア登録要求のみ受け入れます

説明: 登録リクエストがTCPSおよびIPCでのみ受け入れられることを確認します。

重大度: 警告

理由: SECURE_REGISTER_listener_nameパラメータを構成していないと、接続の任意のトランスポートに対する登録リクエストをリスナーが受け入れます。

5.2.14 リスナー・パスワード

説明: リスナーへのアクセスがパスワードで保護されていることを確認します。

重大度: 警告

理由: パスワード保護を使用していない場合、ユーザーはリスナーへのアクセスが可能です。リスナーにアクセスできると、リスナーの停止が可能になります。また、パスワードを設定して、他のユーザーがリスナーを管理できないようにすることも可能です。

5.2.15 sqlnet.ora権限の制限

説明: sqlnet.oraファイルにパブリックからアクセスできないことを確認します。

重大度: クリティカル

理由: sqlnet.oraファイルがパブリックから読取り可能な場合は、悪意のあるユーザーがこれを読み取る可能性があり、その結果、機密情報が公開される可能性があります。たとえば、クライアントおよびサーバーのログやトレースの保存先情報などです。

5.2.16 listener.oraの権限

説明: listener.oraファイルの権限がOracleソフトウェアの所有者に制限されていることを確認します。

重大度: クリティカル

理由: listener.oraファイルがパブリックから読取り可能な場合、このファイルからパスワードが抽出される可能性があります。このため、リスナー、データベースおよびアプリケーション構成に関する詳細情報が公開される可能性があります。また、パブリックからの書込み権限がある場合、悪質なユーザーがリスナーに設定されたパスワードを削除してしまう可能性があります。

5.2.17 リスナー・インバウンド接続タイムアウト

説明: Oracleリスナーへのすべての不完全なインバウンド接続で存続期間が制限されていることを確認します。

重大度: 警告

理由: この制限によって、不完全なクライアント接続リクエストに対してリスナーがリソースを消費したり保持したりすることを回避します。悪質なユーザーがこれを利用して大量のリクエストをリスナーに送り、結果として正規のユーザーへのサービスが不可能になる可能性があるからです。

5.2.18 tcp.invited_nodes

説明: tcp.invited_nodesパラメータが設定されていることを確認します。

重大度: 警告

理由: 有効ノードのチェックを設定しないと、悪質なユーザーがサーバーに接続する可能性があります。

5.2.19 管理と登録にセキュア・トランスポートを使用します

説明: 管理および登録リクエストがTCPSおよびIPCトランスポートでのみ受け入れられることを確認します。

重大度: 警告

理由: 接続の任意のトランスポートに対する管理および登録リクエストをリスナーが受け入れます。

5.2.20 外部DLLとライブラリのロードの制限

説明: listener.oraのパラメータEXTPROC_DLLSがONLYに設定されていることを確認します。

重大度: 警告

理由: 本番環境に高度なレベルのセキュリティを実現するには、リスナーのlistener.oraファイルに明示的にリストすることで、extprocエージェントがロードできるDLLを制限します。

6 プラガブル・データベースのコンプライアンス標準

次に示すのは、プラガブル・データベースのコンプライアンス標準のコンプライアンス標準ルールです。コンプライアンス標準は次のとおりです。

- プラガブル・データベースの構成のベスト・プラクティス

- プラガブル・データベースの記憶域のベスト・プラクティス

6.1 プラガブル・データベースの構成のベスト・プラクティス

プラガブル・データベースの構成のベスト・プラクティスのコンプライアンス標準のコンプライアンス標準ルールは、次のとおりです。

6.1.1 標準以外の初期化パラメータの使用

説明: 標準以外の初期化パラメータを使用していないかどうかをチェックします。

重大度: マイナー警告

理由: 標準以外の初期化パラメータが使用されています。これらのパラメータは、適切でないアドバイスや誤った推定に基づいて使用された可能性があります。特に、ラッチのSPIN_COUNTおよびドキュメントに記載されていないオプティマイザ機能に関連するパラメータは、多くの確認作業を必要とする大きな問題となる可能性があります。

6.1.2 制御ファイル数の不足

説明: 単一の制御ファイルを使用していないかどうかをチェックします。

重大度: クリティカル

理由: 制御ファイルは、Oracleデータベースで最も重要なファイルの1つです。このファイルには、データベースに関する多くの物理特性と重要なリカバリ情報が記載されています。メディア・エラーによって1つしかない制御ファイルが失われると、不要な停止時間およびその他のリスクが発生します。

6.1.3 自動PGA管理を使用していない

説明: PGA_AGGREGATE_TARGET初期化パラメータの値が0であるかどうか、またはWORKAREA_SIZE_POLICYの値がMANUALであるかどうかをチェックします。

重大度: 警告

理由: 自動PGAメモリー管理は、PGAメモリーの割当て方法を簡略化し向上させます。有効にすると、DBAが設定したPGA_AGGREGATE_TARGET制限を保持したまま、作業領域専用のPGAメモリーの一部がOracleによって動的に調整できるようになります。

6.1.4 無効な自動統計収集

説明: STATISTICS_LEVEL初期化パラメータがBASICに設定されているかどうかをチェックします。

重大度: クリティカル

理由: 自動統計収集は、オプティマイザによる正確な実行計画の生成を可能にし、またパフォーマンスの問題を特定および修正する場合に必要です。STATISTICS_LEVELは、デフォルトでTYPICALに設定されます。STATISTICS_LEVEL初期化パラメータをBASICに設定すると、Oracleデータベースの機能に必要な多くの重要な統計の収集が無効になります。

6.1.5 STATISTICS_LEVELパラメータがALLに設定されている

説明: STATISTICS_LEVEL初期化パラメータがALLに設定されているかどうかをチェックします。

重大度: マイナー警告

理由: 自動統計収集は、オプティマイザによる正確な実行計画の生成を可能にし、またパフォーマンスの問題を特定および修正する場合に必要です。STATISTICS_LEVEL初期化パラメータは、現在、ALLに設定されています。これは指定時間に動作する追加のOSおよび計画実行統計が収集中であることを意味します。これらの統計は必要なく、またシステムに追加のオーバーヘッドを作成します。

6.1.6 TIMED_STATISTICSがFALSEに設定されている

説明: TIMED_STATISTICS初期化パラメータがFALSEに設定されているかどうかをチェックします。

重大度: クリティカル

理由: TIMED_STATISTICSをFALSEに設定すると、時間関連の統計(各種の内部操作の実行時間など)は収集されません。これらの統計は、診断やパフォーマンス・チューニングに役立ちます。TIMED_STATISTICSをTRUEに設定すると、時間関連の統計を収集できます。また、トレース・ファイルに記録される値も増えることで、長時間の操作についてより正確な統計を生成できます。

6.1.7 強制ロギングが無効

説明: データベースの強制ロギングが無効になっていないかどうかをチェックします。

重大度: 警告

理由: データベースが強制ロギング・モードではありません。データベースがData Guardプライマリ・データベースの場合、ログに記録されない直接書込みはスタンバイ・データベースに伝播されません。

6.2 プラガブル・データベースの記憶域のベスト・プラクティス

プラガブル・データベースの記憶域のベスト・プラクティスのコンプライアンス標準のコンプライアンス標準ルールは、次のとおりです。

6.2.1 ディクショナリ管理表領域

説明: ディクショナリ管理表領域をチェックします。

重大度: マイナー警告

理由: これらの表領域はディクショナリ管理されています。パフォーマンスの向上および領域管理の簡略化のために、自動セグメント領域管理を使用して、ローカル管理表領域を使用することをお薦めします。

6.2.2 永続表領域を一時表領域として使用しているユーザー

説明: 永続表領域を一時表領域として使用しているユーザーをチェックします。

重大度: マイナー警告

理由: これらのユーザーは、永続表領域を一時表領域として使用しています。一時表領域を使用すれば、ソート操作の領域管理をさらに効率的にできます。ソート操作に永続表領域を使用した場合、特にReal Application Clustersではパフォーマンス低下の原因になることがあります。さらに他のセキュリティ上の問題があります。ユーザーがシステム表領域内のすべての使用可能な領域を使用できるため、データベースが停止する可能性があります。

6.2.3 システム表領域をデフォルト表領域として使用しているシステム以外のユーザー

説明: SYSTEMまたはSYSAUXをデフォルト表領域として使用しているシステム以外のユーザーをチェックします。

重大度: マイナー警告

理由: これらのシステム以外のユーザーが、システム表領域をデフォルト表領域として使用しています。この違反状態では、システム以外のデータ・セグメントがシステム表領域に追加されるため、これらのデータ・セグメントの管理がより困難になり、システム表領域のパフォーマンス低下の原因となります。これはセキュリティ上の問題でもあります。システム表領域内のすべての使用可能な領域が消費されるため、データベースが停止する可能性があります。

6.2.4 自動セグメント領域管理が使用されていない表領域

説明: 手動セグメント領域管理を使用しているローカル管理表領域をチェックします。

重大度: マイナー警告

理由: 自動セグメント領域管理は、セグメント内の領域を管理する、より簡単で効率的な方法です。表領域に作成されるスキーマ・オブジェクトの記憶域パラメータPCTUSED、FREELISTSおよびFREELIST GROUPSの指定やチューニングを行う必要はまったくありません。Real Application Cluster環境では、空きリスト・グループを使用する場合の領域の難しいパーティション化を回避できるという利点もあります。

6.2.5 表領域の不均一なデフォルト・エクステント・サイズ

説明: デフォルト・エクステント・サイズが不均一なディクショナリ管理表領域または移行されたローカル管理表領域がないかどうかをチェックします。

重大度: マイナー警告

理由: 均一でないデフォルト・エクステント・サイズを使用しているディクショナリ管理表領域または移行されたローカル管理表領域が見つかりました。1つの表領域内に様々なサイズのエクステントが存在すると、フラグメンテーションが発生し、領域が適切に使用されず、パフォーマンスの低下を招きます。

6.2.6 SYSTEM表領域のロールバック・セグメント

説明: SYSTEM表領域にロールバック・セグメントがないかどうかをチェックします。

重大度: マイナー警告

理由: SYSTEM表領域は、Oracleデータ・ディクショナリとその関連オブジェクト専用に確保しておく必要があります。ユーザー表、ユーザー索引、ユーザー・ビュー、ロールバック・セグメント、UNDOセグメント、一時セグメントなど他のタイプのオブジェクトの格納には使用しないでください。

6.2.7 REDOログ数の不足

説明: 使用しているREDOログが2つ以下でないかをチェックします。

重大度: 警告

理由: オンラインREDOログ・ファイルは、データベースにおける変更を記録するために使用されます。アーカイブが有効な場合、オンラインREDOログを再利用する前にアーカイブする必要があります。各データベースでは、最低でも2つのオンラインREDOログ・グループが実行中である必要があります。オンラインREDOログのサイズと数が不足すると、LGWRはログを上書きする前に、ARCHがアーカイブ済ログ保存先への書込みを完了するのを待ちます。このような動作は、アクティビティがピークに達する期間には著しくパフォーマンスを低下させる原因となります。

6.2.8 REDOログ・サイズの不足

説明: REDOログ・ファイルが1Mb未満でないかをチェックします。レビューアへの質問: 仕様が1Mb (メガビット)になっています。1MB (メガバイト)にする必要がありますか。

重大度: クリティカル

理由: REDOログのサイズが小さいと、システム・チェックポイントでバッファ・キャッシュとI/Oシステムに継続的に高負荷がかかります。

6.2.9 ロールバックおよびデータ・セグメントを含む表領域

説明: ロールバック・セグメントとデータ・セグメントの両方を含む表領域がないかどうかをチェックします。

重大度: マイナー警告

理由: これらの表領域には、ロールバック・セグメントとデータ・セグメントの両方が含まれています。このようにタイプの異なるセグメントを混在させると、領域管理がより困難になり、表領域のパフォーマンスが低下することもあります。ロールバック・セグメント専用の表領域を使用すれば、可用性とパフォーマンスが向上します。

6.2.10 デフォルトの永続表領域がシステム表領域に設定されている

説明: DEFAULT_PERMANENT_TABLESPACEデータベース・プロパティがシステム表領域に設定されているかどうかをチェックします。

重大度: 警告

理由: 明示的に指定されていない場合、DEFAULT_PERMANENT_TABLESPACEはデフォルトでシステム表領域になります。これは推奨の設定ではありません。この設定の場合、永続表領域が明示的に割り当てられていないすべてのユーザーは、システム表領域を使用します。このように使用すると、データベースのパフォーマンスが低下する可能性があります。これはセキュリティ上の問題でもあります。システム以外のユーザーがシステム表領域にデータを格納して、システム表領域の使用可能なすべての領域を消費するため、データベースが停止する可能性があります。

6.2.11 SYSTEM表領域のSYSTEM以外のデータ・セグメント

説明: 表領域SYSTEMおよびSYSAUX内にあって、システム以外のユーザーが所有しているデータ・セグメントをチェックします。

重大度: マイナー警告

理由: システム・ユーザー以外に属するこれらのセグメントは、システム表領域(SYSTEMまたはSYSAUX)に格納されています。この違反状態では、これらのデータ・セグメントの管理がより困難になり、システム表領域のパフォーマンス低下の原因となる場合があります。これはセキュリティ上の問題でもあります。システム以外のユーザーがシステム表領域にデータを格納している場合、システム表領域内のすべての使用可能な領域が消費されるため、データベースが停止する可能性があります。

6.2.12 デフォルトの一時表領域がシステム表領域に設定されている

説明: DEFAULT_TEMP_TABLESPACEデータベース・プロパティがシステム表領域に設定されているかどうかをチェックします。

重大度: 警告

理由: 明示的に指定されていない場合、DEFAULT_TEMP_TABLESPACEはデフォルトでシステム表領域になるため、この設定はお薦めしません。この設定の場合、一時表領域が明示的に割り当てられていないすべてのユーザーは、システム表領域を一時表領域として使用します。一時データの格納にシステム表領域を使用することはお薦めしません。これはセキュリティ上の問題でもあります。システム以外のユーザーがシステム表領域にデータを格納して、システム表領域の使用可能なすべての領域を消費するため、データベースが停止する可能性があります。

7 セキュリティ技術導入ガイド

この章では、セキュリティ技術導入ガイド(STIG)ベースのコンプライアンス標準を使用する方法と、環境に固有の要件に応じてこれらをカスタマイズする方法について説明します。

7.1 セキュリティ技術導入ガイドについて

安全なデータベース環境を提供するというオラクル社の取組みに従って、Enterprise Managerは、コンプライアンス標準の形式での複数のセキュリティ技術導入ガイド(STIG)の導入をサポートしています。STIGは、国防総省(DOD)に指示されたセキュリティ要件へのコンプライアンスを確実にするために国防情報システム局(DISA)によって作成されたルール、チェックリストおよびその他のベスト・プラクティスのセットです。

現在使用可能なSTIGベースのコンプライアンス標準は、次のとおりです。

- セキュリティ技術導入ガイド(STIGバージョン1.8) (Oracle Database [リリース1.8]用)

- セキュリティ技術導入ガイド(STIGバージョン1.8) (Oracle Cluster Database [リリース1.8]用)

- セキュリティ技術導入ガイド(STIGバージョン8 リリース1.11) (Oracle Database用)

- セキュリティ技術導入ガイド(STIGバージョン8 リリース1.11) (Oracle Cluster Database用)

- Oracle 11.2g Database STIG - バージョン1、リリース2 (Oracle Database用)

- Oracle 11.2g Database STIG - バージョン1、リリース2 (Oracle Cluster Database用)

STIGの詳細は、Information Assurance Support EnvironmentのWebサイト(http://iase.disa.mil/stigs/Pages/index.aspx)を参照してください。

7.2 STIGコンプライアンス標準ターゲットの関連付け

データベースがSTIGコンプライアンス標準を満たしているか判断するには、データベース・ターゲットを標準と関連付ける必要があります。

1. 「エンタープライズ」メニューから「コンプライアンス」を選択し、「ライブラリ」を選択します。

2. 「コンプライアンス標準」タブを選択してSTIG標準を検索します。ターゲット・タイプは、Oracle DatabaseとOracle Cluster Databaseの2つです。

3. 適切な標準を選択し、「ターゲットの関連付け」をクリックします。

4. 「追加」をクリックして、監視するデータベース・ターゲットを選択します。セレクタ・ダイアログを閉じると表にターゲットが表示されます。

5. 「OK」をクリックしてからアソシエーションを保存するか確認します。アソシエーションは、構成拡張"STIG構成"を適切な管理エージェントに内部的にデプロイします。

6. デプロイメント後に構成収集が発生すると、結果を表示できます。「エンタープライズ」メニューから「コンプライアンス」、「ダッシュボード」または「結果」の順に選択します。

7.3 STIGコンプライアンス標準の違反の処理

STIGコンプライアンス標準を処理するオプションは4つあります。

- STIGチェックの推奨に従って違反を修正

- 手動ルール違反のクリア

- 違反の抑止

- コンプライアンス標準および構成拡張のカスタマイズ

7.3.1 STIGチェックの推奨に従って違反を修正

STIGチェックの推奨に従ってデータベース上のセキュリティ構成を修正することによって違反に対処します。

1. 「エンタープライズ」メニューから「コンプライアンス」を選択し、「結果」を選択します。

2. STIGコンプライアンス標準の行を選択し、「違反の管理」をクリックします。

3. 表のなかでルール違反の行を探し、右端の列の推奨される修正をメモします。

推奨に従って変更を加えた後、Enterprise Managerで次のようにデータベース構成をリフレッシュします。

1. データベース・ターゲットのホーム・ページに移動します。

2. データベース・メニューから、「構成」、「最新収集」の順に選択します。

3. 右側の「アクション」メニューから「リフレッシュ」を選択します。

4. リフレッシュが完了したら左側のペインの構成拡張を選択し、失敗した構成の表示がないことを確認します。

5. 「エンタープライズ」メニューから「コンプライアンス」を選択し、「結果」を選択します。データベース・ターゲットに違反が表示されなくなったことを確認します。

7.3.2 手動ルール違反のクリア

自動化できないチェックは、手動ルールとして実装されます。これらのチェックは、管理者がルール説明やSTIGガイドそのものに記載されている手順に従って実行する必要があります。

手動ルールを含むコンプライアンス標準が最初にターゲットに関連付けられると、各手動ルールによって1つの違反が生成されます。これにより、管理者はチェックの正常完了後に違反をクリアできるようになります。プロセス中、操作を実行しているユーザーおよび操作の説明が記録されます。また、ユーザーは有効期限を設定することもでき、この期限になると違反が再生成されます。これにより、コンプライアンスが定期的に再評価されます。

1. 「エンタープライズ」メニューから「コンプライアンス」を選択し、「結果」を選択します。

2. STIGコンプライアンス標準の行を選択し、「違反の管理」をクリックします。

3. 「手動ルール違反」タブを選択します。

4. 1つ以上のルールを選択し、「違反のクリア」をクリックします。

5. 理由および有効期限(オプション)を入力し、「OK」をクリックします。

7.3.3 違反の抑止

違反を抑止すると、結果およびコンプライアンス・スコアの計算から違反が削除されます。抑止されていても、抑止された違反が表示された管理ビューを使用してレポートを作成することはできます。

違反は永続的にも一時的にも抑止できるため、永続的な例外や猶予期間が可能になります。日付を入力するよう選択した場合、基礎となる条件が修正される結果として日付が消去されないかぎり、違反はその日付に再表示されます。

1. 「エンタープライズ」メニューから「コンプライアンス」を選択し、「結果」を選択します。

2. STIGコンプライアンス標準の行を選択し、「違反の管理」をクリックします。

3. 「抑止解除された違反」を選択します。

4. 抑止する違反がリストされた行を選択し、「違反の抑止」ボタンをクリックします。

5. 開いたダイアログで、「無期限」を選択するか、有効期限を選択します。抑止の理由を入力することもできます。「OK」をクリックします。

7.3.4 コンプライアンス標準および構成拡張のカスタマイズ

違反を検出するルールの意図は望ましいが、環境に合うようにそのルールの微調整が必要な場合があります。STIGコンプライアンス標準では、コンプライアンス標準の違反を評価する問合せを表示してカスタマイズすることができます。そのプロセスには次の作業が含まれます。

- 構成拡張のカスタマイズ

- コンプライアンス標準ルールのカスタマイズ

- カスタマイズしたルールを含むコンプライアンス標準の作成

プロセスを示すために、ルールDG0116 DBMS privileged role assignmentsの問合せを更新するシナリオを想定します。

7.3.4.1 構成拡張のカスタマイズ

STIG構成拡張をカスタマイズするには、次の手順を実行します。

1. 「エンタープライズ」メニューから「構成」を選択し、「構成拡張」を選択します。

2. 適切なSTIG構成表の行(データベース・インスタンスまたはクラスタ・データベース)を選択し、「類似作成」ボタンをクリックします。

3. 拡張に「カスタムSTIG構成」などの新しい名前を指定します。

4. 「ファイルとコマンド」タブで、すべてのコマンド行を選択して「削除」をクリックします。

5. 「SQL」タブで、ルール別名「DG0116 DBMS privileged role assignments」を探します。この上または下にある他のすべての行を削除します。

6. DG0116の問合せを変更して、たとえば「カスタムDG0116 DBMS privileged role assignments」などに別名を変更します。

7. 結果の確認: サンプル・ターゲットを選択して「プレビュー」をクリックします。

8. 違反がもう表示されない場合、「カスタムSTIG構成拡張」を保存します。

7.3.4.2 コンプライアンス標準ルールのカスタマイズ

コンプライアンス標準ルールをカスタマイズするには、次の手順を実行します。

1. 「エンタープライズ」メニューから「コンプライアンス」を選択し、「ライブラリ」を選択します。

2. 「コンプライアンス標準ルール」タブを選択して、エージェント側ルール・タイプのルールDG0116 DBMS privileged role assignmentsを検索します。

3. ルールを選択して「類似作成」ボタンをクリックします。

4. たとえば「カスタムDG0116 DBMS privileged role assignments」などに名前を変更します。「続行」をクリックします。

5. チェック定義ページで、新しいSTIG構成拡張(カスタムSTIG構成拡張)および別名(カスタムDG0116 DBMS privileged role assignments)を選択するために拡大鏡アイコンをクリックします。

6. カスタム構成拡張および別名を選択して「OK」をクリックし、「次」をクリックしてテスト・ページに移動します。

7. ターゲットを選択してコンプライアンス・ルールをテストします。

8. 「次」、「終了」の順にクリックして、新しいコンプライアンス・ルールを作成します。

7.3.4.3 カスタマイズしたルールを含むコンプライアンス標準の作成

新しいルールでコンプライアンス標準を作成するには、次の手順を実行します。

1. 「エンタープライズ」メニューから「コンプライアンス」を選択し、「ライブラリ」を選択します。

2. 「コンプライアンス標準」タブを選択し、エージェント側ルール・タイプのデータベース・インスタンス用のSTIGを検索します。

3. コンプライアンス標準を選択して「類似作成」ボタンをクリックします。

4. 名前を変更します(たとえば、「カスタム・セキュリティ技術導入ガイド」など)。「続行」をクリックします。

5. 左側のペインでOracle Databaseチェック・プロシージャ・フォルダを開き、「DG0116 DBMS privileged role assignments」までスクロール・ダウンします。

6. ルールを右クリックしてポップアップ・メニューから「ルール参照の削除」を選択します。「OK」をクリックして削除を確認します。

7. Oracle Databaseチェック・プロシージャ・フォルダを右クリックして、ポップアップ・メニューから「ルールの追加」を選択します。

8. 表のなかで「カスタムDG0116 DBMS privileged role assignments」の行を探し、「OK」をクリックします。

9. コンプライアンス標準の類似作成ページで、「保存」ボタンをクリックして新しいコンプライアンス標準を作成します。

カスタム・コンプライアンス標準を、7.2項で説明しているようにターゲット・データベースと関連付けできるようになりました。

7.4 WindowsデータベースでのSTIGコンプライアンス標準ルール例外

Enterprise ManagerのOracle Database用セキュリティ技術導入ガイドの実装では、Windowsデータベースを完全にはサポートしていません。次のルールは、Windowsデータベースでは違反をレポートしません。

DG0009 DBMS software library permissions
DG0019 DBMS software ownership
DG0012 DBMS software storage location
DG0102 DBMS services dedicated custom account
DO0120 Oracle process account host system privileges
DO0145 Oracle SYSDBA OS group membership
DG0152 DBMS network port, protocol and services (PPS) use
DG0179 DBMS warning banner
DO0286 Oracle connection timeout parameter
DO0287 Oracle SQLNET.EXPIRE_TIME parameter
DO6740 Oracle listener ADMIN_RESTRICTIONS parameter
DO6746 Oracle Listener host references
DO6751 SQLNET.ALLOWED_LOGON_VERSION

7.5 Oracle Database STIGコンプライアンス標準のガイドからの変更点

Enterprise ManagerのOracle Database 11g STIGの実装は、チェックリストとは少し異なっています。変更された点は、エラー修正、チェックの機能強化(追加のデフォルト・ユーザー)、手動チェックを指定できる自動スクリプトなどです。変更内容を確認および理解して、それらを環境で受容できるか確認することが重要です。受容できない場合は、要件に合せて前述のカスタマイズ手順を実行します。これらの変更内容の詳細は、第8章「オラクル社によって強化されたセキュリティ技術導入ガイドライン(STIG)ルール」を参照してください。

表7-1 Oracle Database 11g V8 R8およびR11 STIGとの相違点

STIG ID

Oracleの変更内容

DG0008

デフォルトのユーザー/ロールを追加しました。

DG0009

オラクル社がスクリプトを提供しました。

DG0012

オラクル社がスクリプトを提供しました。

DG0019

オラクル社がスクリプトを提供しました。

DG0077

デフォルトのユーザー/ロールを追加しました。

DG0079

問合せが間違っています。NULLを文字列'NULL'に置換しました。

DG0091

デフォルト・ユーザーを追加しました。

DG0102

オラクル社がスクリプトを提供しました。

DG0116

デフォルト・ユーザーを追加しました。

DG0117

デフォルト・ユーザーを追加しました。

DG0119

デフォルト・ユーザーを追加しました。

DG0121

デフォルト・ユーザーを追加しました。

DG0123

デフォルト・ユーザーを追加しました。

DG0152

オラクル社がスクリプトを提供しました。

DG0179

オラクル社がスクリプトを提供しました。

DO0120

オラクル社がスクリプトを提供しました。

DO0145

オラクル社がスクリプトを提供しました。

DO0155

デフォルト・ユーザーを追加しました。

DO0221

デフォルト・インスタンス名としてorclを使用しました。

DO0231

デフォルト・ユーザーを追加しました。

DO0250

dba_repcatalogにレコードがある場合にのみ違反としてdb_linkを返すようにルール問合せを結合しました。

DO0270

違反を取得するためのより厳しい問合せを使用しました。

DO0286

オラクル社がスクリプトを提供しました。

DO0287

オラクル社がスクリプトを提供しました。

DO0340

デフォルト・ユーザーを追加しました。

DO0350

デフォルトのユーザー/ロールを追加しました。

DO3536

問合せを結合しました。制限のDEFAULT値を逆参照しました。

DO3609

デフォルトのユーザー/ロールを追加しました。

DO3689

デフォルトのユーザー/ロールを追加しました。

DO6740

オラクル社がスクリプトを提供しました。

DO6746

オラクル社がスクリプトを提供しました。

表7-2 Oracle Database 11gR2 V1リリース2 STIGとの相違点

STIG ID

Oracleの変更内容

SV-66381r1_rule

オラクル社が問合せを実装しました。デフォルト・ユーザーをカウント対象外としました。

SV-66395r1_rule

フィルタとして'SYSTEM'および'DELETE_CATALOG_ROLE'を追加しました。

SV-66401r1_rule

問合せ内の表名を固定しました。チェック対象の権限を追加しました。デフォルト・ユーザーをカウント対象外としました。

SV-66405r1_rule

問合せ内の表名を固定しました。チェック対象の権限を追加しました。デフォルト・ユーザーをカウント対象外としました。

SV-66419r1_rule

STIGドキュメントに間違った問合せがあります。ルールの新しい問合せを準備しました。デフォルト・ユーザーをカウント対象外としました。

SV-66427r1_rule

3つの条件を1つに結合しました。次の場合、問合せで違反が発生します。

1. audit_trailパラメータがnoneに設定されている場合。

2. audit_trailがnoneに設定されていて、table_spaceが暗号化されていない場合。

SV-66439r1_rule

デフォルト・ユーザーをカウント対象外としました。

SV-66441r1_rule

デフォルト・プロファイルを参照解除しました。

SV-66459r1_rule

ルールによるデータベース・アーカイブ・ログ・モードのチェックは、"archive log list"コマンドを使用せずにリポジトリ表から行われます。

SV-66485r1_rule

オラクル社が問合せを提供しました。Fix Textからlimit=35を使用しました。

SV-66489r1_rule

オラクル社が問合せを提供しました。Fix Textからlimit=6を使用しました。

SV-66507r1_rule

デフォルト・プロファイルを参照解除しました。

SV-66553r1_rule

オラクル社が問合せを提供しました。

SV-66571r1_rule

オラクル社が問合せを提供しました。Fix Textからlimit=35を使用しました。

SV-66599r1_rule

オラクル社が問合せを提供しました。デフォルト・ユーザーをカウント対象外としました。

SV-66623r1_rule

オラクル社が問合せを提供しました。デフォルト・ユーザーをカウント対象外としました。

SV-66627r1_rule

デフォルト・ユーザーをカウント対象外としました。

SV-66647r1_rule

ドキュメントから問合せを結合しました。デフォルト・ユーザーをカウント対象外としました。

SV-66651r1_rule

ドキュメントから問合せを結合しました。デフォルト・ユーザーをカウント対象外としました。

SV-66657r1_rule

オラクル社がスクリプトを提供しました。

SV-66663r1_rule

SYSTEM表領域のチェックを追加しました。

SV-66665r1_rule

SYSTEM表領域のチェックを追加しました。

SV-66669r1_rule

Oracleではこのルールは常に合格します。

SV-66673r1_rule

Oracleではこのルールは常に合格します。

SV-68205r1_rule

ユーザーはレプリケーションに使用するdb_linksを手動でカウント対象外とする必要があります。

SV-68229r1_rule

デフォルト・ユーザーを追加しました。

SV-68233r1_rule

違反コンテキストの改良のために、問合せで追加の列を選択しました。

SV-68235r1_rule

デフォルト・ユーザーを追加しました。

SV-68241r1_rule

違反コンテキストの改良のために、問合せで追加の列を選択しました。

SV-68249r1_rule

デフォルト・ユーザーを追加しました。

SV-68257r1_rule

デフォルト・ユーザーを追加しました。

SV-68283r1_rule

オラクル社がスクリプトを提供しました。

SV-66431r1_rule

問合せでsys.v$parameterではなくv$parameterを使用します。

8 オラクル社によって強化されたセキュリティ技術導入ガイドライン(STIG)ルール

オラクル社によって強化されたセキュリティ技術導入ガイドライン(STIG)ルール。

8.1 STIGデータベース・チェック

次のSTIGデータベース・ルールはオラクル社によって強化されています。収集問合せの太字のテキストは、変更箇所を示しています。

8.1.1 DG0008

名前: Application objects should be owned by accounts authorized for ownership

収集問合せ:

(select distinct 'Unauthorized user '||owner||' owns application objects in the database.'  from dba_objects
where owner not in
('ANONYMOUS','AURORA$JIS$UTILITY$',
'AURORA$ORB$UNAUTHENTICATED',
'CTXSYS','DBSNMP','DIP','DVF','DVSYS','EXFSYS','LBACSYS','MDDATA',
'MDSYS','MGMT_VIEW','ODM','ODM_MTR',
'OLAPSYS','ORDPLUGINS', 'ORDSYS',
'OSE$HTTP$ADMIN','OUTLN','PERFSTAT',
'PUBLIC','REPADMIN','RMAN','SI_INFORMTN_SCHEMA',
'SYS','SYSMAN','SYSTEM','TRACESVR',
'TSMSYSWK_TEST','WKPROXY','WKSYS',
'WKUSER','WMSYS','XDB', 'OWBSYS', 'SCOTT', 'ORACLE_OCM', 'ORDDATA', 'APEX_030200', 'OWBSYS_AUDIT', 'APPQOSSYS', 'FLOWS_FILES')
and owner not in
(select grantee from dba_role_privs where granted_role='DBA'))

STIGルールへの変更: デフォルトのユーザー/ロールを追加しました

8.1.2 DG0077

名前: Production databases should be protected from unauthorized access by developers on shared production/development host systems。

収集問合せ:

select 'User/Role '||grantee||' granted '||privilege||' on production system' from dba_sys_privs
where (privilege like 'CREATE%' or privilege like 'ALTER%'
or privilege like 'DROP%')
and privilege <> 'CREATE SESSION'
and grantee not in
('ANONYMOUS','AURORA$JIS$UTILITY$',
'AURORA$ORB$UNAUTHENTICATED','CTXSYS','DBSNMP','DIP',
'DVF','DVSYS','EXFSYS','LBACSYS','MDDATA','MDSYS','MGMT_VIEW',
'ODM','ODM_MTR','OLAPSYS','ORDPLUGINS','ORDSYS',
'OSE$HTTP$ADMIN','OUTLN','PERFSTAT','PUBLIC','REPADMIN',
'RMAN','SI_INFORMTN_SCHEMA','SYS','SYSMAN','SYSTEM',
'TRACESVR','TSMSYSWK_TEST','WKPROXY','WKSYS','WKUSER',
'WMSYS','XDB', 'APEX_030200', 'APPQOSSYS', 'AQ_ADMINISTRATOR_ROLE','DATAPUMP_EXP_FULL_DATABASE',
'DBA', 'EXP_FULL_DATABASE', 'FLOWS_FILES', 'IMP_FULL_DATABASE',
'DATAPUMP_IMP_FULL_DATABASE', 'OEM_ADVISOR', 'OEM_MONITOR', 'OLAP_DBA',
'OLAP_USER', 'OWB$CLIENT', 'OWBSYS', 'OWBSYS_AUDIT', 'RECOVERY_CATALOG_OWNER',
'RESOURCE', 'SCHEDULER_ADMIN', 'SPATIAL_CSW_ADMIN_USR', 'SPATIAL_WFS_ADMIN_USR')
order by 1;

STIGルールへの変更: デフォルトのユーザー/ロールを追加しました。

8.1.3 DG0079

名前: DBMS login accounts require passwords to meet complexity requirements。

収集問合せ:

select profile||': '||limit
from dba_profiles,
(select limit as def_pwd_verify_func
from dba_profiles
where resource_name='PASSWORD_VERIFY_FUNCTION'
and profile='DEFAULT')
where resource_name='PASSWORD_VERIFY_FUNCTION'
and replace(limit, 'DEFAULT', def_pwd_verify_func) in
('UNLIMITED', 'NULL')

STIGルールへの変更: 誤った問合せ。NULLを文字列'NULL'に置換しました。

8.1.4 DG0091

名前: Custom and GOTS application source code stored in the database should be protected with encryption or encoding。

収集問合せ:

(select 'Application source code of '||owner||'.'||name||' is not encrypted.'
from dba_source
where line=1 and owner not in('SYS', 'CTXSYS', 'MDSYS', 'ODM', 'OE', 'OLAPSYS', 'ORDPLUGINS',
'ORDSYS', 'OUTLN', 'PM', 'QS_ADM', 'RMAN', 'SYSTEM', 'WKSYS',
'WMSYS', 'XDB', 'APEX_030200', 'SYSMAN', 'ORACLE_OCM', 'DBSNMP', 'EXFSYS' )
and owner not like 'OEM%'
and text not like '%wrapped%'
and type in ('PROCEDURE', 'FUNCTION', 'PACKAGE BODY'))

STIGルールへの変更: デフォルト・ユーザーを追加しました。

8.1.5 DG0116

名前: Database privileged role assignments should be restricted to IAO-authorized DBMS accounts。

収集問合せ:

select 'Privileged role '||granted_role||' is assigned to user '||grantee details
from dba_role_privs
where grantee not in
('ANONYMOUS','AURORA$JIS$UTILITY$',
'AURORA$ORB$UNAUTHENTICATED','CTXSYS','DBSNMP','DIP',
'DMSYS','DVF','DVSYS','EXFSYS','LBACSYS','MDDATA','MDSYS',
'MGMT_VIEW','ODM','ODM_MTR','OLAPSYS','ORDPLUGINS','ORDSYS',
'OSE$HTTP$ADMIN','OUTLN','PERFSTAT','REPADMIN','RMAN',
'SI_INFORMTN_SCHEMA','SYS','SYSMAN','SYSTEM','TRACESVR',
'TSMSYS','WK_TEST','WKPROXY','WKSYS','WKUSER','WMSYS','XDB', 'OEM_MONITOR')
and grantee not in
('DBA', 'OLAP_USER', 'IP', 'ORASSO_PUBLIC',
'PORTAL_PUBLIC', 'DATAPUMP_EXP_FULL_DATABASE',
'DATAPUMP_IMP_FULL_DATABASE', 'EXP_FULL_DATABASE',
'IMP_FULL_DATABASE', 'OLAP_DBA', 'EXECUTE_CATALOG_ROLE',
'SELECT_CATALOG_ROLE', 'JAVASYSPRIV')
and grantee not in
(select grantee from dba_role_privs where granted_role = 'DBA')
and grantee not in (select distinct owner from dba_objects)
and granted_role in
('AQ_ADMINISTRATOR_ROLE','AQ_USER_ROLE',
'CTXAPP',
'DELETE_CATALOG_ROLE','EJBCLIENT','EXECUTE_CATALOG_ROLE',
'EXP_FULL_DATABASE','GATHER_SYSTEM_STATISTICS',
'GLOBAL_AQ_USER_ROLE','HS_ADMIN_ROLE', 'IMP_FULL
DATABASE','JAVADEBUGPRIV','JAVAIDPRIV',
'JAVASYSPRIV','JAVAUSERPRIV','JAVA_ADMIN','JAVA_DEPLOY',
'LOGSTDBY_ADMINISTRATOR','OEM_MONITOR','OLAP_DBA',
'RECOVERY_CATALOG_OWNER',
'SALES_HISTORY_ROLE','SELECT_CATALOG_ROLE','WKUSER',
'WM_ADMIN_ROLE','XDBADMIN')
and granted_role not in ('CONNECT', 'RESOURCE', 'AUTHENTICATEDUSER')
order by 1;

STIGルールへの変更: デフォルト・ユーザーを追加しました。

8.1.6 DG0117

名前: Administrative privileges should be assigned to database accounts via database roles。

収集問合せ:

select 'Grantee '||grantee||' is directly granted '||privilege||' privilege. The privilege should be granted via a role.'
from dba_sys_privs
where grantee not in
('SYS', 'SYSTEM', 'SYSMAN', 'CTXSYS', 'MDSYS', 'WKSYS', 'ANONYMOUS', 'APEX_030200',
'APEX_PUBLIC_USER', 'FLOWS_FILES', 'OUTLN', 'DIP', 'APPQOSSYS', 'WMSYS',
'OLAPSYS', 'ORACLE_OCM', 'OWBSYS_AUDIT', 'DBSNMP', 'XDB', 'EXFSYS',
'SPATIAL_WFS_ADMIN_USR', 'SPATIAL_CSW_ADMIN_USR', 'OWBSYS', 'OWBSYS_AUDIT')
and grantee not in
(select distinct granted_role from dba_role_privs)
and privilege <> 'UNLIMITED TABLESPACE'
order by 1

STIGルールへの変更: デフォルト・ユーザーを追加しました。

8.1.7 DG0119

名前: DBMS application users should not be granted administrative privileges to the DBMS。

収集問合せ:

select 'Application user '||grantee||' has administrative privilege  '||privilege||' on '||owner||'.'|| table_name from dba_tab_privs
where privilege in ('ALTER', 'REFERENCES', 'INDEX')
and grantee not in ('DBA', 'SYS', 'SYSTEM', 'LBACSYS', 'XDBADMIN', 'ANONYMOUS',
'APEX_PUBLIC_USER', 'CSW_USR_ROLE', 'WFS_USR_ROLE', 'SPATIAL_WFS_ADMIN',
'SPATIAL_WFS_ADMIN_USR', 'SPATIAL_CSW_ADMIN', 'SPATIAL_CSW_ADMIN_USR')
and table_name not in
('SDO_IDX_TAB_SEQUENCE', 'XDB$ACL', 'XDB_ADMIN')
and grantee not in
(select grantee from dba_role_privs where granted_role = 'DBA')
and grantee not in (select distinct owner from dba_objects) order by 1

STIGルールへの変更: デフォルト・ユーザーを追加しました。

8.1.8 DG0121

名前: Application users privileges should be restricted to assignment using application user roles。

収集問合せ:

select 'User '||grantee||' has direct privilege '||privilege||' on the table '||owner||'.'||table_name||'. The privilege should be granted via a role.'
from dba_tab_privs where grantee not in
(select role from dba_roles)
and grantee not in
('APEX_PUBLIC_USER', 'AURORA$JIS$UTILITY$', 'CTXSYS',
'DBSNMP', 'EXFSYS', 'FLOWS_030000', 'FLOWS_FILES',
'LBACSYS', 'MDSYS', 'MGMT_VIEW', 'ODM', 'OLAPSYS',
'ORACLE_OCM', 'ORDPLUGINS', 'ORDSYS',
'OSE$HTTP$ADMIN', 'OUTLN', 'OWBSYS', 'PERFSTAT',
'PUBLIC', 'REPADMIN', 'SYS', 'SYSMAN', 'SYSTEM',
'WKSYS', 'WMSYS', 'XDB', 'ANONYMOUS', 'APEX_030200', 'APEX_PUBLIC_USER',
'APPQOSSYS', 'CSW_USR_ROLE', 'WFS_USR_ROLE', 'SPATIAL_WFS_ADMIN',
'SPATIAL_WFS_ADMIN_USR', 'SPATIAL_CSW_ADMIN', 'SPATIAL_CSW_ADMIN_USR')
and table_name<>'DBMS_REPCAT_INTERNAL_PACKAGE'
and table_name not like '%RP'
and grantee not in
(select grantee from dba_tab_privs
where table_name in ('DBMS_DEFER', 'DEFLOB'))

STIGルールへの変更: デフォルト・ユーザーを追加しました。

8.1.9 DG0123

名前: Access to DBMS system tables and other configuration or metadata should be restricted to DBAs。

収集問合せ:

select 'Application user '|| grantee||' is granted '||privilege||' on system table '|| owner||'.'|| table_name from dba_tab_privs
where (owner='SYS' or table_name like 'DBA_%')
and privilege <> 'EXECUTE'
and grantee not in
('PUBLIC', 'AQ_ADMINISTRATOR_ROLE', 'AQ_USER_ROLE',
'AURORA$JIS$UTILITY$', 'OSE$HTTP$ADMIN', 'TRACESVR',
'CTXSYS', 'DBA', 'DELETE_CATALOG_ROLE',
'EXECUTE_CATALOG_ROLE', 'EXP_FULL_DATABASE',
'GATHER_SYSTEM_STATISTICS', 'HS_ADMIN_ROLE',
'IMP_FULL_DATABASE', 'LOGSTDBY_ADMINISTRATOR', 'MDSYS',
'ODM', 'OEM_MONITOR', 'OLAPSYS', 'ORDSYS', 'OUTLN',
'RECOVERY_CATALOG_OWNER', 'SELECT_CATALOG_ROLE',
'SNMPAGENT', 'SYSTEM', 'WKSYS', 'WKUSER', 'WMSYS', 'WM_ADMIN_ROLE', 'XDB',
'LBACSYS', 'PERFSTAT', 'XDBADMIN', 'ADM_PARALLEL_EXECUTE_TASK', 'APEX_030200',
'APPQOSSYS', 'DBFS_ROLE', 'EXFSYS', 'HS_ADMIN_SELECT_ROLE', 'OLAP_XS_ADMIN',
'ORACLE_OCM', 'OWB$CLIENT', 'OWBSYS', 'SYSMAN')
and grantee not in
(select grantee from dba_role_privs where granted_role='DBA')
order by 1

STIGルールへの変更: デフォルト・ユーザーを追加しました。

8.1.10 DO0155

名前: Only authorized system accounts should have the SYSTEM tablespace specified as the default tablespace。

収集問合せ:

(select 'User '||username||' is using SYSTEM as temporary or default tablespace.' from dba_users
where (default_tablespace = 'SYSTEM' or temporary_tablespace = 'SYSTEM')
and username not in
('AURORA$JIS$UTILITY$','AURORA$ORB$UNAUTHENTICATED',
'DBSNMP','MDSYS','ORDPLUGINS','ORDSYS','OSE$HTTP$ADMIN',
'OUTLN','REPADMIN','SYS','SYSTEM','TRACESVR','MTSSYS','DIP', 'MGMT_VIEW'))

STIGルールへの変更: デフォルト・ユーザーを追加しました。

8.1.11 DO0231

名前: Application owner accounts should have a dedicated application tablespace。

収集問合せ:

select distinct tablespace_name||' tablespace used by '||owner||' is not a dedicated tablespace.' from (
select distinct owner, tablespace_name
from dba_tables
where owner not in
('SYS','SYSTEM','OUTLN','OLAPSYS','CTXSYS','WKSYS','ODM','ODM_MTR'
'MDSYS','ORDSYS','WMSYS','RMAN','XDB', 'APEX_030200', 'APPQOSSYS', 'DBSNMP',
'EXFSYS', 'FLOWS_FILES', 'ORDDATA', 'OWBSYS', 'SYSMAN', 'SCOTT')
and tablespace_name is not NULL
and (owner, table_name) not in
(select owner, table_name from dba_external_tables)
order by 1)

STIGルールへの変更: デフォルト・ユーザーを追加しました。

8.1.12 DO0250

名前: Fixed user and public database links should be authorized for use。

収集問合せ:

select 'Fixed user database link '||db_link||' found for '||owner value from dba_db_links
where db_link not in (select master from sys.dba_repcatlog)

コメント: dba_repcatalogにレコードがある場合のみ違反としてdb_linkを返すようにルール問合せを結合しました

8.1.13 DO0270

名前: A minimum of two Oracle redo log groups/files should be defined and configured to be stored on separate, archived physical disks or archived directories on a RAID device。

収集問合せ:

select 'redo_logs_count', log_count from
(select count(*) log_count from  V$LOG where members > 1)
where log_count < 2

コメント: 違反を取得するように、より厳しい問合せを使用しました。RAIDデバイスが使用されているか手動でチェックする必要があります。

8.1.14 DO0340

名前: Oracle application administration roles should be disabled if not required and authorized。

収集問合せ:

select 'Oracle Administration role '||granted_role||' granted to '||grantee||'.'
from dba_role_privs
where default_role='YES'
and granted_role in
(select grantee from dba_sys_privs where upper(privilege) like '%USER%')
and grantee not in
('DBA', 'SYS', 'SYSTEM', 'CTXSYS', 'DBA', 'IMP_FULL_DATABASE', 'DATAPUMP_IMP_FULL_DATABASE','MDSYS', 'SYS', 'WKSYS')
and grantee not in (select distinct owner from dba_tables)
and grantee not in
(select distinct username from dba_users where upper(account_status) like
'%LOCKED%')

STIGルールへの変更: デフォルト・ユーザーを追加しました。

8.1.15 DO0350

名前: Oracle system privileges should not be directly assigned to unauthorized accounts。

収集問合せ:

select 'User/Role '||grantee||' granted system privilege '||PRIVILEGE from dba_sys_privs
where privilege<>'CREATE SESSION' and grantee not in
('PUBLIC', 'AQ_ADMINISTRATOR_ROLE', 'AQ_USER_ROLE', 'CTXSYS',
'DBA', 'DELETE_CATALOG_ROLE', 'EXECUTE_CATALOG_ROLE',
'EXP_FULL_DATABASE', 'GATHER_SYSTEM_STATISTICS',
'HS_ADMIN_ROLE', 'IMP_FULL_DATABASE',
'LOGSTDBY_ADMINISTRATOR', 'MDSYS', 'ODM', 'OEM_MONITOR',
'OLAPSYS', 'ORDSYS', 'OUTLN', 'MTSSYS',
'RECOVERY_CATALOG_OWNER', 'SELECT_CATALOG_ROLE',
'SNMPAGENT', 'SYSTEM', 'WKSYS', 'WKUSER', 'WMSYS',
'WM_ADMIN_ROLE', 'XDB', 'ANONYMOUS', 'CONNECT', 'DBSNMP',
'JAVADEBUGPRIV', 'ODM_MTR', 'OLAP_DBA', 'ORDPLUGINS',
'RESOURCE', 'RMAN', 'SYS', 'WKPROXY', 'AURORA$JIS$UTILITY$',
'AURORA$ORB$UNAUTHENTICATED', 'OSE$HTTP$ADMIN',
'TIMESERIES_DBA', 'TIMESERIES_DEVELOPER', 'OLAP_USER', 'DATAPUMP_EXP_FULL_DATABASE',
'DATAPUMP_IMP_FULL_DATABASE', 'OEM_ADVISOR', 'OWB$CLIENT', 'SCHEDULER_ADMIN', 'SYSMAN')
and grantee not in
(select grantee from dba_role_privs where granted_role='DBA')
and grantee not in
(select username from dba_users where upper(account_status) like
'%LOCKED%') order by 1

STIGルールへの変更: デフォルトのユーザーおよびロールを追加しました

8.1.16 DO3536

名前: The IDLE_TIME profile parameter should be set for Oracle profiles IAW DoD policy。

収集問合せ:

select 'IDLE_TIME set to '||limit||' for profile '||profile||'.' from (
select profile, limit from DBA_PROFILES
where profile = 'DEFAULT'
and resource_name = 'IDLE_TIME')
where TO_NUMBER(DECODE (limit, 'UNLIMITED', 1000, limit)) > 15
UNION
select profile, limit from (
select profile, limit from DBA_PROFILES
where profile <> 'DEFAULT'
and resource_name = 'IDLE_TIME')
where TO_NUMBER(DECODE (limit, 'UNLIMITED', 1000, 'DEFAULT', (SELECT DECODE(limit, 'UNLIMITED', 1000, limit)
from DBA_PROFILES where resource_name='IDLE_TIME' and profile='DEFAULT'), limit))
> 60

コメント: 問合せを結合しました。制限のDEFAULT値を逆参照しました。

8.1.17 DO3609

名前: System privileges granted using the WITH ADMIN OPTION should not be granted to unauthorized user accounts。

収集問合せ:

select 'User '||grantee||' granted '||privilege||' privilege WITH ADMIN OPTION.'
from dba_sys_privs
where grantee not in
('SYS', 'SYSTEM', 'AQ_ADMINISTRATOR_ROLE', 'DBA',
'MDSYS', 'LBACSYS', 'SCHEDULER_ADMIN',
'WMSYS', 'APEX_030200', 'OWBSYS')
and admin_option = 'YES'
and grantee not in
(select grantee from dba_role_privs where granted_role = 'DBA') order by 1

STIGルールへの変更: デフォルトのユーザーおよびロールを追加しました

8.1.18 DO3689

名前: Object permissions granted to PUBLIC should be restricted。

収集問合せ:

select privilege||' on '||owner ||'.'|| table_name ||' is granted to PUBLIC.' from dba_tab_privs
where grantee = 'PUBLIC'
and owner not in
('SYS', 'CTXSYS', 'MDSYS', 'ODM', 'OLAPSYS', 'MTSSYS',
'ORDPLUGINS', 'ORDSYS', 'SYSTEM', 'WKSYS', 'WMSYS',
'XDB', 'LBACSYS', 'PERFSTAT', 'SYSMAN', 'DMSYS',
'EXFSYS','APEX_030200', 'DBSNMP', 'ORDDATA')

STIGルールへの変更: デフォルトのユーザーおよびロールを追加しました

8.2 STIGインストール・チェック

オラクル社は、次のSTIGインストール・チェック用のスクリプトを提供しています。

8.2.1 DG0009

名前: Access to DBMS software files and directories should not be granted to unauthorized users。

コメント: オラクル社によってスクリプトが提供されました

8.2.2 DG0012

名前: Database software directories including DBMS configuration files are stored in dedicated directories separate from the host OS and other applications。

コメント: オラクル社によってスクリプトが提供されました

8.2.3 DG0019

名前: Application software should be owned by a Software Application account。

コメント: オラクル社によってスクリプトが提供されました

8.2.4 DG0102

名前: DBMS processes or services should run under custom, dedicated OS accounts。

コメント: オラクル社によってスクリプトが提供されました

8.2.5 DG0152

名前: DBMS network communications should comply with PPS usage restrictions。

コメント: オラクル社によってスクリプトが提供されました

8.2.6 DG0179

名前: The DBMS warning banner should meet Department of Defense (DoD) policy requirements。

コメント: オラクル社によってスクリプトが提供されました

8.2.7 DO0120

名前: The Oracle software installation account should not be granted excessive host system privileges。

コメント: オラクル社によってスクリプトが提供されました

8.2.8 DO0145

名前: OS DBA group membership should be restricted to authorized accounts。

コメント: オラクル社によってスクリプトが提供されました

8.2.9 DO0286

名前: The Oracle INBOUND_CONNECT_TIMEOUT and SQLNET.INBOUND_CONNECT_TIMEOUT parameters should be set to a value greater than 0。

コメント: オラクル社によってスクリプトが提供されました

8.2.10 DO0287

名前: The Oracle SQLNET.EXPIRE_TIME parameter should be set to a value greater than 0。

コメント: オラクル社によってスクリプトが提供されました

8.2.11 DO6740

名前: The Oracle Listener ADMIN_RESTRICTIONS parameter if present should be set to ON。

コメント: オラクル社によってスクリプトが提供されました

8.2.12 DO6746

名前: The Oracle listener.ora file should specify IP addresses rather than host names to identify hosts。

コメント: オラクル社によってスクリプトが提供されました

8.2.13 DO6751

名前: The SQLNet SQLNET.ALLOWED_LOGON_VERSION parameter should be set to a value of 10 or higher。

コメント: オラクル社によってスクリプトが提供されました。

オラクル社の法律上の注意点について

コピーライトについて

Copyright © 1994-2015, Oracle and/or its affiliates.All rights reserved.

商標と登録商標について

OracleおよびJavaはOracle Corporationおよびその関連企業の登録商標です。その他の名称は、それぞれの所有者の商標または登録商標です。

Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXは、The Open Groupの登録商標です。

ライセンス制約の保証と結果的に生じる損害の免責

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

保証免責

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクル社までご連絡ください。

制限付権利

このソフトウェアまたは関連ドキュメントを、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供する場合は、次の通知が適用されます。

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations.As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs.No other rights are granted to the U.S. Government.

危険な用途への使用について

このソフトウェアもしくはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアもしくはハードウェアは、危険が伴うアプリケーション（人的傷害を発生させる可能性があるアプリケーションを含む）への用途を目的として開発されていません。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用する際、安全に使用するために、適切な安全装置、バックアップ、冗長性（redundancy）、その他の対策を講じることは使用者の責任となります。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、オラクル社およびその関連会社は一切の責任を負いかねます。

第三者のコンテンツ、製品、サービスに対する免責事項

このソフトウェアまたはハードウェア、そしてドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても一切の責任を負いかねます。

ドラフトのアルファ版およびベータ版ドキュメントについて

このドキュメントが試作版の場合:

このドキュメントは試作版であり、デモおよび暫定使用のみを目的としたものです。このソフトウェアを使用するハードウェアに限定するものではありません。オラクル社およびその関連会社は、このドキュメントに関して一切の責任を負わず、いかなる保証もいたしません。また、このドキュメントを使用したことによって損失、費用、あるいは損害が発生しても、一切の責任を負いかねます。