Oracle® Solaris 11.2 でのファイルのセキュリティー保護とファイル整合性の検証

印刷ビューの終了

更新: 2014 年 7 月
 
 

異なるシステムからの目録の比較方法

異なるシステムの目録を比較することによって、システムが同様にインストールされているかどうか、または同期してアップグレードされているかどうかを判定できます。たとえば、システムを特定のセキュリティーターゲットにカスタマイズした場合は、この比較によって、そのセキュリティーターゲットを表す目録と、その他のシステムの目録の間の相違がすべて見つかります。

始める前に

root 役割になる必要があります。詳細は、Oracle Solaris 11.2 でのユーザーとプロセスのセキュリティー保護 の割り当てられている管理権利の使用を参照してください。

  1. 制御目録を作成します。
    # bart create options > control-manifest

    これらのオプションについては、bart(1M) のマニュアルページを参照してください。

  2. (オプション)目録を将来の使用のために保護されたディレクトリ内に保存します。

    例については、Step 3制御目録を作成する方法 を参照してください。

  3. テストシステム上で、同じ bart オプションを使用して目録を作成します。
    # bart create options > test1-manifest
  4. (オプション)目録を将来の使用のために保護されたディレクトリ内に保存します。
  5. 比較を実行するには、目録を中央の場所にコピーします。

    例:

    # cp control-manifest /net/test-server/var/adm/logs/bartlogs

    テストシステムが NFS マウントしたシステムでない場合は、sftp または別の信頼できる手段を使用して、目録を中央の場所にコピーします。

  6. 目録を比較し、その出力をファイルにリダイレクトします。
    # bart compare control-manifest test1-manifest > test1.report
  7. BART レポートを調べ、異常がないかを確認します。
使用例 2-3  /usr/bin ディレクトリ内の疑わしいファイルの識別

    この例では、2 つのシステム上の /usr/bin ディレクトリの内容を比較します。

  • 制御目録を作成します。

    # bart create -R /usr/bin > control-manifest.090713
    ! Version 1.1
    ! HASH SHA256
    ! Saturday, September 07, 2013 (11:11:17)
    # Format:
    #fname D size mode acl dirmtime uid gid
    #fname P size mode acl mtime uid gid
    #fname S size mode acl mtime uid gid
    #fname F size mode acl mtime uid gid contents
    #fname L size mode acl lnmtime uid gid dest
    #fname B size mode acl mtime uid gid devnode
    #fname C size mode acl mtime uid gid devnode
    /2to3 F 105 100555 owner@:read_data/read_xattr/write_xattr/execute/read_attribut
    es/write_attributes/read_acl/write_acl/write_owner/synchronize:allow,group@:read
    _data/read_xattr/execute/read_attributes/read_acl/synchronize:allow,everyone@:re
    ad_data/read_xattr/execute/read_attributes/read_acl/synchronize:allow 4bf9d261 0
    2 154de3e7bdfd0d57a074c9fae0896a9e2e04bebfe5e872d273b063319e57f334
    /7z F 509220 100555 owner@:read_data/read_xattr/write_xattr/execute/read_attribu
    tes/write_attributes/read_acl/write_acl/write_owner/synchronize:allow,group@:rea
    d_data/read_xattr/execute/read_attributes/read_acl/synchronize:allow,everyone@:r
    ead_data/read_xattr/execute/read_attributes/read_acl/synchronize:allow 4dadc48a 0
    2 3ecd418eb5be3729ffe7e54053be2d33ee884205502c81ae9689cd8cca5b0090
    ...
  • 制御システムと比較する各システムで同一の目録を作成します。

    # bart create -R /usr/bin > system2-manifest.101013
    ! Version 1.1
    ! HASH SHA256
    ! Monday, October 10, 2013 (10:10:22)
    # Format:
    #fname D size mode acl dirmtime uid gid
    #fname P size mode acl mtime uid gid
    #fname S size mode acl mtime uid gid
    #fname F size mode acl mtime uid gid contents
    #fname L size mode acl lnmtime uid gid dest
    #fname B size mode acl mtime uid gid devnode
    #fname C size mode acl mtime uid gid devnode
    /2to3 F 105 100555 owner@:read_data/read_xattr/write_xattr/execute/read_attribut
    es/write_attributes/read_acl/write_acl/write_owner/synchronize:allow,group@:read
    _data/read_xattr/execute/read_attributes/read_acl/synchronize:allow,everyone@:re
    ad_data/read_xattr/execute/read_attributes/read_acl/synchronize:allow 4bf9d261 0
    2 154de3e7bdfd0d57a074c9fae0896a9e2e04bebfe5e872d273b063319e57f334
    ...
  • これらの目録を同じ場所にコピーします。

    # cp control-manifest.090713 /net/system2.central/bart/manifests
  • 目録を比較します。

    # bart compare control-manifest.090713 system2.test.101013 > system2.report
    /su:
    gid  control:3  test:1
    /ypcat:
    mtime  control:3fd72511  test:3fd9eb23

この出力は、/usr/bin ディレクトリ内の su ファイルのグループ ID が、制御システムのグループ ID と同じでないことを示しています。この情報は、テストシステム上に別のバージョンのソフトウェアがインストールされたことを示している可能性があります。GID が変更されているため、だれかがファイルを改ざんしたことが可能性として考えられます。