メインコンテンツまでスキップ

11.5. Access to the SNMP-USER-BASED-SM-MIB (SNMP-USER-BASED-SM-MIB へのアクセス)

11.5. Access to the SNMP-USER-BASED-SM-MIB (SNMP-USER-BASED-SM-MIB へのアクセス)

このセクションでは, SNMP-USER-BASED-SM-MIB モジュールのオブジェクトへのアクセスを制御するための推奨事項を提供します。

Overview (概要)

SNMP-USER-BASED-SM-MIB には, 以下を含む機密性の高いセキュリティ関連情報が含まれています:

  • ユーザー名とセキュリティパラメータ
  • 認証およびプライバシープロトコル識別子
  • 鍵を変更するためのメカニズム
  • 統計カウンター

これらのオブジェクトへの不適切なアクセスは, SNMP 管理システム全体のセキュリティを危険にさらす可能性があります。

Access Control Requirements (アクセス制御要件)

SNMP-USER-BASED-SM-MIB へのアクセスは, ビューベースアクセス制御モデル (VACM) [RFC3415] または同等の強度を持つ別のアクセス制御メカニズムを使用して制御しなければなりません (MUST)

以下のアクセス制御ガイドラインが推奨されます:

1. usmUserTable - ユーザー構成テーブル (User Configuration Table)

読み取りアクセス (Read Access):

  • ユーザーは usmUserTable 内の自分のエントリを読み取ることができるべきです (SHOULD)
  • 管理者はすべてのエントリを読み取ることができるべきです (SHOULD)
  • 一般ユーザーは他のユーザーのエントリを読み取ることができるべきではありません (SHOULD NOT)

書き込みアクセス (Write Access):

  • ユーザーは自分のエントリ内の特定のオブジェクトを変更できるべきです (SHOULD):
    • usmUserOwnAuthKeyChange - 自分の認証鍵を変更する
    • usmUserOwnPrivKeyChange - 自分のプライバシー鍵を変更する
    • usmUserPublic - 汎用の書き込み可能なオブジェクト
  • 管理者は以下ができるべきです (SHOULD):
    • usmUserCloneFromusmUserStatus を介して新しいユーザーを作成する
    • すべてのユーザーの usmUserAuthKeyChangeusmUserPrivKeyChange を変更する
    • usmUserStatusdestroy(6) に設定してユーザーを削除する
  • 一般ユーザーは他のユーザーのエントリを変更できるべきではありません (SHOULD NOT)

2. usmUserSpinLock

  • 読み取りアクセス: すべての認証済みユーザー
  • 書き込みアクセス: 管理者または usmUserTable の変更を許可されたユーザーのみ

usmUserSpinLock は, 複数のマネージャーが同時に変更を試みるときに usmUserTable へのアクセスを調整するために使用されます。

3. usmStats グループ - 統計カウンター (Statistics Counters)

読み取りアクセス (Read Access):

  • 管理者および監視アプリケーションによって読み取り可能であるべきです (SHOULD)
  • 診断目的で一般的な認証済みユーザーによって読み取り可能であるかもしれません (MAY)

書き込みアクセス (Write Access):

  • どのユーザーによっても書き込み可能であるべきではありません (SHOULD NOT) (これらは読み取り専用カウンター)

統計カウンターは以下に対して価値のある情報を提供します:

  • セキュリティ監視と侵入検知
  • 認証と時刻同期の問題のトラブルシューティング
  • 容量計画

4. Key Management Objects (鍵管理オブジェクト)

以下のオブジェクトには特別な保護が必要です:

  • usmUserAuthKeyChangeusmUserPrivKeyChange: これらのオブジェクトは, 管理者が任意のユーザーの鍵を変更することを許可します。アクセスは信頼できる管理者に厳しく制限する必要があります。
  • usmUserOwnAuthKeyChangeusmUserOwnPrivKeyChange: これらのオブジェクトは, ユーザーが自分の鍵を変更することを許可します。各ユーザーは自分のエントリ内のこれらのオブジェクトのみに対する書き込みアクセスを持つべきです。

重要: これらのオブジェクトは特別な鍵変更プロトコル (MIB モジュールのセクション 5 で説明) を使用して, 変更操作中に鍵が傍受または開示されないようにします。

View Configuration Example (ビュー構成の例)

典型的な VACM 構成には以下が含まれる可能性があります:

  1. 管理者ビュー (Administrator View): usmUserTable 全体への完全な読み書きアクセスと usmStats への読み取りアクセス

  2. ユーザー自己管理ビュー (User Self-Management View): usmUserTable 内の自分のエントリへの読み取りアクセス, 自分のエントリ内の usmUserOwnAuthKeyChangeusmUserOwnPrivKeyChange への書き込みアクセス

  3. 監視ビュー (Monitoring View): セキュリティ監視のための usmStats グループへの読み取り専用アクセス

  4. 制限付きビュー (Restricted View): usmUserTable へのアクセスなし, usmStats への制限付きまたはアクセスなし

Security Considerations for MIB Access (MIB アクセスのセキュリティ考慮事項)

  1. 列挙を防ぐ (Prevent Enumeration): usmUserTable への読み取りアクセスを制限することで, 攻撃者が有効なユーザー名を列挙するのを防ぎます。

  2. 鍵変更操作を保護する (Protect Key Change Operations): 鍵自体は直接読み取り可能ではありませんが, 無許可の鍵変更を防ぐために鍵変更メカニズムを保護する必要があります。

  3. 統計情報を監視する (Monitor Statistics): usmStats カウンターを定期的に監視することで, 以下を検出できます:

    • ブルートフォース認証試行 (usmStatsWrongDigests)
    • 時刻同期の問題 (usmStatsNotInTimeWindows)
    • 未知のユーザーの使用試行 (usmStatsUnknownUserNames)
  4. 監査ログの統合 (Audit Log Integration): SNMP セキュリティイベント (usmStats の変更から派生) をエンタープライズセキュリティ情報およびイベント管理 (SIEM) システムに統合することを検討してください。

Initial Configuration (初期構成)

SNMP エンジンの初期構成中:

  1. 完全な管理者権限を持つ少なくとも 1 人の初期ユーザーを構成しなければなりません (MUST)
  2. この初期ユーザーは, 安全な帯域外メカニズム (ローカルコンソールアクセスなど) を介して構成する必要があります。
  3. 初期ユーザーが構成されると, usmUserCloneFrom メカニズムを使用して SNMP 経由で追加のユーザーを作成できます。
  4. ブートストラップ中にデフォルトの資格情報が使用された場合, 初期ユーザーの資格情報は最初の使用後すぐに変更する必要があります。