22 セキュリティ技術導入ガイド(STIG)コンプライアンス標準
セキュリティ技術導入ガイドについて
安全な環境を提供するというオラクル社の取組みに従って、Enterprise Managerは、コンプライアンス標準の形式での複数のセキュリティ技術導入ガイド(STIG)の導入をサポートしています。STIGは、国防総省(DOD)に指示されたセキュリティ要件へのコンプライアンスを確実にするために国防情報システム局(DISA)によって作成されたルール、チェックリストおよびその他のベスト・プラクティスのセットです。
表22-1 Oracle DatabaseおよびOracleクラスタ・データベースの最新のSTIG標準
データベースのバージョン | 最新のSTIGバージョン |
---|---|
19c |
STIG - バージョン2リリース7 STIG - バージョン2リリース6 |
12c |
STIG - バージョン2リリース7 STIG - バージョン2リリース6 |
11.2g |
STIG - バージョン2リリース3 STIG - バージョン1、リリース16 |
11g |
STIG - バージョン1、リリース16 STIG - バージョン8、リリース1.11 |
10g |
STIG - バージョン8、リリース1.11 |
STIGの詳細は、セキュリティ技術導入ガイド(STIG)のWebサイト(https://public.cyber.mil/stigs/
)を参照してください。
STIGコンプライアンス標準ターゲットの関連付け
データベース、WebLogicドメインがSTIGコンプライアンス標準またはその他のサポートされているターゲット・タイプを満たしているかどうかを判断するには、データベースまたはWebLogicドメイン・ターゲットを標準と関連付ける必要があります。
STIGコンプライアンス標準の違反の処理
モニタリング・テンプレート、構成コレクションおよびコンプライアンス間の関係:
WLSおよびOracle HTTP Serverのコンプライアンス標準のSTIGにおけるコンプライアンス標準ルールは、「リポジトリ・ルール」のタイプに該当します。つまり、これに該当する自動化されたルールは、各ルールがEnterprise Managerによって管理リポジトリ内に収集および保存された構成アイテムと照合されるようになります。
既定では、このWLSコンプライアンス標準のSTIGと比較評価する必要のあるWLS構成アイテムは、あらかじめ有効化されています。ただし、管理者は、ターゲットの「メトリックと収集設定」ページ、またはモニタリング・テンプレートによってWLS構成の収集を無効化することもできます。このような収集の無効化は、WLS 12cのSTIGでコンプライアンスを評価するEnterprise Managerの機能に悪影響を及ぼすこともあります。
STIGコンプライアンス標準を処理するオプションは4つあります。
STIGチェックの推奨に従って違反を修正
STIGチェックの推奨に従ってサポートされているターゲット・タイプ上のセキュリティ構成を修正することによって違反に対処します。
-
「エンタープライズ」メニューから「コンプライアンス」を選択し、「結果」を選択します。
-
STIGコンプライアンス標準の行を選択し、「違反の管理」をクリックします。
-
表のなかでルール違反の行を探し、右端の列の推奨される修正をノートにとります。
推奨に従って変更を加えた後、Enterprise ManagerでデータベースまたはWebLogicドメイン構成をリフレッシュします。たとえば、データベース・ターゲットについて考えてみます。
- データベース・ターゲットのホーム・ページに移動します。
- データベース・メニューから、「構成」、「最新収集」の順に選択します。
- 右側の「アクション」メニューから「リフレッシュ」を選択します。
- 「エンタープライズ」メニューから「コンプライアンス」を選択し、「結果」を選択します。データベース・ターゲットに違反が表示されなくなったことを確認します。
手動ルール違反のクリア
自動化できないチェックは、手動ルールとして実装されます。これらのチェックは、管理者がルール説明やSTIGガイドそのものに記載されている手順に従って実行する必要があります。
手動ルールを含むコンプライアンス標準が最初にターゲットに関連付けられると、各手動ルールによって1つの違反が生成されます。これにより、管理者はチェックの正常完了後に違反をクリアできるようになります。プロセス中、操作を実行しているユーザーおよび操作の説明が記録されます。また、ユーザーは有効期限を設定することもでき、この期限になると違反が再生成されます。これにより、コンプライアンスが定期的に再評価されます。
-
「エンタープライズ」メニューから「コンプライアンス」を選択し、「結果」を選択します。
-
STIGコンプライアンス標準の行を選択し、「違反の管理」をクリックします。
-
「手動ルール違反」タブを選択します。
-
1つ以上のルールを選択し、「違反のクリア」をクリックします。
-
理由および有効期限(オプション)を入力し、「OK」をクリックします。
違反の抑止
違反を抑止すると、結果およびコンプライアンス・スコアの計算から違反が削除されます。抑止されていても、抑止された違反が表示された管理ビューを使用してレポートを作成することはできます。
違反は永続的にも一時的にも抑止できるため、永続的な例外や猶予期間が可能になります。日付を入力するよう選択した場合、基礎となる条件が修正される結果として日付がクリアされないかぎり、違反はその日付に再表示されます。
- 「エンタープライズ」メニューから「コンプライアンス」を選択し、「結果」を選択します。
- STIGコンプライアンス標準の行を選択し、「違反の管理」をクリックします。
- 「抑止解除された違反」を選択します。
- 抑止する違反がリストされた行を選択し、「違反の抑止」ボタンをクリックします。
- 開いたダイアログで、「無期限」を選択するか、有効期限を選択します。抑止の理由を入力することもできます。「OK」をクリックします。
コンプライアンス標準および構成拡張のカスタマイズ
違反を検出するルールの意図は望ましいが、環境に合うようにそのルールの微調整が必要な場合があります。STIGコンプライアンス標準では、コンプライアンス標準の違反を評価する問合せを表示してカスタマイズすることができます。そのプロセスには次の作業が含まれます。
プロセスを示すために、データベース・ルールDG0116 DBMS privileged role assignments
の問合せを更新するシナリオを想定します。
構成拡張のカスタマイズ
STIG構成拡張をカスタマイズするには:
- 「エンタープライズ」メニューから「構成」を選択し、「構成拡張」を選択します。
- 適切なSTIG構成表の行(データベース・インスタンスまたはクラスタ・データベース)を選択し、「類似作成」ボタンをクリックします。
- 拡張に「カスタムSTIG構成」などの新しい名前を指定します。
- 「ファイルとコマンド」タブで、すべてのコマンド行を選択して「削除」をクリックします。
- 「SQL」タブで、ルール別名「DG0116 DBMS privileged role assignments」を探します。この上または下にある他のすべての行を削除します。
- DG0116の問合せを変更して、たとえば「カスタムDG0116 DBMS privileged role assignments」などに別名を変更します。
- 結果の確認: サンプル・ターゲットを選択して「プレビュー」をクリックします。
- 違反がもう表示されない場合、「カスタムSTIG構成拡張」を保存します。
コンプライアンス標準ルールのカスタマイズ
コンプライアンス標準ルールをカスタマイズするには:
- 「エンタープライズ」メニューから「コンプライアンス」を選択し、「ライブラリ」を選択します。
- 「コンプライアンス標準ルール」タブを選択して、エージェント側ルール・タイプのルール
DG0116 DBMS privileged role assignments
を検索します。 - ルールを選択して「類似作成」ボタンをクリックします。
- たとえば「カスタムDG0116 DBMS privileged role assignments」などに名前を変更します。「続行」をクリックします。
- チェック定義ページで、新しいSTIG構成拡張(カスタムSTIG構成拡張)および別名(カスタムDG0116 DBMS privileged role assignments)を選択するために拡大鏡アイコンをクリックします。
- カスタム構成拡張および別名を選択して「OK」をクリックし、「次」をクリックしてテスト・ページに移動します。
- ターゲットを選択してコンプライアンス・ルールをテストします。
- 「次」、「終了」の順にクリックして、新しいコンプライアンス・ルールを作成します。
カスタマイズしたルールを含むコンプライアンス標準の作成
新しいルールでコンプライアンス標準を作成するには:
- 「エンタープライズ」メニューから「コンプライアンス」を選択し、「ライブラリ」を選択します。
- 「コンプライアンス標準」タブを選択し、エージェント側ルール・タイプのデータベース・インスタンス用のSTIGを検索します。
- コンプライアンス標準を選択して「類似作成」ボタンをクリックします。
- 名前を変更します(たとえば、「カスタム・セキュリティ技術導入ガイド」など)。「続行」をクリックします。
- 左側のペインでOracle Databaseチェック・プロシージャ・フォルダを開き、「DG0116 DBMS privileged role assignments」までスクロール・ダウンします。
- ルールを右クリックしてポップアップ・メニューから「ルール参照の削除」を選択します。「OK」をクリックして削除を確認します。
- Oracle Databaseチェック・プロシージャ・フォルダを右クリックして、ポップアップ・メニューから「ルールの追加」を選択します。
- 表のなかで「カスタムDG0116 DBMS privileged role assignments」の行を探し、「OK」をクリックします。
- コンプライアンス標準の類似作成ページで、「保存」ボタンをクリックして新しいコンプライアンス標準を作成します。
カスタム・コンプライアンス標準は、ターゲット・データベースと関連付けできるようになりました。詳細は、「STIGコンプライアンス標準ターゲットの関連付け」を参照してください。
STIGコンプライアンス標準ルール例外
Enterprise Managerのセキュリティ技術導入ガイドの実装では、いくつかの例外があります。次の項に例外を示します。
Windowsデータベース
Enterprise ManagerのOracle Database用セキュリティ技術導入ガイドの実装では、Windowsデータベースを完全にはサポートしていません。次のルールは、Windowsデータベースでは違反をレポートしません。
- DG0009 DBMSソフトウェア・ライブラリの権限
- DG0019 DBMSソフトウェアの所有権
- DG0012 DBMSソフトウェアの記憶域の場所
- DG0102 DBMSカスタム・アカウント専用のサービス
- DO0120 Oracleアカウント・ホスト・システムの権限の処理
- DO0145 Oracle SYSDBA OSグループ・メンバーシップ
- DG0152 DBMSネットワーク・ポート、プロトコルおよびサービス(PPS)の使用
- DG0179 DBMS警告バナー
- DO0286 Oracle接続タイムアウト・パラメータ
- DO0287 Oracle SQLNET.EXPIRE_TIMEパラメータ
- DO6740 OracleリスナーADMIN_RESTRICTIONSパラメータ
- DO6746 Oracleリスナーホスト参照
- DO6751 SQLNET.ALLOWED_LOGON_VERSION
Oracle WebLogicドメイン
Enterprise Managerのセキュリティ技術導入ガイド(STIGバージョン1.1)およびOracle WebLogic Server 12c用セキュリティ技術導入ガイド(STIGバージョン1.2)の実装は、完全には自動化されていません。
次のルールは、常に違反をレポートし、手動で検証する必要があります。
- WBLC-01-000013 WebLogicセキュリティ関連情報の監査
- WBLC-01-000014 WebLogicネットワーク・プロトコルの無効化
- WBLC-01-000018 WebLogicアカウント作成の監査
- WBLC-01-000019 WebLogicアカウント変更の監査
- WBLC-01-000030 WebLogic優先アクティビティのログ
- WBLC-01-000032 WebLogic無効な連続アクセス試行
- WBLC-01-000033 WebLogic無効なユーザー・アクセス施行
- WBLC-01-000034 WebLogicユーザー・アカウントのロック
- WBLC-02-000069 WebLogic DoD選択監査レコードのログ
- WBLC-02-000073 WebLogic HTTPDイベントのログ
- WBLC-02-000074 WebLogic JVMイベントのログ
- WBLC-02-000075 WebLogic重大度レベルのログ
- WBLC-02-000083 WebLogic監査失敗イベントのアラート
- WBLC-02-000084 WebLogic監査処理失敗のアラート
- WBLC-02-000086 WebLogic監査処理失敗の通知
- WBLC-02-000093 WebLogic監査レコードのシステム・クロックの使用
- WBLC-02-000094 WebLogicシステム・クロックの同期
- WBLC-02-000095 WebLogic不正な監査情報読取りアクセスの保護
- WBLC-02-000098 WebLogic不正な監査ツール・アクセスの保護
- WBLC-02-000099 WebLogic不正な監査ツール変更の保護
- WBLC-02-000100 WebLogic不正な監査ツール削除の保護
- WBLC-03-000125 WebLogicソフトウェア・ライブラリの権限の制限
- WBLC-03-000127 WebLogic必要な機能の有効化
- WBLC-03-000128 WebLogic不正なアイテムの使用の制限
- WBLC-05-000150 WebLogicユーザーの識別および認証
- WBLC-05-000153 WebLogicユーザーの個別の認証
- WBLC-05-000168 WebLogic認証用のパスワードの暗号化
- WBLC-05-000169 WebLogic認証用のLDAP暗号化
- WBLC-05-000174 WebLogicユーザー・アカウントのPKIベース認証
- WBLC-05-000176 WebLogic構成のFIPS準拠の暗号化
- WBLC-05-000177 WebLogicユーザーおよびプロセスのFIPS準拠の暗号化
- WBLC-08-000214 WebLogicコンパートメント化された機密のNSAで承認された暗号化
- WBLC-08-000218 WebLogicパブリック情報の保護
- WBLC-08-000222 WebLogicホスト・アプリケーションの分離
- WBLC-08-000236 WebLogicサービス拒否
- WBLC-08-000237 WebLogicリソースの優先度付け
- WBLC-08-000238 WebLogic障害の保護
- WBLC-09-000252 WebLogicセキュリティ関連エラー
- WBLC-09-000253 WebLogicメッセージ修正処理のログ
- WBLC-09-000254 WebLogicメッセージ制限アクセスのログ
- WBLC-09-000257 WebLogic担当者の対応の通知
- WBLC-10-000270 WebLogicサブシステム障害通知の監査
- WBLC-10-000271 WebLogic集中管理されたエンタープライズ・ツール
- WBLC-10-000272 WebLogic多元的なユーザー認証
Oracle HTTP Server
Enterprise ManagerのOracle HTTP Server 12.1.3用セキュリティ技術導入ガイド(STIGバージョン1)の実装は、完全には自動化されていません。
次のルールは、常に違反をレポートし、手動で検証する必要があります。
- OH12-1X-000225 Webコンテンツ・ディレクトリ・ツリーでのシンボリック・リンクの不使用
- OH12-1X-000226 OHSセキュア管理
- OH12-1X-000266 OHSアカウント検証
Enterprise ManagerのOHS 12.1.3用STIGバージョン1のコンプライアンス標準には、DISAから公開されたOHS 12.1.3用STIGバージョン1のCAT Iレベル・ルールが含まれます。CAT IIおよびCAT IIIルールはコンプライアンス標準に含まれていないため、Enterprise Manager Cloud Controlの外部で追跡する必要があります。DISAが公開したOHS 12.1.3用STIGバージョン1のすべてのルールのリストは、https://public.cyber.mil/stigs/downloads/
を参照してください。
Oracle Database STIGコンプライアンス標準のガイドからの変更点
Enterprise ManagerのOracle Database 11g STIGおよび12c STIGの実装は、チェックリストとは少し異なっています。変更された点は、エラー修正、チェックの機能強化(追加のデフォルト・ユーザー)、手動チェックを指定できる自動スクリプトなどです。変更内容を確認および理解して、それらを環境で受容できるか確認することが重要です。受容できない場合は、要件に合うように前述のカスタマイズ手順に従ってください。これらの変更の詳細は、「Oracleで拡張されたSTIGルール」を参照してください。
ノート:
Oracle WebLogic Server 12c用セキュリティ技術導入ガイド(STIGバージョン1.1)、Oracle WebLogic Server 12c用セキュリティ技術導入ガイド(STIGバージョン1.2)、およびOracle HTTP Server 12.1.3用セキュリティ技術導入ガイド(STIGバージョン1)のコンプライアンス標準に変更や逸脱はありません。
表22-2 Oracle Database 12c、バージョン1、リリース12 STIGとの相違点
STIG ID | Oracleの変更内容 |
---|---|
SV-75899r1_rule |
従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。監査データが少なくとも1年間保持されているか手動でチェックする必要があります。 |
SV-75903r1_rule |
インスタンス名にバージョン番号が含まれているかをチェックするために、さらに詳細な問合せを用意しました。 |
SV-75905r1_rule |
dba_repcatalogにレコードがある場合にのみ違反としてdb_linkを返すようにルール問合せを結合しました。 |
SV-75907r1_rule |
各ファイルが別々のRAIDデバイスにあるか手動でチェックする必要があります。 |
SV-75909r1_rule |
違反を取得するためのより厳しい問合せを使用しました。RAIDデバイスが使用されているか手動でチェックする必要があります。 |
SV-75923r1_rule |
デフォルトのユーザー/ロールを問合せに追加しました - 'APEX_030200'、'APEX_040200'、'DVSYS'、'SYSKM'および'DV_ACCTMGR'。 |
SV-75927r1_rule |
デフォルトのユーザー/ロールを問合せに追加しました - 'DBA'、'DV_ACCTMGR'、'DV_OWNER'、'RECOVERY_CATALOG_OWNER'、'SPATIAL_CSW_ADMIN_USR'および'SPATIAL_WFS_ADMIN_USR'。 |
SV-75931r2_rule |
オラクル社がスクリプトを提供しました。 |
SV-75937r2_rule |
オラクル社がスクリプトを提供しました。 |
SV-75945r1_rule |
必須ではないアプリケーション・ユーザー権限の割当てを分析するために権限分析ポリシーが定義/実行されているかをチェックする問合せを追加しました。 |
SV-75947r1_rule |
従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。 |
SV-75951r1_rule |
デモ・アカウント - 'HR'、'OE'、'PM'、'IX'、'SH'および'SCOTT'を含めるように問合せを変更しました。 |
SV-75953r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-75957r1_rule |
リストにないデフォルトのユーザー/ロールを追加するように問合せを変更しました。 |
SV-76001r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76017r1_rule |
ルール問合せを結合しました。 |
SV-76021r2_rule |
オラクル社がスクリプトを提供しました。 |
SV-76023r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76025r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76035r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76037r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76039r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76041r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76043r1_rule |
従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。セキュリティ情報にアクセスしているリモート・セッションが監査されているか手動でチェックする必要があります。 |
SV-76045r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76051r1_rule |
オラクル社が問合せを追加しました。 |
SV-76053r1_rule |
オラクル社が問合せを追加しました。 |
SV-76055r1_rule |
従来システムまたは統合システムを使用して監査が有効化されているか、およびアカウントの作成が監査されているかをチェックするためにルール問合せを結合しました。 |
SV-76059r1_rule |
従来システムまたは統合システムを使用して監査が有効化されているか、およびアカウントの変更が監査されているかをチェックするためにルール問合せを結合しました。 |
SV-76061r1_rule |
従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。アカウントの無効化が監査されているか手動でチェックする必要があります。 |
SV-76063r1_rule |
従来システムまたは統合システムを使用して監査が有効化されているか、およびアカウントの終了が監査されているかをチェックするためにルール問合せを結合しました。 |
SV-76081r1_rule |
オラクル社が問合せを追加しました。 |
SV-76085r1_rule |
従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。特権アカウントのすべての使用が監査されているか手動でチェックする必要があります。 |
SV-76093r1_rule |
オラクル社が問合せを追加しました。 |
SV-76095r1_rule |
オラクル社が問合せを追加しました。 |
SV-76097r1_rule |
オラクル社が問合せを追加しました。 |
SV-76099r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76101r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76103r1_rule |
オラクル社が問合せを追加しました。 |
SV-76105r1_rule |
オラクル社が問合せを追加しました。 |
SV-76111r1_rule |
従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。 |
SV-76115r1_rule |
従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。 |
SV-76117r1_rule |
従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。 |
SV-76121r1_rule |
従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。 |
SV-76123r1_rule |
従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。 |
SV-76125r1_rule |
従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。 |
SV-76127r1_rule |
従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。 |
SV-76129r1_rule |
従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。 |
SV-76131r1_rule |
従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。 |
SV-76143r2_rule |
オラクル社が問合せを追加しました。 |
SV-76145r1_rule |
オラクル社が問合せを追加しました。 |
SV-76147r1_rule |
オラクル社が問合せを追加しました。 |
SV-76157r1_rule |
オラクル社が問合せを追加しました。 |
SV-76159r1_rule |
監査レコードが保護されているかをチェックするためにルール問合せを結合しました。 |
SV-76161r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76163r1_rule |
オラクル社が問合せを追加しました。 |
SV-76167r1_rule |
オラクル社が問合せを追加しました。 |
SV-76173r1_rule |
追加されている特殊文字が原因で問合せが正常に実行できないため、手動で操作するようにしました。 |
SV-76175r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76181r1_rule |
オラクル社が問合せを追加しました。 |
SV-76193r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76195r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76197r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76199r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76203r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76205r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76207r1_rule |
オラクル社が問合せを追加しました。 |
SV-76209r1_rule |
オラクル社が問合せを追加しました。 |
SV-76211r2_rule |
オラクル社が問合せを追加しました。 |
SV-76213r1_rule |
オラクル社が問合せを追加しました。 |
SV-76215r1_rule |
オラクル社が問合せを追加しました。 |
SV-76217r1_rule |
オラクル社が問合せを追加しました。 |
SV-76219r1_rule |
オラクル社が問合せを追加しました。 |
SV-76221r1_rule |
オラクル社が問合せを追加しました。 |
SV-76229r1_rule |
オラクル社が問合せを追加しました。 |
SV-76237r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76245r1_rule |
オラクル社が問合せを追加しました。 |
SV-76247r2_rule |
オラクル社が問合せを追加しました。 |
SV-76249r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76251r1_rule |
オラクル社が問合せを追加しました。 |
SV-76253r1_rule |
オラクル社が問合せを追加しました。 |
SV-76255r1_rule |
オラクル社が問合せを追加しました。 |
SV-76257r1_rule |
オラクル社が問合せを追加しました。 |
SV-76261r1_rule |
'SYSTEM'、'SYSAUX'、'UD1'、'TEMP'、'SYSEXT'および'UNDOTBS'を除外するように問合せを変更しました。 |
SV-76263r1_rule |
'SYSTEM'、'SYSAUX'、'UD1'、'TEMP'、'SYSEXT'および'UNDOTBS'を除外するように問合せを変更しました。 |
SV-76275r1_rule |
オラクル社が問合せを追加しました。 |
SV-76287r2_rule |
従来システムまたは統合システムを使用して監査が有効化されているか、およびアカウントの作成が監査されているかをチェックするために結合しました。通知されているか手動でチェックする必要があります。 |
SV-76289r2_rule |
従来システムまたは統合システムを使用して監査が有効化されているか、およびアカウントの変更が監査されているかをチェックするために結合しました。通知されたか手動でチェックする必要があります。 |
SV-76291r2_rule |
従来システムまたは統合システムを使用して監査が有効化されているか、およびアカウントの無効化が監査されているかをチェックするために結合しました。通知されたか手動でチェックする必要があります。 |
SV-76293r2_rule |
従来システムまたは統合システムを使用して監査が有効化されているか、およびアカウントの終了が監査されているかをチェックするために結合しました。通知されたか手動でチェックする必要があります。 |
SV-76299r1_rule |
oracleのデフォルトのユーザー/ロールを除外するように問合せを変更しました。 |
SV-76301r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76307r1_rule |
オラクル社が問合せを追加しました。 |
SV-76309r1_rule |
オラクル社が問合せを追加しました。 |
SV-76339r1_rule |
オラクル社が問合せを追加しました。 |
SV-76365r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76377r1_rule |
オラクル社が問合せを追加しました。 |
SV-76455r1_rule |
オラクル社がスクリプトを提供しました。 |
SV-76457r1_rule |
オラクル社が問合せを追加しました。 |
表22-3 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 |
オラクル社がスクリプトを提供しました。 |
表22-4 Oracle Database 11gR2、V1、リリース14、15 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つに結合しました。次の場合、問合せで違反が発生します。
|
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を使用します。 |
Oracle WebLogic STIGコンプライアンス標準
Enterprise ManagerのOracle WebLogic Server 12c用セキュリティ技術導入ガイド(STIGバージョン1.1)およびOracle WebLogic Server 12c用セキュリティ技術導入ガイド(STIGバージョン1.2)の実装には、自動化されたルールが含まれます。これらのルールでは、WebLogic構成設定を確認し、違反を生成します。実装されたルールを確認および理解して、それらを環境で受容できるか確認することが重要です。
Enterprise ManagerのOHS 12.1.3用STIGバージョン1のコンプライアンス標準には、DISAから公開されたOHS 12.1.3用STIGバージョン1のCAT Iレベル・ルールが含まれます。CAT IIおよびCAT IIIルールはコンプライアンス標準に含まれていないため、Enterprise Manager Cloud Controlの外部で追跡する必要があります。DISAが公開したOHS 12.1.3用STIGバージョン1のすべてのルールのリストは、https://public.cyber.mil/stigs/downloads/
を参照してください。
- WBLC-01-000009 WebLogicリモート管理セッションの暗号
- WBLC-01-000010 WebLogicリモート・セッションの暗号化
- WBLC-01-000011 WebLogicリモート・セッションのモニターおよび制御
- WBLC-02-000062 WebLogic特定のユーザー・アクションのログ
- WBLC-02-000065 WebLogic複数のコンポーネントの監査レコードのログ
- WBLC-02-000076 WebLogicイベント時間のログ
- WBLC-02-000077 WebLogicイベント原因のログ
- WBLC-02-000078 WebLogicプロセス・ソースのログ
- WBLC-02-000079 WebLogic結果インジケータのログ
- WBLC-02-000080 WebLogicアイデンティティ情報のログ
- WBLC-02-000081 WebLogic監査レコード・コンテンツのログ
- WBLC-03-000129 WebLogicプログラム実行の防止
- WBLC-05-000160 WebLogicパスワードで使用する最小パスワード長
- WBLC-05-000162 WebLogicパスワードで使用する大文字
- WBLC-05-000163 WebLogicパスワードで使用する小文字
- WBLC-05-000164 WebLogicパスワードで使用する数字
- WBLC-05-000165 WebLogicパスワードで使用する特殊文字
- WBLC-05-000172 WebLogicトラスト・アンカーを使用したPKIベース認証
- WBLC-06-000190 WebLogic暗号化メンテナンスおよび診断通信
- WBLC-06-000191 WebLogicセキュアなメンテナンスおよび診断セッション
- WBLC-08-000210 WebLogicセッションの非アクティブのタイムアウト
- WBLC-08-000211 WebLogic信頼通信パス
- WBLC-08-000223 WebLogicセッションの認証
- WBLC-08-000224 WebLogicセッションの脆弱性
- WBLC-08-000229 WebLogic安全でない状態
- WBLC-08-000231 WebLogicアプリケーションの機密性
- WBLC-08-000235 WebLogicアプリケーションのデータ整合性
- WBLC-08-000239 WebLogicセキュアな暗号化メカニズム
Oracle HTTP Server STIGコンプライアンス標準
Enterprise ManagerのOracle HTTP Server 12.1.3用セキュリティ技術導入ガイド(STIGバージョン1)の実装には、自動化されたルールが含まれます。これらのルールはOracle HTTP Server構成設定を確認し、違反を生成します。実装されたルールを確認および理解して、それらを環境で受容できるか確認することが重要です。
- OH12-1X-000007 LoadModule ossl_moduleディレクティブの有効化によるリモート接続の暗号化
- OH12-1X-000008 SSLFIPSディレクティブの有効化によるリモート接続の暗号化
- OH12-1X-000010 SSLCipherSuiteディレクティブの有効化によるリモート接続の暗号化
- OH12-1X-000011 LoadModule ossl_moduleディレクティブの有効化によるリモート・セッションの整合性の保護
- OH12-1X-000012 SSLFIPSディレクティブの有効化によるリモート・セッションの整合性の保護
- OH12-1X-000013 SSLEngine、SSLProtocolおよびSSLWalletの有効化と構成によるリモート・セッションの整合性の保護
- OH12-1X-000014 SSLCipherSuiteディレクティブの有効化によるリモート・セッションの整合性の保護
- OH12-1X-000211 ベンダーがサポートするOHSバージョン
- OH12-1X-000234 mod_plsqlディレクティブのPlsqlDatabasePasswordの不明瞭化
- OH12-1X-000240 LoadModule ossl_moduleディレクティブの有効化による送信時のパスワードの暗号化
- OH12-1X-000241 SSLFIPSディレクティブの有効化による送信時のパスワードの暗号化
- OH12-1X-000242 SSLEngine、SSLProtocolおよびSSLWalletの有効化と構成によるパスワードの暗号化
- OH12-1X-000243 SSLCipherSuiteディレクティブの有効化による送信時のパスワードの暗号化
- OH12-1X-000294 LoadModule ossl_moduleディレクティブの有効化による暗号化保護の実装
- OH12-1X-000295 SSLFIPSディレクティブの有効化による暗号化保護の実装
- OH12-1X-000296 SSLEngine、SSLProtocolおよびSSLWalletの有効化と構成による暗号化保護の実装
- OH12-1X-000297 SSLCipherSuiteディレクティブの有効化による暗号化保護の実装
- OH12-1X-000308 LoadModule ossl_moduleディレクティブの有効化による無許可な情報公開の防止
- OH12-1X-000309 SSLFIPSの有効化による無許可な情報公開の防止
- OH12-1X-000310 SSLEngine、SSLProtocolおよびSSLWalletの有効化と構成による無許可な情報公開の防止。
- OH12-1X-000311 SSLCipherSuiteディレクティブの有効化による送信時の無許可な情報公開の防止
Oracleによって拡張されたSTIGルール
Oracle 12c Database STIGの変更点
次のSTIGデータベース・ルールはオラクル社によってOracle 12c Database用に強化されています。収集問合せのBoldのテキストは、変更箇所を示しています。
SV-75899r1_rule
説明: 監査証跡データは少なくとも1年間保持されている必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE WHEN ((SELECT count(*) from V$OPTION WHERE PARAMETER='Unified Auditing' AND VALUE='FALSE')=1) THEN (SELECT name||' parameter is set to '||value||'.' value from v$parameter where name='audit_trail' and value='NONE') END AS VALUE FROM DUAL) WHERE VALUE IS NOT NULL
STIGルールへの変更: 従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。監査データが少なくとも1年間保持されているか手動でチェックする必要があります。
SV-75903r1_rule
説明: Oracleのインスタンス名にOracleのバージョン番号を含めないでください。
自動化ロジック:
select 'Instance name contain version number' from v$instance where instance_name LIKE '%12%';
STIGルールへの変更: インスタンス名にバージョン番号が含まれているかをチェックするために、さらに詳細な問合せを用意しました。
SV-75905r1_rule
説明: 固定ユーザー・リンクとパブリック・データベース・リンクは、使用を認可されている必要があります。
自動化ロジック:
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)
STIGルールへの変更: dba_repcatalogにレコードがある場合のみ違反としてdb_linkを返すようにルール問合せを結合しました。
SV-75907r1_rule
説明: RAIDデバイス上の別々のアーカイブ済物理ディスクまたはアーカイブ済ディレクトリに格納するには、最低2個のOracle制御ファイルが定義および構成されている必要があります。
自動化ロジック:
select 'A minimum of two oracle control files must be defined' value from v$controlfile having count(*) < 2
STIGルールへの変更: 各ファイルが別々のRAIDデバイスにあるか手動でチェックする必要があります。
SV-75909r1_rule
説明: RAIDデバイス上の別々のアーカイブ済物理ディスクまたはアーカイブ済ディレクトリに格納するには、最低2個のOracle REDOログ・グループまたはファイルが定義および構成されている必要があります。
自動化ロジック:
select 'A minimum of two Oracle redo log groups/files must be defined ' value from v$LOG where members > 1 having count(*) < 2
STIGルールへの変更: 違反を取得するためのより厳しい問合せを使用しました。RAIDデバイスが使用されているか手動でチェックする必要があります。
SV-75923r1_rule
説明: WITH ADMIN OPTIONを使用して付与されたシステム権限は未認可のユーザーに付与できません。
自動化ロジック:
select 'User '|| grantee||' granted system privilege ' ||privilege ||' WITH ADMIN option' value from dba_sys_privs
where grantee not in
('SYS', 'SYSTEM', 'AQ_ADMINISTRATOR_ROLE', 'DBA',
'MDSYS', 'LBACSYS', 'SCHEDULER_ADMIN',
'WMSYS', 'APEX_030200', 'APEX_040200','DVSYS','SYSKM','DV_ACCTMGR')
and admin_option = 'YES'
and grantee not in
(select grantee from dba_role_privs where granted_role = 'DBA')
STIGルールへの変更: デフォルトのユーザー/ロールを問合せに追加しました - 'APEX_030200'、'APEX_040200'、'DVSYS'、'SYSKM'および'DV_ACCTMGR'。
SV-75927r1_rule
説明: WITH ADMIN OPTIONを使用して付与されたOracleロールは未認可のユーザーに付与できません。
自動化ロジック:
select 'Role ' ||grantee||' granted '||granted_role||' WITH ADMIN OPTION' value from dba_role_privs
where grantee not in
('ANONYMOUS','CTXSTS','EXFSYS','LBACSYS','MDSYS','OLAPSYS','OEDDATA','OWBSYS','ORDPLUGINS','ORDSYS','OUTLN','SI_INFORMTN_SCHEMA','WK_TEST','WK_SYS','WKPROXY','WMSYS','XDB','DBSNMP','MGMT_VIEW','SYS','SYSMAN','SYSTEM','DBA','DV_ACCTMGR','DV_OWNER','RECOVERY_CATALOG_OWNER','SPATIAL_CSW_ADMIN_USR','SPATIAL_WFS_ADMIN_USR')
and admin_option = 'YES'
and grantee not in
(select distinct owner from dba_objects)
and grantee not in
(select grantee from dba_role_privs
where granted_role = 'DBA')
order by grantee
STIGルールへの変更: デフォルトのユーザー/ロールを問合せに追加しました - 'DBA'、'DV_ACCTMGR'、'DV_OWNER'、'RECOVERY_CATALOG_OWNER'、'SPATIAL_CSW_ADMIN_USR'および'SPATIAL_WFS_ADMIN_USR'。
SV-75931r2_rule
説明: 管理認証用にリスナーを構成する必要があります。
自動化ロジック:
perl %scriptsDir%/lsnrSecStatus.pl {OracleHome} {MachineName} {Port} {Protocol}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-75937r2_rule
説明: 中間層のWebおよびアプリケーション・システムによる、DMZまたは外部ネットワークからOracle DBMSへの接続は暗号化が必要です。
自動化ロジック:
perl %scriptsDir%/encryptedCommCheck.pl {OracleHome}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-75945r1_rule
説明: アプリケーション・ユーザーの権限割当てを毎月またはさらに頻繁に確認して、最小限の権限およびドキュメント化ポリシーでコンプライアンスを確保する必要があります。
自動化ロジック:
select 'No privilege analysis policy is defined/run to analyze unrequired application user privilege assignment' value from SYS.DBA_UNUSED_SYSPRIVS having count(*)=0
STIGルールへの変更: 必須ではないアプリケーション・ユーザー権限の割当てを分析するために権限分析ポリシーが定義/実行されているかをチェックする問合せを追加しました。
SV-75947r1_rule
説明: 監査証跡データを毎日またはさらに頻繁に確認する必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE WHEN ((SELECT count(*) from SYS.V$OPTION WHERE PARAMETER='Unified Auditing' AND VALUE='FALSE')=1) THEN (SELECT name||' parameter is set to '||value||'.' value from sys.v$parameter where name='audit_trail' and value='NONE') END AS VALUE FROM DUAL) WHERE VALUE IS NOT NULL
STIGルールへの変更: 従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。
SV-75953r1_rule
説明: LOG_ARCHIVE_DEST*パラメータに割り当てられたディレクトリは、不正なアクセスから保護する必要があります。
自動化ロジック:
perl %scriptsDir%/logArchiveDestPerm.pl {OracleHome} {MachineName} {Port} {Protocol} {SID} {UserName} {password} {Role}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-75957r1_rule
説明: アプリケーション・オブジェクトの所有者アカウントは、インストールまたはメンテナンス処理が実行されないときは無効化する必要があります。
自動化ロジック:
select distinct 'Application object owner account '||owner||' found' value from dba_objects, dba_users 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', 'TSMSYS','WK_TEST','WKPROXY','WKSYS','WKUSER','WMSYS','XDB', 'HR', 'OE', 'PM', 'IX', 'SH','OJVMSYS','ORDDATA','APPQOSSYS','ORACLE_OCM','SCOTT','APEX_040200','AUDSYS','GSMADMIN_INTERNAL','FLOWS_FILES') and owner in (select distinct owner from dba_objects where object_type <> 'SYNONYM') and owner = username and upper(account_status) not like '%LOCKED%'
STIGルールへの変更: リストにないデフォルトのユーザー/ロールを追加するように問合せを変更しました。
SV-76001r1_rule
説明: DBMSソフトウェア・ファイルおよびディレクトリへのアクセス権限は未認可ユーザーに付与できません。
自動化ロジック:
perl %scriptsDir%/umaskCheck.pl {OracleHome} 022
STIGルールへの変更: リストにないデフォルトのユーザー/ロールを追加するように問合せを変更しました。
SV-76017r1_rule
説明: DBMSセキュリティ・ラベルへの変更は、監査する必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE UPPER(value) WHEN 'FALSE' THEN (SELECT CASE UPPER(value) WHEN 'NONE' THEN name||' parameter is set to '||value||'.' ELSE (SELECT 'Changes to DBMS security labels must be audited.' value from dba_sa_audit_options having count(*)=0) END AS VALUE FROM v$parameter where name='audit_trail' ) END AS value FROM v$option WHERE parameter ='Unified Auditing') where VALUE IS NOT NULL;
STIGルールへの変更: ルール問合せを結合しました。
SV-76021r2_rule
説明: DIAGNOSTIC_DESTパラメータに割り当てられたディレクトリの下の/diagサブディレクトリは、不正なアクセスから保護する必要があります。
自動化ロジック:
perl %scriptsDir%/diagDestPerm.pl {OracleHome} {MachineName} {Port} {Protocol} {SID} {UserName} {password} {Role}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76023r1_rule
説明: リモート管理は、Oracle Connection Managerに対して無効化する必要があります。
自動化ロジック:
perl %scriptsDir%/remoteAdminCheck.pl {OracleHome}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76025r1_rule
説明: ネットワーク・クライアントの接続は、サポートされているバージョンのみに制限する必要があります。
自動化ロジック:
perl %scriptsDir%/allowedLogonVersion.pl {OracleHome} 11
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76035r1_rule
説明: DBMSは、送信データが別の物理的な手段で保護されていないかぎり、暗号メカニズムを採用して送信中の情報の不正な開示を避ける必要があります。
自動化ロジック:
perl %scriptsDir%/encryptionCheck.pl {OracleHome}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76037r1_rule
説明: DBMSは、認証データをリモート・アクセス・セッション用に渡す際に承認された暗号を利用する必要があります。
自動化ロジック:
perl %scriptsDir%/encryptionCheck.pl {OracleHome}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76039r1_rule
説明: リモート・アクセス機能を提供しているDBMSは、組織定義の暗号化を利用してリモート・アクセス・セッション上で渡されるデータの機密性を保護する必要があります。
自動化ロジック:
perl %scriptsDir%/encryptionCheck.pl {OracleHome}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76041r1_rule
説明: リモート・アクセス機能を提供しているDBMSは、承認された暗号化を利用してリモート・アクセス・セッションの整合性を保護する必要があります。
自動化ロジック:
perl %scriptsDir%/encryptionCheck.pl {OracleHome}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76043r1_rule
説明: DBMSは、組織定義のセキュリティ機能のリストおよびセキュリティ関連情報が確実に監査されるようにする必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE WHEN ((SELECT count(*) from SYS.V$OPTION WHERE PARAMETER='Unified Auditing' AND VALUE='FALSE')=1) THEN (SELECT name||' parameter is set to '||value||'.' value from sys.v$parameter where name='audit_trail' and value='NONE') END AS VALUE FROM DUAL) WHERE VALUE IS NOT NULL
STIGルールへの変更: 従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。セキュリティ情報にアクセスしているリモート・セッションが監査されているか手動でチェックする必要があります。
SV-76045r1_rule
説明: DBMSは、組織により非セキュアと見なされているネットワーク・プロトコルの無効化をサポートする必要があります。
自動化ロジック:
perl %scriptsDir%/secureProtocolCheck.pl {Protocol}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76051r1_rule
説明: DBMSは、一時的または緊急のアカウントとして指定されたアカウントを組織定義の期間後に自動的に終了するメカニズムを提供する必要があります。
自動化ロジック:
select 'User '||u.username||' is assigned profile '||p.profile||' with PASSWORD_LIFE_TIME='||p.limit||'.' value from dba_profiles p, dba_users u, (select limit as def_pwd_life_tm from dba_profiles where profile = 'DEFAULT' and resource_name = 'PASSWORD_LIFE_TIME') where p.resource_name = 'PASSWORD_LIFE_TIME' and ((replace(p.limit, 'DEFAULT', def_pwd_life_tm) in ('UNLIMITED', 'NULL')) or (lpad(replace(p.limit, 'DEFAULT', def_pwd_life_tm),40,'0') > lpad('35',40,'0'))) AND u.profile = p.profile
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76053r1_rule
説明: DBMSは、アカウントの35日間の非アクティブ期間後に自動的にアカウントを無効化する必要があります。
自動化ロジック:
select 'User '||u.username||' is assigned profile '||p.profile||' with PASSWORD_LIFE_TIME='||p.limit||'.' value from dba_profiles p, dba_users u, (select limit as def_pwd_life_tm from dba_profiles where profile = 'DEFAULT' and resource_name = 'PASSWORD_LIFE_TIME') where p.resource_name = 'PASSWORD_LIFE_TIME' and ((replace(p.limit, 'DEFAULT', def_pwd_life_tm) in ('UNLIMITED', NULL)) or (lpad(replace(p.limit, 'DEFAULT', def_pwd_life_tm),40,'0') > lpad('35',40,'0'))) AND u.profile = p.profile UNION ALL select 'Table SYS.LOGIN_AUDIT_INFO_ALL is not used.' value FROM DUAL WHERE NOT EXISTS (select table_name from dba_tables where table_name='LOGIN_AUDIT_INFO_ALL')
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76055r1_rule
説明: DBMSは、アカウントの作成を自動的に監査する必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE UPPER(value) WHEN 'FALSE' THEN (SELECT CASE UPPER(value) WHEN 'NONE' THEN name||' parameter is set to '||value||'.' ELSE (SELECT 'Account creation is not being audited' value from sys.dba_stmt_audit_opts where AUDIT_OPTION='CREATE USER' having count(*)=0) END AS VALUE FROM v$parameter where name='audit_trail' ) ELSE (SELECT CASE UPPER(value) WHEN 'NONE' THEN (SELECT 'Account creation is not being audited' from audit_unified_policies where AUDIT_OPTION='CREATE USER' AND AUDIT_OPTION_TYPE='STANDARD ACTION' AND AUDIT_CONDITION!='NONE' having count(*)=0) ELSE (SELECT DISTINCT value FROM (SELECT 'Account creation is not being audited' value from audit_unified_policies where AUDIT_OPTION='CREATE USER' AND AUDIT_OPTION_TYPE='STANDARD ACTION' AND AUDIT_CONDITION!='NONE' having count(*)=0 UNION SELECT 'Account creation is not being audited' value from sys.dba_stmt_audit_opts where AUDIT_OPTION='CREATE USER' having count(*)=0 )) END AS VALUE FROM v$parameter where name='audit_trail' ) END AS value FROM v$option WHERE parameter ='Unified Auditing') where VALUE IS NOT NULL;
STIGルールへの変更: 従来システムまたは統合システムを使用して監査が有効化されているか、およびアカウントの作成が監査されているかをチェックするためにルール問合せを結合しました。
SV-76059r1_rule
説明: DBMSは、アカウントの変更を自動的に監査する必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE UPPER(value) WHEN 'FALSE' THEN (SELECT CASE UPPER(value) WHEN 'NONE' THEN name||' parameter is set to '||value||'.' ELSE (SELECT 'Account modification is not being audited' value from sys.dba_stmt_audit_opts where AUDIT_OPTION='ALTER USER' having count(*)=0) END AS VALUE FROM v$parameter where name='audit_trail' ) ELSE (SELECT CASE UPPER(value) WHEN 'NONE' THEN (SELECT 'Account modification is not being audited' from audit_unified_policies where AUDIT_OPTION='ALTER USER' AND AUDIT_OPTION_TYPE='STANDARD ACTION' AND AUDIT_CONDITION!='NONE' having count(*)=0) ELSE (SELECT DISTINCT value FROM (SELECT 'Account modification is not being audited' value from audit_unified_policies where AUDIT_OPTION='ALTER USER' AND AUDIT_OPTION_TYPE='STANDARD ACTION' AND AUDIT_CONDITION!='NONE' having count(*)=0 UNION SELECT 'Account modification is not being audited' value from sys.dba_stmt_audit_opts where AUDIT_OPTION='ALTER USER' having count(*)=0 )) END AS VALUE FROM v$parameter where name='audit_trail' ) END AS value FROM v$option WHERE parameter ='Unified Auditing') where VALUE IS NOT NULL;
STIGルールへの変更: 従来システムまたは統合システムを使用して監査が有効化されているか、およびアカウントの変更が監査されているかをチェックするためにルール問合せを結合しました。
SV-76061r1_rule
説明: DBMSは、アクションを無効化しているアカウントを自動的に監査する必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE UPPER(value) WHEN 'FALSE' THEN (SELECT CASE UPPER(value) WHEN 'NONE' THEN name||' parameter is set to '||value||'.' ELSE (SELECT 'Account disabling is not being audited' value from sys.dba_stmt_audit_opts where AUDIT_OPTION='ALTER USER' having count(*)=0) END AS VALUE FROM v$parameter where name='audit_trail' ) ELSE (SELECT CASE UPPER(value) WHEN 'NONE' THEN (SELECT 'Account disabling is not being audited' from audit_unified_policies where AUDIT_OPTION='ALTER USER' AND AUDIT_OPTION_TYPE='STANDARD ACTION' AND AUDIT_CONDITION!='NONE' having count(*)=0) ELSE (SELECT DISTINCT value FROM (SELECT 'Account disabling is not being audited' value from audit_unified_policies where AUDIT_OPTION='ALTER USER' AND AUDIT_OPTION_TYPE='STANDARD ACTION' AND AUDIT_CONDITION!='NONE' having count(*)=0 UNION SELECT 'Account disabling is not being audited' value from sys.dba_stmt_audit_opts where AUDIT_OPTION='ALTER USER' having count(*)=0 )) END AS VALUE FROM v$parameter where name='audit_trail' ) END AS value FROM v$option WHERE parameter ='Unified Auditing') where VALUE IS NOT NULL;
STIGルールへの変更: 従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。アカウントの無効化が監査されているか手動でチェックする必要があります。
SV-76063r1_rule
説明: DBMSは、アカウントの終了を自動的に監査する必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE UPPER(value) WHEN 'FALSE' THEN (SELECT CASE UPPER(value) WHEN 'NONE' THEN name||' parameter is set to '||value||'.' ELSE (SELECT 'Account termination is not being audited' value from sys.dba_stmt_audit_opts where AUDIT_OPTION='DROP USER' having count(*)=0) END AS VALUE FROM v$parameter where name='audit_trail' ) ELSE (SELECT CASE UPPER(value) WHEN 'NONE' THEN (SELECT 'Account termination is not being audited' from audit_unified_policies where AUDIT_OPTION='DROP USER' AND AUDIT_OPTION_TYPE='STANDARD ACTION' AND AUDIT_CONDITION!='NONE' having count(*)=0) ELSE (SELECT DISTINCT value FROM (SELECT 'Account termination is not being audited' value from audit_unified_policies where AUDIT_OPTION='DROP USER' AND AUDIT_OPTION_TYPE='STANDARD ACTION' AND AUDIT_CONDITION!='NONE' having count(*)=0 UNION SELECT 'Account termination is not being audited' value from sys.dba_stmt_audit_opts where AUDIT_OPTION='DROP USER' having count(*)=0 )) END AS VALUE FROM v$parameter where name='audit_trail' ) END AS value FROM v$option WHERE parameter ='Unified Auditing') where VALUE IS NOT NULL;
STIGルールへの変更: 従来システムまたは統合システムを使用して監査が有効化されているか、およびアカウントの終了が監査されているかをチェックするためにルール問合せを結合しました。
SV-76081r1_rule
説明: 管理権限は、データベースのロールを介してデータベース・アカウントに割り当てる必要があります。
自動化ロジック:
select 'User '|| dsp.grantee ||' is granted '|| dsp.privilege ||' privilege' value from dba_sys_privs dsp, dba_users du where dsp.grantee in (SELECT username FROM dba_users WHERE username NOT IN ( 'XDB', 'SYSTEM', 'SYS', 'LBACSYS', 'DVSYS', 'DVF', 'SYSMAN_RO', 'SYSMAN_BIPLATFORM', 'SYSMAN_MDS', 'SYSMAN_OPSS', 'SYSMAN_STB', 'DBSNMP', 'SYSMAN', 'APEX_040200', 'WMSYS', 'SYSDG', 'SYSBACKUP', 'SPATIAL_WFS_ADMIN_USR', 'SPATIAL_CSW_ADMIN_US', 'GSMCATUSER', 'OLAPSYS', 'SI_INFORMTN_SCHEMA', 'OUTLN', 'ORDSYS', 'ORDDATA', 'OJVMSYS', 'ORACLE_OCM', 'MDSYS', 'ORDPLUGINS', 'GSMADMIN_INTERNAL', 'MDDATA', 'FLOWS_FILES', 'DIP', 'CTXSYS', 'AUDSYS', 'APPQOSSYS', 'APEX_PUBLIC_USER', 'ANONYMOUS', 'SPATIAL_CSW_ADMIN_USR', 'SYSKM', 'SYSMAN_TYPES', 'MGMT_VIEW', 'EUS_ENGINE_USER', 'EXFSYS', 'SYSMAN_APM' ) ) AND dsp.privilege NOT IN ('UNLIMITED TABLESPACE', 'REFERENCES', 'INDEX', 'SYSDBA','SYSOPER') and dsp.grantee=du.username and du.account_status not like '%EXPIRED%LOCKED%' order by dsp.grantee
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76085r1_rule
説明: 特権アカウントのすべての使用を監査する必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE WHEN ((SELECT count(*) from SYS.V$OPTION WHERE PARAMETER='Unified Auditing' AND VALUE='FALSE')=1) THEN (select 'audit_trail parameter is set to '||value value from v$parameter where name='audit_trail' and value = 'NONE') END AS VALUE FROM DUAL) WHERE VALUE IS NOT NULL
STIGルールへの変更: 従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。特権アカウントのすべての使用が監査されているか手動でチェックする必要があります。
SV-76093r1_rule
説明: DBMSは、アカウントのロックアウトが管理者によるリセットまで続くか確認する必要があります。
自動化ロジック:
select p.resource_name||' is not set to UNLIMITED for user '||u.username||' through profile '||p.profile AS value from dba_users u, dba_profiles p where u.profile = p.profile and p.resource_name = 'PASSWORD_LOCK_TIME' and p.limit != 'UNLIMITED' and u.account_status not like '%EXPIRED%LOCKED%'
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76095r1_rule
説明: DBMSは、連続して失敗したログオン試行の数を3回に制限する必要があります。
自動化ロジック:
select p.resource_name||' limit is set to '||p.limit||' for user '||u.username||' through profile '||p.profile AS value from dba_profiles p, dba_users u, (select limit as def_fld_lgn_atmt from dba_profiles where profile = 'DEFAULT' and resource_name = 'FAILED_LOGIN_ATTEMPTS') where p.resource_name = 'FAILED_LOGIN_ATTEMPTS' and ((replace(p.limit, 'DEFAULT', def_fld_lgn_atmt) in ('UNLIMITED', NULL)) or (lpad(replace(p.limit, 'DEFAULT', def_fld_lgn_atmt),40,'0') > lpad('3',40,'0'))) AND u.profile = p.profile AND u.account_status not like '%EXPIRED%LOCKED%'
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76097r1_rule
説明: DBMSは、成功しなかったログオン試行が最大数を超えたときにアカウント/ノードを管理者によって解放されるまで自動的にロックする必要があります。
自動化ロジック:
select p.resource_name||' is set to '||p.limit||' for user '||u.username||' through profile '||p.profile AS value from dba_profiles p, dba_users u, (select limit as def_fld_lgn_atmt from dba_profiles where profile = 'DEFAULT' and resource_name = 'FAILED_LOGIN_ATTEMPTS') where p.resource_name = 'FAILED_LOGIN_ATTEMPTS' and ((replace(p.limit, 'DEFAULT', def_fld_lgn_atmt) in ('UNLIMITED', NULL)) or (lpad(replace(p.limit, 'DEFAULT', def_fld_lgn_atmt),40,'0') > lpad('3',40,'0'))) AND u.profile = p.profile AND u.account_status not like '%EXPIRED%LOCKED%'
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76099r1_rule
説明: DBMSは、ユーザーがデータベースに明示的にログオンするまで通知メッセージまたはバナーを画面上に保持する必要があります。
自動化ロジック:
perl bannerText.pl {OracleHome}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76101r1_rule
説明: DBMSは、追加のアクセス権限を付与する前に、適切であればシステムの使用情報を表示する必要があります。
自動化ロジック:
perl bannerText.pl {OracleHome}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76103r1_rule
説明: DBMSは、その監査を構成して記憶域容量の超過の可能性を減らす必要があります。
自動化ロジック:
select tablespace_name ||' tablespace used for logging '||table_name value from sys.dba_tables where table_name in ('AUD$', 'FGA_LOG$') AND tablespace_name = 'SYSTEM' UNION ALL select tablespace_name ||' tablespace used for unified adit '||table_name value from sys.dba_tables where owner='AUDSYS' and tablespace_name='USERS'
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76105r1_rule
説明: DBMSは、監査レコード記憶域容量を割り振る必要があります。
自動化ロジック:
select tablespace_name ||' tablespace used for logging '||table_name value from sys.dba_tables where table_name in ('AUD$', 'FGA_LOG$') AND tablespace_name = 'SYSTEM' UNION ALL select tablespace_name ||' tablespace used for unified adit '||table_name value from sys.dba_tables where owner='AUDSYS' and tablespace_name='USERS'
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76111r1_rule
説明: DBMSは、データベース内の組織定義の監査可能イベントに対するレコード生成機能を提供する必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE WHEN ((SELECT count(*) from SYS.V$OPTION WHERE PARAMETER='Unified Auditing' AND VALUE='FALSE')=1) THEN (select 'audit_trail parameter is set to '||value value from v$parameter where name='audit_trail' and value = 'NONE') END AS VALUE FROM DUAL) WHERE VALUE IS NOT NULL
STIGルールへの変更: 従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。
SV-76115r1_rule
説明: DBMSは、DoD選択監査可能イベントのリストに対する監査レコードを生成する必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE WHEN ((SELECT count(*) from SYS.V$OPTION WHERE PARAMETER='Unified Auditing' AND VALUE='FALSE')=1) THEN (SELECT name||' parameter is set to '||value||'.' value from sys.v$parameter where name='audit_trail' and value='NONE') END AS VALUE FROM DUAL) WHERE VALUE IS NOT NULL
STIGルールへの変更: 従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。
SV-76117r1_rule
説明: DBMSは、どのようなタイプのイベントが発生したかがわかる十分な情報を含んだレコードを作成する必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE WHEN ((SELECT count(*) from SYS.V$OPTION WHERE PARAMETER='Unified Auditing' AND VALUE='FALSE')=1) THEN (select 'audit_trail parameter is set to '||value value from v$parameter where name='audit_trail' and value = 'NONE') END AS VALUE FROM DUAL) WHERE VALUE IS NOT NULL
STIGルールへの変更: 従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。
SV-76121r1_rule
説明: DBMSは、いつ(日付と時刻)イベントが発生したかがわかる十分な情報を含んだレコードを作成する必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE WHEN ((SELECT count(*) from SYS.V$OPTION WHERE PARAMETER='Unified Auditing' AND VALUE='FALSE')=1) THEN (select 'audit_trail parameter is set to '||value value from v$parameter where name='audit_trail' and value = 'NONE') END AS VALUE FROM DUAL) WHERE VALUE IS NOT NULL
STIGルールへの変更: 従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。
SV-76123r1_rule
説明: DBMSは、どこでイベントが発生したかがわかる十分な情報を含んだレコードを作成する必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE WHEN ((SELECT count(*) from SYS.V$OPTION WHERE PARAMETER='Unified Auditing' AND VALUE='FALSE')=1) THEN (select 'audit_trail parameter is set to '||value value from v$parameter where name='audit_trail' and value = 'NONE') END AS VALUE FROM DUAL) WHERE VALUE IS NOT NULL
STIGルールへの変更: 従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。
SV-76125r1_rule
説明: DBMSは、イベントのソース(起点)がわかる十分な情報を含んだレコードを作成する必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE WHEN ((SELECT count(*) from SYS.V$OPTION WHERE PARAMETER='Unified Auditing' AND VALUE='FALSE')=1) THEN (select 'audit_trail parameter is set to '||value value from v$parameter where name='audit_trail' and value = 'NONE') END AS VALUE FROM DUAL) WHERE VALUE IS NOT NULL
STIGルールへの変更: 従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。
SV-76127r1_rule
説明: DBMSは、イベントの結果(成功または失敗)が発生したかがわかる十分な情報を含んだレコードを作成する必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE WHEN ((SELECT count(*) from SYS.V$OPTION WHERE PARAMETER='Unified Auditing' AND VALUE='FALSE')=1) THEN (select 'audit_trail parameter is set to '||value value from v$parameter where name='audit_trail' and value = 'NONE') END AS VALUE FROM DUAL) WHERE VALUE IS NOT NULL
STIGルールへの変更: 従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。
SV-76129r1_rule
説明: DBMSは、イベントに関連するユーザー/サブジェクトまたはプロセスのIDがわかる十分な情報を含む監査レコードを生成する必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE WHEN ((SELECT count(*) from SYS.V$OPTION WHERE PARAMETER='Unified Auditing' AND VALUE='FALSE')=1) THEN (select 'audit_trail parameter is set to '||value value from v$parameter where name='audit_trail' and value = 'NONE') END AS VALUE FROM DUAL) WHERE VALUE IS NOT NULL
STIGルールへの変更: 従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。
SV-76131r1_rule
説明: DBMSは、組織定義の追加詳細情報を、タイプ、場所またはサブジェクトにより識別される監査イベントの監査レコードに含める必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE WHEN ((SELECT count(*) from SYS.V$OPTION WHERE PARAMETER='Unified Auditing' AND VALUE='FALSE')=1) THEN (select 'audit_trail parameter is set to '||value value from v$parameter where name='audit_trail' and value = 'NONE') END AS VALUE FROM DUAL) WHERE VALUE IS NOT NULL
STIGルールへの変更: 従来システムまたは統合システムを使用して監査が有効化されているかをチェックするためにルール問合せを結合しました。
SV-76143r2_rule
説明: システムは、すべての不正なアクセスから監査情報を保護する必要があります。
自動化ロジック:
SELECT GRANTEE||' has '||PRIVILEGE||' on '|| TABLE_NAME AS VALUE FROM sys.DBA_TAB_PRIVS where (table_name = 'AUD$' or table_name='FGA_LOG$') AND grantee not in ('SYS','SYSTEM', 'DELETE_CATALOG_ROLE') UNION ALL SELECT GRANTEE|| ' has '||PRIVILEGE|| ' on '||TABLE_NAME AS VALUE FROM sys.DBA_TAB_PRIVS where owner='AUDSYS' AND grantee not in ('SYS', 'SYSTEM', 'DELETE_CATALOG_ROLE')
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76145r1_rule
説明: システムは、不正な変更から監査情報を保護する必要があります。
自動化ロジック:
SELECT GRANTEE||' has '||PRIVILEGE||' on '|| TABLE_NAME AS VALUE FROM sys.DBA_TAB_PRIVS where (table_name = 'AUD$' or table_name='FGA_LOG$') AND PRIVILEGE IN ('DELETE','INSERT','UPDATE') AND grantee not in ('SYS','SYSTEM', 'DELETE_CATALOG_ROLE') UNION ALL SELECT GRANTEE|| ' has '||PRIVILEGE|| ' on '||TABLE_NAME AS VALUE FROM sys.DBA_TAB_PRIVS where owner='AUDSYS' AND PRIVILEGE IN ('DELETE','INSERT','UPDATE') AND grantee not in ('SYS','SYSTEM', 'DELETE_CATALOG_ROLE')
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76147r1_rule
説明: システムは、不正な削除から監査情報を保護する必要があります。
自動化ロジック:
SELECT GRANTEE||' has '||PRIVILEGE||' on '|| TABLE_NAME AS VALUE FROM sys.DBA_TAB_PRIVS where (table_name = 'AUD$' or table_name='FGA_LOG$') AND PRIVILEGE='DELETE' AND grantee not in ('SYS','SYSTEM', 'DELETE_CATALOG_ROLE') UNION ALL SELECT GRANTEE|| ' has '||PRIVILEGE|| ' on '||TABLE_NAME AS VALUE FROM sys.DBA_TAB_PRIVS where owner='AUDSYS' AND PRIVILEGE='DELETE' AND grantee not in ('SYS','SYSTEM', 'DELETE_CATALOG_ROLE')
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76157r1_rule
説明: DBMSは、監査データ・レコードと整合性を暗号化メカニズムを使用して保護する必要があります。
自動化ロジック:
SELECT 'Tablespace '||t.tablespace_name ||' holding audit data in '||t.table_name||' is not encrypted.' value FROM dba_tables t, dba_tablespaces ts WHERE (t.table_name ='AUD$' OR t.table_name='FGA_LOG$' OR t.owner= 'AUDSYS') AND t.tablespace_name = ts.tablespace_name AND ts.encrypted = 'NO' AND EXISTS (SELECT PARAMETER as value1 from SYS.V$OPTION WHERE PARAMETER='Unified Auditing' AND VALUE='TRUE' UNION select name as value1 from v$parameter where name='audit_trail' and UPPER(value) != 'NONE')
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76159r1_rule
説明: DBMSは、特権アカウントに対するリモート・アクセスおよび特権機能の実行の結果として生成された監査レコードを保護する必要があります。
自動化ロジック:
SELECT GRANTEE||' has '||PRIVILEGE||' on '|| TABLE_NAME AS VALUE FROM sys.DBA_TAB_PRIVS where (table_name = 'AUD$' or table_name='FGA_LOG$') AND grantee not in ('SYS','SYSTEM', 'DELETE_CATALOG_ROLE') UNION ALL SELECT GRANTEE|| ' has '||PRIVILEGE|| ' on '||TABLE_NAME AS VALUE FROM sys.DBA_TAB_PRIVS where owner='AUDSYS' AND grantee not in ('SYS','SYSTEM', 'DELETE_CATALOG_ROLE') UNION ALL SELECT GRANTEE || ' has been granted with '||GRANTED_ROLE AS VALUE FROM sys.DBA_ROLE_PRIVS WHERE GRANTED_ROLE IN ('AUDIT_ADMIN','AUDIT_VIEWER','DELETE_CATALOG_ROLE') AND GRANTEE NOT IN ('SYS','SYSTEM','DBA')
STIGルールへの変更: 監査レコードが保護されているかをチェックするためにルール問合せを結合しました。
SV-76161r1_rule
説明: DBMSは、DBMS構成およびデータベース自体に対する変更に関連した論理的アクセス制限の強化をサポートする必要があります。
自動化ロジック:
perl %scriptsDir%/umaskCheck.pl {OracleHome} 022
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76163r1_rule
説明: データベース・オブジェクトは、所有権が承認されたアカウントにより所有される必要があります。
自動化ロジック:
SELECT 'Database objects are owned by unauthorized user '||OWNER value FROM ( SELECT OWNER, COUNT(*) FROM DBA_OBJECTS WHERE OWNER NOT IN ('PUBLIC', 'OUTLN', 'CTXSYS', 'SYSTEM', 'EXFSYS', 'DBSNMP', 'ORDSYS', 'ORDPLUGINS', 'APPQOSYS', 'XDB', 'IX', 'ORDDATA', 'SYS', 'WMSYS', 'MDSYS', 'OLAPSYS', 'SYSMAN', 'APEX_030200', 'FLOWS_FILES', 'SI_INFORMTN_SCHEMA', 'ORACLE_OCM', 'APPQOSSYS', 'PM', 'OE', 'SH', 'HR', 'ORACLE_OCM', 'SCOTT', 'OWBSYS_AUDIT', 'OWBSYS', 'BI','APEX_040200','DVF','DVSYS','LBACSYS','AUDSYS','GSMADMIN_INTERNAL','OJVMSYS') GROUP BY OWNER )
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76167r1_rule
説明: デフォルトのデモンストレーションおよびサンプル・データベース、データベース・オブジェクトおよびアプリケーションは、削除する必要があります。
自動化ロジック:
select distinct 'Demonstration account '||username||' found in database' value from dba_users where username in ('BI', 'HR', 'OE', 'PM', 'IX', 'SH', 'SCOTT')
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76173r1_rule
説明: 外部の実行可能ファイルの使用を認可する必要があります。
自動化ロジック:
SELECT owner||'.'||library_name||' is a library containing external procedure.' AS VALUE FROM ( select library_name,owner, '' grantee, '' privilege from dba_libraries where file_spec is not null minus ( select library_name,o.name owner, '' grantee, '' privilege from dba_libraries l, sys.user$ o, sys.user$ ge, sys.obj$ obj, sys.objauth$ oa where l.owner=o.name and obj.owner#=o.user# and obj.name=l.library_name and oa.obj#=obj.obj# and ge.user#=oa.grantee# and l.file_spec is not null )) union all SELECT grantee||' has been granted with '||privilege||' on '||owner||'.'||library_name||' the library containing external procedures.' AS VALUE FROM ( select library_name,o.name owner, --obj.obj#,oa.privilege#, ge.name grantee, tpm.name privilege from dba_libraries l, sys.user$ o, sys.user$ ge, sys.obj$ obj, sys.objauth$ oa, sys.table_privilege_map tpm where l.owner=o.name and obj.owner#=o.user# and obj.name=l.library_name and oa.obj#=obj.obj# and ge.user#=oa.grantee# and tpm.privilege=oa.privilege# and l.file_spec is not null )
STIGルールへの変更: 追加されている特殊文字が原因で問合せが正常に実行できないため、手動で操作するようにしました。
SV-76175r1_rule
説明: 外部の実行可能ファイルへのアクセスを無効化または制限する必要があります。
自動化ロジック:
perl %scriptsDir%/externalExecs.pl {OracleHome}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76181r1_rule
説明: DBMSは、トランザクション・ジャーナリングを有効化する必要があります。
自動化ロジック:
select 'Database is in NOARCHIVELOG mode' value from v$database where log_mode != 'ARCHIVELOG'
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76193r1_rule
説明: DBMSは、特権アカウントに対するネットワーク・アクセスに多元的認証を使用する必要があります。
自動化ロジック:
perl %scriptsDir%/multiFactorAuth.pl {OracleHome}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76195r1_rule
説明: DBMSは、非特権アカウントに対するネットワーク・アクセスに多元的認証を使用する必要があります。
自動化ロジック:
perl %scriptsDir%/multiFactorAuth.pl {OracleHome}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76197r1_rule
説明: DBMSは、特権アカウントに対するローカル・アクセスに多元的認証を使用する必要があります。
自動化ロジック:
perl %scriptsDir%/multiFactorAuth.pl {OracleHome}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76199r1_rule
説明: DBMSは、非特権アカウントに対するローカル・アクセスに多元的認証を使用する必要があります。
自動化ロジック:
perl %scriptsDir%/multiFactorAuth.pl {OracleHome}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76203r1_rule
説明: DBMSは、特権アカウントに対するネットワーク・アクセスに組織定義のリプレイ耐性認証メカニズムを使用する必要があります。
自動化ロジック:
perl %scriptsDir%/replayResistantAuthCheck.pl {OracleHome}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76205r1_rule
説明: DBMSは、非特権アカウントに対するネットワーク・アクセスに組織定義のリプレイ耐性認証メカニズムを使用する必要があります。
自動化ロジック:
perl %scriptsDir%/replayResistantAuthCheck.pl {OracleHome}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76207r1_rule
説明: DBMSは、組織定義の非アクティブ期間後にユーザー・アカウントを無効化する組織要件をサポートする必要があります。
自動化ロジック:
select p.resource_name||' limit is set to '||p.limit||' for user '||u.username||' through profile '||p.profile AS value from dba_profiles p, dba_users u, (select limit as def_pwd_life_tm from dba_profiles where profile = 'DEFAULT' and resource_name = 'PASSWORD_LIFE_TIME') where p.resource_name = 'PASSWORD_LIFE_TIME' and ((replace(p.limit, 'DEFAULT', def_pwd_life_tm) in ('UNLIMITED', 'NULL')) or (lpad(replace(p.limit, 'DEFAULT', def_pwd_life_tm),40,'0') > lpad('35',40,'0'))) AND u.profile = p.profile AND u.account_status not like '%EXPIRED%LOCKED%' AND u.AUTHENTICATION_TYPE NOT IN ('GLOBAL','EXTERNAL') UNION ALL select 'Table SYS.LOGIN_AUDIT_INFO_ALL is not used' value FROM DUAL WHERE NOT EXISTS (select table_name from dba_tables where table_name='LOGIN_AUDIT_INFO_ALL')
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76209r1_rule
説明: DBMSは、最小パスワード長を強制する組織要件をサポートする必要があります。
自動化ロジック:
select p.resource_name||' is not set for user '||u.username||' through profile '||p.profile||' to check minimum password length' AS value from sys.dba_profiles p, sys.dba_users u, (select limit as def_pwd_verify_func from sys.dba_profiles where profile = 'DEFAULT' and resource_name = 'PASSWORD_VERIFY_FUNCTION') where p.resource_name = 'PASSWORD_VERIFY_FUNCTION' and ((replace(p.limit, 'DEFAULT', def_pwd_verify_func) in ('', 'NULL'))) AND u.profile = p.profile AND u.account_status not like '%EXPIRED%LOCKED%' and u.AUTHENTICATION_TYPE NOT IN ('EXTERNAL', 'GLOBAL')
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76211r2_rule
説明: DBMSは、組織定義の生成数に対するパスワード再使用を禁止する組織要件をサポートする必要があります。
自動化ロジック:
elect profile|| ' profile has PASSWORD_REUSE_TIME set to '||limit value from dba_profiles p, (select limit as def_pwd_reuse_tm from dba_profiles where profile = 'DEFAULT' and resource_name = 'PASSWORD_REUSE_TIME') where p.resource_name = 'PASSWORD_REUSE_TIME' and ((replace(p.limit, 'DEFAULT', def_pwd_reuse_tm) in ('UNLIMITED', NULL)) or (lpad(replace(p.limit, 'DEFAULT', def_pwd_reuse_tm),40,'0') < lpad('6',40,'0'))) UNION SELECT profile|| ' profile has PASSWORD_REUSE_MAX set to '||limit value FROM dba_profiles WHERE resource_name = 'PASSWORD_REUSE_MAX' AND (limit IS NULL OR limit = 'UNLIMITED')
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76213r1_rule
説明: DBMSは、使用する大文字の数によりパスワードの複雑さを強制する組織定義要件をサポートする必要があります。
自動化ロジック:
select p.resource_name||' is not set for user '||u.username||' through profile '||p.profile||' to check number of upper-case characters used' AS value from sys.dba_profiles p, sys.dba_users u, (select limit as def_pwd_verify_func from sys.dba_profiles where profile = 'DEFAULT' and resource_name = 'PASSWORD_VERIFY_FUNCTION') where p.resource_name = 'PASSWORD_VERIFY_FUNCTION' and ((replace(p.limit, 'DEFAULT', def_pwd_verify_func) in ('', 'NULL'))) AND u.profile = p.profile AND u.account_status not like '%EXPIRED%LOCKED%' and u.AUTHENTICATION_TYPE NOT IN ('EXTERNAL', 'GLOBAL')
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76215r1_rule
説明: DBMSは、使用する小文字の数によりパスワードの複雑さを強制する組織定義要件をサポートする必要があります。
自動化ロジック:
select p.resource_name||' is not set for user '||u.username||' through profile '||p.profile||' to check number of lower-case characters used' AS value from sys.dba_profiles p, sys.dba_users u, (select limit as def_pwd_verify_func from sys.dba_profiles where profile = 'DEFAULT' and resource_name = 'PASSWORD_VERIFY_FUNCTION') where p.resource_name = 'PASSWORD_VERIFY_FUNCTION' and ((replace(p.limit, 'DEFAULT', def_pwd_verify_func) in ('', 'NULL'))) AND u.profile = p.profile AND u.account_status not like '%EXPIRED%LOCKED%' and u.AUTHENTICATION_TYPE NOT IN ('EXTERNAL', 'GLOBAL')
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76217r1_rule
説明: DBMSは、使用する数字の数によりパスワードの複雑さを強制する組織定義要件をサポートする必要があります。
自動化ロジック:
select p.resource_name||' is not set for user '||u.username||' through profile '||p.profile||' to check number of numeric characters used' AS value from sys.dba_profiles p, sys.dba_users u, (select limit as def_pwd_verify_func from sys.dba_profiles where profile = 'DEFAULT' and resource_name = 'PASSWORD_VERIFY_FUNCTION') where p.resource_name = 'PASSWORD_VERIFY_FUNCTION' and ((replace(p.limit, 'DEFAULT', def_pwd_verify_func) in ('', 'NULL'))) AND u.profile = p.profile AND u.account_status not like '%EXPIRED%LOCKED%' and u.AUTHENTICATION_TYPE NOT IN ('EXTERNAL', 'GLOBAL')
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76219r1_rule
説明: DBMSは、使用する特殊文字の数によりパスワードの複雑さを強制する組織定義要件をサポートする必要があります。
自動化ロジック:
select p.resource_name||' is not set for user '||u.username||' through profile '||p.profile||' to check number of special characters used' AS value from sys.dba_profiles p, sys.dba_users u, (select limit as def_pwd_verify_func from sys.dba_profiles where profile = 'DEFAULT' and resource_name = 'PASSWORD_VERIFY_FUNCTION') where p.resource_name = 'PASSWORD_VERIFY_FUNCTION' and ((replace(p.limit, 'DEFAULT', def_pwd_verify_func) in ('', 'NULL'))) AND u.profile = p.profile AND u.account_status not like '%EXPIRED%LOCKED%' and u.AUTHENTICATION_TYPE NOT IN ('EXTERNAL', 'GLOBAL')
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76221r1_rule
説明: DBMSは、パスワードの変更時に変更される文字の数を強制する組織定義要件をサポートする必要があります。
自動化ロジック:
select p.resource_name||' is not set for user '||u.username||' through profile '||p.profile||' to check number of characters changed on password reset' AS value from sys.dba_profiles p, sys.dba_users u, (select limit as def_pwd_verify_func from sys.dba_profiles where profile = 'DEFAULT' and resource_name = 'PASSWORD_VERIFY_FUNCTION') where p.resource_name = 'PASSWORD_VERIFY_FUNCTION' and ((replace(p.limit, 'DEFAULT', def_pwd_verify_func) in ('', 'NULL'))) AND u.profile = p.profile AND u.account_status not like '%EXPIRED%LOCKED%' and u.AUTHENTICATION_TYPE NOT IN ('EXTERNAL', 'GLOBAL')
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76229r1_rule
説明: DBMSは、パスワードに最長ライフタイム制限を強制する必要があります。
自動化ロジック:
select p.profile||' has PASSWORD_LIFE_TIME set to '||p.limit||'.' value from dba_profiles p, (select limit as def_pwd_life_tm from dba_profiles where profile = 'DEFAULT' and resource_name = 'PASSWORD_LIFE_TIME') where p.resource_name = 'PASSWORD_LIFE_TIME' and ((replace(p.limit, 'DEFAULT', def_pwd_life_tm) in ('UNLIMITED', NULL)) or (lpad(replace(p.limit, 'DEFAULT', def_pwd_life_tm),40,'0') > lpad('35',40,'0')))
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76237r1_rule
説明: DBMSは、認証メカニズムにNIST検証済のFIPS 140-2準拠暗号化を使用する必要があります。
自動化ロジック:
perl %scriptsDir%/fipsCompliantCheck.pl {OracleHome}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76245r1_rule
説明: DBMSは、データベースに格納された情報、およびデータベースから抽出または導出してデジタル・メディアに格納された情報を暗号化する組織要件をサポートする必要があります。
自動化ロジック:
select 'Parameter '||name||' is set to '||value AS VALUE from SYS.V$PARAMETER where name='DBFIPS_140' and value='FALSE' UNION SELECT 'DBMS must support organizational requirements to encrypt information stored in the database and information extracted or derived from the database' as value FROM DUAL WHERE NOT EXISTS(SELECT NAME FROM SYS.V$PARAMETER where name='DBFIPS_140')
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76247r2_rule
説明: DBMSは、通信セッションに関連したネットワーク接続を、セッションまたは15分の非アクティブ期間の最後に終了する必要があります。
自動化ロジック:
select p.resource_name||' is set to '||p.limit||' for user '||u.username||' through profile '||p.profile AS value from sys.DBA_PROFILES p, sys.dba_users u,(SELECT limit as def_idle_time FROM sys.DBA_PROFILES where profile='DEFAULT' AND RESOURCE_NAME='IDLE_TIME') d where p.resource_name ='IDLE_TIME' and (DECODE (p.limit, 'DEFAULT', d.def_idle_time, limit) = 'UNLIMITED' OR (lpad(replace(p.limit, 'DEFAULT', d.def_idle_time),40,'0') > lpad('15',40,'0'))) and u.profile = p.profile and u.account_status not like '%EXPIRED%LOCKED%'
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76249r1_rule
説明: DBMSは、適用連邦法、大統領命令、指令、指針、基準および指導に適合した暗号化モジュールを使用して必要な暗号化保護を実装する必要があります。
自動化ロジック:
perl %scriptsDir%/cryptoProtectionCheck.pl {OracleHome} {MachineName} {Port} {Protocol} {SID} {UserName} {password} {Role}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76251r1_rule
説明: 機密情報を含むデータベース・データ・ファイルは、暗号化する必要があります。
自動化ロジック:
select 'Parameter '||name||' is set to '||value AS VALUE from SYS.V$PARAMETER where name='DBFIPS_140' and value='FALSE' UNION SELECT 'Database data files containing sensitive information must be encrypted.' as value FROM DUAL WHERE NOT EXISTS(SELECT NAME FROM SYS.V$PARAMETER where name='DBFIPS_140')
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76253r1_rule
説明: DBMSは、公開されている情報およびアプリケーションの整合性を保護する必要があります。
自動化ロジック:
SELECT TABLESPACE_NAME||' tablespace is not READ ONLY. ' AS VALUE FROM sys.DBA_TABLESPACES WHERE STATUS != 'READ ONLY' AND TABLESPACE_NAME NOT IN ('SYSTEM','SYSAUX','UD1','TEMP','SYSEXT','UNDOTBS')
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76255r1_rule
説明: DBMSは、ユーザーのログオフ時、またはその他の組織またはポリシーで定義されたセッション終了時(アイドル時間制限超過時など)にユーザー・セッションを終了する必要があります。
自動化ロジック:
SELECT resource_name||' is set to '||limit||' for user '||username||' through profile '||profile AS value FROM (select u.username,p.profile,p.resource_name,p.limit,u.account_status from sys.DBA_PROFILES p, sys.dba_users u,(SELECT limit as def_idle_time FROM sys.DBA_PROFILES where profile='DEFAULT' AND RESOURCE_NAME='IDLE_TIME') d where p.resource_name ='IDLE_TIME' and (DECODE (p.limit, 'DEFAULT', d.def_idle_time, limit) = 'UNLIMITED' OR (lpad(replace(p.limit, 'DEFAULT', d.def_idle_time),40,'0') > lpad('15',40,'0'))) and u.profile = p.profile UNION ALL select u.username,p.profile, p.resource_name, p.limit,u.account_status from sys.DBA_PROFILES p, sys.dba_users u where p.resource_name='CONNECT_TIME' and DECODE (limit, 'DEFAULT', (SELECT limit from DBA_PROFILES d where d.resource_name=p.resource_name and profile='DEFAULT'), limit) = 'UNLIMITED' and u.profile = p.profile) where account_status not like '%EXPIRED%LOCKED%'
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76257r1_rule
説明: DBMSは、定義されたタイプの障害の既知の安全状態に対して失敗する必要があります。
自動化ロジック:
select 'Database is in NOARCHIVELOG mode' value from v$database where log_mode != 'ARCHIVELOG'
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76261r1_rule
説明: DBMSは、蓄積データの保護に必要なステップをとって、アプリケーション・データの機密性と整合性を確保する必要があります。
自動化ロジック:
SELECT 'Table '||a.owner||'.'||a.table_name||' in tablespace '||a.tablespace_name||' is not protected by means of encryption.' AS VALUE
FROM dba_tables a WHERE a.tablespace_name NOT IN (select t.name from v$tablespace t, v$encrypted_tablespaces e where t.ts# = e.ts# ) AND a.tablespace_name NOT IN ('SYSTEM','SYSAUX','UD1','TEMP','SYSEXT','UNDOTBS') AND ROWNUM < 200
STIGルールへの変更: 'SYSTEM'、'SYSAUX'、'UD1'、'TEMP'、'SYSEXT'および'UNDOTBS'を除外するように問合せを変更しました。
SV-76263r1_rule
説明: DBMSは、送信データが別の物理的な手段で保護されていないかぎり、暗号メカニズムを採用して蓄積情報の不正な開示を避ける必要があります。
自動化ロジック:
SELECT 'Table '||a.owner||'.'||a.table_name||' in tablespace '||a.tablespace_name||' is not protected by means of encryption.' AS VALUE
FROM dba_tables a WHERE a.tablespace_name NOT IN (select t.name from v$tablespace t, v$encrypted_tablespaces e where t.ts# = e.ts# ) AND a.tablespace_name NOT IN ('SYSTEM','SYSAUX','UD1','TEMP','SYSEXT','UNDOTBS') AND ROWNUM < 200
STIGルールへの変更: 'SYSTEM'、'SYSAUX'、'UD1'、'TEMP'、'SYSEXT'および'UNDOTBS'を除外するように問合せを変更しました。
SV-76275r1_rule
説明: DBMSは、データ入力の有効性をチェックする必要があります。
自動化ロジック:
select owner, 'Constraint '||owner ||'.'||constraint_name || ' is '|| status||' '|| validated value from dba_constraints where (status='DISABLED' or validated='NOT VALIDATED') and owner not in ('SYS', 'SYSMAN', 'SH', 'SYSTEM', 'PM', 'OE', 'SH', 'HR', 'IX', 'OLAPSYS', 'ORDDATA', 'CTXSYS', 'WMSYS')
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76287r2_rule
説明: DBMSは、アカウントが作成されたときに適切な個人に通知する必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE UPPER(value) WHEN 'FALSE' THEN (SELECT CASE UPPER(value) WHEN 'NONE' THEN name||' parameter is set to '||value||'.' ELSE (SELECT 'Account creation is not being audited' value from sys.dba_stmt_audit_opts where AUDIT_OPTION='CREATE USER' having count(*)=0) END AS VALUE FROM v$parameter where name='audit_trail' ) ELSE (SELECT CASE UPPER(value) WHEN 'NONE' THEN (SELECT 'Account creation is not being audited' from audit_unified_policies where AUDIT_OPTION='CREATE USER' AND AUDIT_OPTION_TYPE='STANDARD ACTION' AND AUDIT_CONDITION!='NONE' having count(*)=0) ELSE (SELECT DISTINCT value FROM (SELECT 'Account creation is not being audited' value from audit_unified_policies where AUDIT_OPTION='CREATE USER' AND AUDIT_OPTION_TYPE='STANDARD ACTION' AND AUDIT_CONDITION!='NONE' having count(*)=0 UNION SELECT 'Account creation is not being audited' value from sys.dba_stmt_audit_opts where AUDIT_OPTION='CREATE USER' having count(*)=0 )) END AS VALUE FROM v$parameter where name='audit_trail' ) END AS value FROM v$option WHERE parameter ='Unified Auditing') where VALUE IS NOT NULL;
STIGルールへの変更: 従来システムまたは統合システムを使用して監査が有効化されているか、およびアカウントの作成が監査されているかをチェックするために結合しました。通知されているか手動でチェックする必要があります。
SV-76289r2_rule
説明: DBMSは、アカウントが変更されたときに適切な個人に通知する必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE UPPER(value) WHEN 'FALSE' THEN (SELECT CASE UPPER(value) WHEN 'NONE' THEN name||' parameter is set to '||value||'.' ELSE (SELECT 'Account modification is not being audited' value from sys.dba_stmt_audit_opts where AUDIT_OPTION='ALTER USER' having count(*)=0) END AS VALUE FROM v$parameter where name='audit_trail' ) ELSE (SELECT CASE UPPER(value) WHEN 'NONE' THEN (SELECT 'Account modification is not being audited' from audit_unified_policies where AUDIT_OPTION='ALTER USER' AND AUDIT_OPTION_TYPE='STANDARD ACTION' AND AUDIT_CONDITION!='NONE' having count(*)=0) ELSE (SELECT DISTINCT value FROM (SELECT 'Account modification is not being audited' value from audit_unified_policies where AUDIT_OPTION='ALTER USER' AND AUDIT_OPTION_TYPE='STANDARD ACTION' AND AUDIT_CONDITION!='NONE' having count(*)=0 UNION SELECT 'Account modification is not being audited' value from sys.dba_stmt_audit_opts where AUDIT_OPTION='ALTER USER' having count(*)=0 )) END AS VALUE FROM v$parameter where name='audit_trail' ) END AS value FROM v$option WHERE parameter ='Unified Auditing') where VALUE IS NOT NULL;
STIGルールへの変更: 従来システムまたは統合システムを使用して監査が有効化されているか、およびアカウントの変更が監査されているかをチェックするために結合しました。通知されたか手動でチェックする必要があります。
SV-76291r2_rule
説明: DBMSは、アカウントの無効化処理がとられたときに適切な個人に通知する必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE UPPER(value) WHEN 'FALSE' THEN (SELECT CASE UPPER(value) WHEN 'NONE' THEN name||' parameter is set to '||value||'.' ELSE (SELECT 'Account disabling is not being audited' value from sys.dba_stmt_audit_opts where AUDIT_OPTION='ALTER USER' having count(*)=0) END AS VALUE FROM v$parameter where name='audit_trail' ) ELSE (SELECT CASE UPPER(value) WHEN 'NONE' THEN (SELECT 'Account disabling is not being audited' from audit_unified_policies where AUDIT_OPTION='ALTER USER' AND AUDIT_OPTION_TYPE='STANDARD ACTION' AND AUDIT_CONDITION!='NONE' having count(*)=0) ELSE (SELECT DISTINCT value FROM (SELECT 'Account disabling is not being audited' value from audit_unified_policies where AUDIT_OPTION='ALTER USER' AND AUDIT_OPTION_TYPE='STANDARD ACTION' AND AUDIT_CONDITION!='NONE' having count(*)=0 UNION SELECT 'Account disabling is not being audited' value from sys.dba_stmt_audit_opts where AUDIT_OPTION='ALTER USER' having count(*)=0 )) END AS VALUE FROM v$parameter where name='audit_trail' ) END AS value FROM v$option WHERE parameter ='Unified Auditing') where VALUE IS NOT NULL;
STIGルールへの変更: 従来システムまたは統合システムを使用して監査が有効化されているか、およびアカウントの無効化が監査されているかをチェックするために結合しました。通知されたか手動でチェックする必要があります。
SV-76293r2_rule
説明: DBMSは、アカウントが終了されたときに適切な個人に通知する必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE UPPER(value) WHEN 'FALSE' THEN (SELECT CASE UPPER(value) WHEN 'NONE' THEN name||' parameter is set to '||value||'.' ELSE (SELECT 'Account termination is not being audited' value from sys.dba_stmt_audit_opts where AUDIT_OPTION='DROP USER' having count(*)=0) END AS VALUE FROM v$parameter where name='audit_trail' ) ELSE (SELECT CASE UPPER(value) WHEN 'NONE' THEN (SELECT 'Account termination is not being audited' from audit_unified_policies where AUDIT_OPTION='DROP USER' AND AUDIT_OPTION_TYPE='STANDARD ACTION' AND AUDIT_CONDITION!='NONE' having count(*)=0) ELSE (SELECT DISTINCT value FROM (SELECT 'Account termination is not being audited' value from audit_unified_policies where AUDIT_OPTION='DROP USER' AND AUDIT_OPTION_TYPE='STANDARD ACTION' AND AUDIT_CONDITION!='NONE' having count(*)=0 UNION SELECT 'Account termination is not being audited' value from sys.dba_stmt_audit_opts where AUDIT_OPTION='DROP USER' having count(*)=0 )) END AS VALUE FROM v$parameter where name='audit_trail' ) END AS value FROM v$option WHERE parameter ='Unified Auditing') where VALUE IS NOT NULL;
STIGルールへの変更: 従来システムまたは統合システムを使用して監査が有効化されているか、およびアカウントの終了が監査されているかをチェックするために結合しました。通知されたか手動でチェックする必要があります。
SV-76299r1_rule
説明: DBMSは、割り当てられた情報アクセス認可による業務分離を実装する組織要件をサポートする必要があります。
自動化ロジック:
select grantee ||' has '||privilege||' privilege on '|| table_name value FROM dba_tab_privs WHERE grantee NOT IN ( SELECT role FROM dba_roles) and grantee not in ('SYSKM', 'PUBLIC', 'SYSBACKUP', 'CTXSYS', 'EXFSYS', 'DVSYS', 'SYSTEM', 'AUDSYS', 'DBSNMP', 'ORDSYS', 'XDB', 'SYSDG', 'ORDDATA', 'APPQOSSYS', 'SYS', 'WMSYS', 'LBACSYS', 'MDSYS', 'ORACLE_OCM', 'OWBSYS_AUDIT' ,'DIP' ,'SPATIAL_WFS_ADMIN_USR' ,'FLOWS_FILES' ,'HR' ,'MGMT_VIEW' ,'OLAPSYS' ,'OUTLN' ,'OWBSYS' ,'SPATIAL_CSW_ADMIN_USR' ,'APEX_030200' ,'SCOTT' ,'APEX_PUBLIC_USER' ,'MDDATA' ,'OE' ,'ORDPLUGINS' ,'PM' ,'SH' ,'SYSMAN' ,'BI' ,'IX' ,'ANONYMOUS' ,'SI_INFORMTN_SCHEMA','DVF','GSMADMIN_INTERNAL','APEX_040200','OJVMSYS','GSMCATUSER') UNION select 'User '|| grantee ||' is granted '||privilege||' privilege ' value from dba_sys_privs where grantee not in ( select role from dba_roles) and grantee not in ('SYSKM', 'PUBLIC', 'SYSBACKUP', 'CTXSYS', 'EXFSYS', 'DVSYS', 'SYSTEM', 'AUDSYS', 'DBSNMP', 'ORDSYS', 'XDB', 'SYSDG', 'ORDDATA', 'APPQOSSYS', 'SYS', 'WMSYS', 'LBACSYS', 'MDSYS', 'ORACLE_OCM', 'OWBSYS_AUDIT' ,'DIP' ,'SPATIAL_WFS_ADMIN_USR' ,'FLOWS_FILES' ,'HR' ,'MGMT_VIEW' ,'OLAPSYS' ,'OUTLN' ,'OWBSYS' ,'SPATIAL_CSW_ADMIN_USR' ,'APEX_030200' ,'SCOTT' ,'APEX_PUBLIC_USER' ,'MDDATA' ,'OE' ,'ORDPLUGINS' ,'PM' ,'SH' ,'SYSMAN' ,'BI' ,'IX' ,'ANONYMOUS' ,'SI_INFORMTN_SCHEMA','DVF','GSMADMIN_INTERNAL','APEX_040200','OJVMSYS','GSMCATUSER')
STIGルールへの変更: oracleのデフォルトのユーザー/ロールを除外するように問合せを変更しました。
SV-76301r1_rule
説明: DBMSは、データベースへのアクセス権限を付与する前に、承認されたシステム使用通知メッセージまたはバナーを表示する必要があります。
自動化ロジック:
perl %scriptsDir%/bannerText.pl {OracleHome}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76307r1_rule
説明: DBMSは、超過容量、帯域幅、またはその他の冗長性を管理して情報洪水型のサービス拒否(DoS)攻撃の影響を制限する必要があります。
自動化ロジック:
select p.resource_name||' is set to '||p.limit||' for user '||u.username||' through profile '||p.profile AS value from sys.DBA_PROFILES p, sys.dba_users u,(SELECT limit as def_limit, resource_name FROM sys.DBA_PROFILES where profile='DEFAULT' ) d where p.resource_name IN ('CPU_PER_SESSION','LOGICAL_READS_PER_SESSION','CONNECT_TIME','PRIVATE_SGA') and (DECODE (p.limit, 'DEFAULT', d.def_limit, limit) = 'UNLIMITED' OR (p.resource_name='CPU_PER_SESSION' AND (lpad(replace(p.limit, 'DEFAULT', d.def_limit),40,'0') > lpad('6000',40,'0'))) OR (p.resource_name='LOGICAL_READS_PER_SESSION' AND (lpad(replace(p.limit, 'DEFAULT', d.def_limit),40,'0') > lpad('1000',40,'0'))) OR (p.resource_name='CONNECT_TIME' AND (lpad(replace(p.limit, 'DEFAULT', d.def_limit),40,'0') > lpad('30',40,'0'))) OR (p.resource_name='PRIVATE_SGA' AND (lpad(replace(p.limit, 'DEFAULT', d.def_limit),40,'0') > lpad('102400',40,'0'))) and u.profile = p.profile AND d.RESOURCE_NAME=p.resource_name AND u.account_status not like '%EXPIRED%LOCKED%'
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76309r1_rule
説明: DBMSは、優先度によりリソースの使用を制限し、より高い優先度として指定されたプロセスをホストがサービスすることを妨げないようにする必要があります。
自動化ロジック:
select p.resource_name||' is set to '||p.limit||' for user '||u.username||' through profile '||p.profile AS value from DBA_PROFILES p, dba_users u where p.resource_name IN ('SESSIONS_PER_USER', 'CPU_PER_SESSION', 'CPU_PER_CALL', 'CONNECT_TIME', 'IDLE_TIME', 'LOGICAL_READS_PER_SESSION', 'LOGICAL_READS_PER_CALL', 'PRIVATE_SGA', 'COMPOSITE_LIMIT') and DECODE (p.limit, 'DEFAULT', (SELECT d.limit from DBA_PROFILES d where d.resource_name=p.resource_name and d.profile='DEFAULT'), p.limit) = 'UNLIMITED' and u.profile = p.profile and u.account_status not like '%EXPIRED%LOCKED%'
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76339r1_rule
説明: DBMSのデフォルト・アカウントは誤使用から保護する必要があります。
自動化ロジック:
SELECT 'Account '||username||' is OPEN.' as value FROM sys.dba_users where ACCOUNT_STATUS NOT LIKE '%LOCKED%' AND USERNAME NOT IN ('SYS','SYSTEM','SYSMAN') AND ROWNUM < 200
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76365r1_rule
説明: データベースのソフトウェア・ディレクトリは、DBMS構成ファイルを含めて、ホストOSなどのアプリケーションとは別の専用ディレクトリまたはDASDプールに格納する必要があります。
自動化ロジック:
perl %scriptsDir%/oracleFiles.pl {OracleHome}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76377r1_rule
説明: DBMSは、共有アカウントを誤って使用して特定の処理を実行したことを認めない個人から保護する必要があります。
自動化ロジック:
SELECT * FROM ( SELECT CASE WHEN ((SELECT count(*) from SYS.V$OPTION WHERE PARAMETER='Unified Auditing' AND VALUE='FALSE')=1) THEN (SELECT name||' parameter is set to '||value||'.' value from sys.v$parameter where name='audit_trail' and value='NONE') END AS VALUE FROM DUAL) WHERE VALUE IS NOT NULL
STIGルールへの変更: オラクル社によって問合せが追加されました。
SV-76455r1_rule
説明: AUDIT_FILE_DESTパラメータに割り当てられたディレクトリは、不正なアクセスから保護し、ソフトウェアなどのアプリケーション・ファイルとは別の専用ディレクトリまたはディスク・パーティションに格納する必要があります。
自動化ロジック:
perl %scriptsDir%/auditFileDestPerm.pl {OracleHome} {MachineName} {Port} {Protocol} {SID} {UserName} {password} {Role}
STIGルールへの変更: オラクル社によってスクリプトが提供されました。
SV-76457r1_rule
説明: DBMSは、各システム・アカウントの同時セッションの数を組織定義のセッション数に制限する必要があります。
自動化ロジック:
select p.resource_name||' is set to '||p.limit||' for user '||u.username||' through profile '||p.profile AS value from sys.DBA_PROFILES p, sys.dba_users u,(SELECT limit as def_limit FROM sys.DBA_PROFILES where profile='DEFAULT' AND RESOURCE_NAME='SESSIONS_PER_USER') d where p.resource_name ='SESSIONS_PER_USER' and DECODE (p.limit, 'DEFAULT', d.def_limit, limit) = 'UNLIMITED' and u.profile = p.profile and u.account_status not like '%EXPIRED%LOCKED%'
STIGルールへの変更: オラクル社によって問合せが追加されました。
STIGデータベース・チェック
次のSTIGデータベース・ルールはオラクル社によって強化されています。収集問合せのBoldのテキストは、変更箇所を示しています。
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ルールへの変更: デフォルトのユーザー/ロールを追加しました
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ルールへの変更: デフォルトのユーザー/ロールを追加しました。
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'に置換しました。
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ルールへの変更: デフォルト・ユーザーを追加しました。
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ルールへの変更: デフォルト・ユーザーを追加しました。
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ルールへの変更: デフォルト・ユーザーを追加しました。
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ルールへの変更: デフォルト・ユーザーを追加しました。
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ルールへの変更: デフォルト・ユーザーを追加しました。
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ルールへの変更: デフォルト・ユーザーを追加しました。
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ルールへの変更: デフォルト・ユーザーを追加しました。
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ルールへの変更: デフォルト・ユーザーを追加しました。
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を返すようにルール問合せを結合しました
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デバイスが使用されているか手動でチェックする必要があります。
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ルールへの変更: デフォルト・ユーザーを追加しました。
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ルールへの変更: デフォルトのユーザーおよびロールを追加しました。
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値を逆参照しました。
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ルールへの変更: デフォルトのユーザーおよびロールを追加しました。
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ルールへの変更: デフォルトのユーザーおよびロールを追加しました。
STIGインストール・チェック
オラクル社は、次のSTIGインストール・チェック用のスクリプトを提供しています。
DG0009
名前: Access to DBMS software files and directories should not be granted to unauthorized users。
コメント: オラクル社によってスクリプトが提供されました
DG0012
名前: Database software directories including DBMS configuration files are stored in dedicated directories separate from the host OS and other applications。
コメント: オラクル社によってスクリプトが提供されました
DG0019
名前: Application software should be owned by a Software Application account。
コメント: オラクル社によってスクリプトが提供されました
DG0102
名前: DBMS processes or services should run under custom, dedicated OS accounts。
コメント: オラクル社によってスクリプトが提供されました
DG0152
名前: DBMS network communications should comply with PPS usage restrictions。
コメント: オラクル社によってスクリプトが提供されました
DG0179
名前: The DBMS warning banner should meet Department of Defense (DoD) policy requirements。
コメント: オラクル社によってスクリプトが提供されました
DO0120
名前: The Oracle software installation account should not be granted excessive host system privileges。
コメント: オラクル社によってスクリプトが提供されました
DO0145
名前: OS DBA group membership should be restricted to authorized accounts。
コメント: オラクル社によってスクリプトが提供されました
DO0286
名前: The Oracle INBOUND_CONNECT_TIMEOUT and SQLNET.INBOUND_CONNECT_TIMEOUT parameters should be set to a value greater than 0。
コメント: オラクル社によってスクリプトが提供されました
DO0287
名前: The Oracle SQLNET.EXPIRE_TIME parameter should be set to a value greater than 0。
コメント: オラクル社によってスクリプトが提供されました
DO6740
名前: The Oracle Listener ADMIN_RESTRICTIONS parameter if present should be set to ON。
コメント: オラクル社によってスクリプトが提供されました
DO6746
名前: The Oracle listener.ora file should specify IP addresses rather than host names to identify hosts。
コメント: オラクル社によってスクリプトが提供されました