6


監査スクリプト

この章では、監査スクリプトの使用、追加、変更、および削除について説明します。監査スクリプトは、システムのセキュリティー状態を定期的にチェックするための簡単な方法です。システムのセキュリティーがセキュリティープロファイルに適合していることを確認するために、定期的にシステムをチェックしてください。

標準の監査スクリプトは、終了スクリプトによりシステムが変更されたことを確認し、強化処理後に発生した不一致があれば報告します。監査スクリプトには対応する終了スクリプトと同じ名前を使用しますが、接尾辞は異なります。終了スクリプトの接尾辞は .fin ですが、監査スクリプトには .aud という接尾辞を使用します。

この章では、以下の項目を説明します。


監査スクリプトのカスタマイズ

この節では、既存の監査スクリプトのカスタマイズと、新しい監査スクリプトの作成についての手順と推奨事項を説明します。また、監査スクリプト機能を使用する際のガイドラインについても説明します。

標準の監査スクリプトをカスタマイズする

監査スクリプトは、Solaris Security Toolkit ドライバおよび終了スクリプトと同じように、カスタマイズすることができます。



caution icon

注意 - Solaris Security Toolkit ソフトウェアで提供されているスクリプトを変更するときは、注意が必要です。直接元のスクリプトを変更せずに、必ずスクリプトのコピーを作成して、それを変更するようにしてください。直接元のスクリプトを変更した場合、Solaris Security Toolkit ソフトウェアをアップグレードまたは削除するときに、機能が失われる可能性があります。



できる限りコードの変更は必要最低限にとどめ、その変更について記録に残しておいてください。

監査スクリプトをカスタマイズするには、環境変数を使用します。大部分のスクリプトの動作は環境変数を使用して大幅に変更できるため、直接スクリプトコードを変更する必要はありません。これが不可能な場合は、user.run スクリプトで使用する、カスタマイズ版のスクリプトを開発することで、関数を変更しなければならない場合があります。すべての環境変数のリストと、環境変数を定義する際のガイドラインについては、第 7 章を参照してください。



caution icon

注意 - 標準の終了スクリプトをカスタマイズしたり、新しい終了スクリプトを作成したときは、必ず関連する監査スクリプトにも同様の変更を行なってください。





注 - 変更をより多くのユーザーのために役立てたいときは、拡張機能に関するバグレポートや要望を提出することをご検討ください。Solaris Security Toolkit 開発チームは、ユーザーに役立つソフトウェアの改善方法を常に求めております。




procedure icon  監査スクリプトをカスタマイズするには

使用しているシステムおよび環境に合わせて標準の監査スクリプトをカスタマイズするには、次の手順を実行します。元のファイルが更新されたときに、カスタマイズしたファイルが更新されたファイルで上書きされないようにするには、この手順を使用してください。pkgrm コマンドを使用して Solaris Security Toolkit ソフトウェアを削除しても、カスタマイズしたファイルは削除されません。

1. カスタマイズする監査スクリプトとその関連ファイルをコピーします。

監査スクリプトとその関連ファイルについては、『Solaris Security Toolkit 4.2 管理マニュアル』の第 6 章を参照してください。

2. コピーしたファイルを、カスタムスクリプトおよびカスタムファイルとして識別される名前に変更します。

命名規則については、『Solaris Security Toolkit 4.2 管理マニュアル』の第 1 章「ガイドライン」を参照してください。

3. カスタムスクリプトとファイルを変更します。

finish.init ファイルは、監査スクリプトの構成変数をすべて提供するファイルです。変数とその正しい値を user.init ファイルに追加することで、finish.init ファイルで指定されている変数のデフォルト値を無効にすることができます。このファイルには、各変数と、その変数の監査スクリプトでの影響と使用について、詳しい説明が記載されています。このファイルと、その環境変数の変更についての詳細は、第 3 章を参照してください。変更をすべてのドライバに適用するのではなく、変更を特定のドライバに限定したい場合は、そのドライバを変更します。

監査スクリプトをカスタマイズする場合、監査機能を正確なものにするためには、カスタマイズする機能に終了スクリプトと監査スクリプトのどちらもアクセスできることが重要となります。これは、他の init ファイルを変更したり、スクリプトを直接変更したりするのではなく、user.init スクリプトの環境変数を変更することで、最も簡単かつ効果的に実現できます。

コード例 6-1 では、ソフトウェアパッケージがインストールされて構成され、システム再起動時に実行されるように設定されていることをチェックすることで、install-openssh.audit スクリプトが正しいソフトウェアインストールをどのように検証するかを示しています。この例では、ソフトウェアパッケージがインストールされて構成され、システム再起動時に実行されるように設定されていることをチェックしています。


コード例 6-1 install-openssh.aud スクリプト例

# 
#!/bin/sh
# Copyright (c) 2005 by Sun Microsystems, Inc.
# All rights reserved.
#
#ident  "@(#)install-openssh.aud        1.3     07/12/05 SMI"
#
# ***************************************************************
# Service definition section.
# ***************************************************************
#--------------------------------------------------------------
service="OpenSSH"
servfil="install-openssh.aud"
servhdr_txt="
#Rationale for Verification Check:
#This script will attempt to determine if the OpenSSH software is
#installed, configured and running on the system. Note that this
#script expects the OpenSSH software to be installed in package
#form in accordance with the install-openssh.fin Finish script.
 
#Determination of Compliance:
 
#It indicates a failure if the OpenSSH package is not installed,
#configured, or running on the system.
"
 
#--------------------------------------------------------------
 
servpkg="
   OBSDssh
"
 
#--------------------------------------------------------------
 
servsrc="
   ${JASS_ROOT_DIR}/etc/rc3.d/S25openssh.server
"
 
#--------------------------------------------------------------
 
servcfg="
   ${JASS_ROOT_DIR}/etc/sshd_config
"
 
#--------------------------------------------------------------
 
servcmd="
   /opt/OBSDssh/sbin/sshd
"
 
# ****************************************************************
# Check processing section.
# ****************************************************************
 
start_audit "${servfil}" "${service}" "${servhdr_txt}"
 
logMessage "${JASS_MSG_SOFTWARE_INSTALLED}"
 
if check_packageExists "${servpkg}" 1 LOG ; then
 pkgName="`pkgparam -R ${JASS_ROOT_DIR} ${servpkg} NAME`"
 pkgVersion="`pkgparam -R ${JASS_ROOT_DIR} ${servpkg} VERSION`"
 pkgBaseDir="`pkgparam -R ${JASS_ROOT_DIR} ${servpkg} BASEDIR`"
 pkgContact="`pkgparam -R ${JASS_ROOT_DIR} ${servpkg} EMAIL`"
 
 logNotice "Package has description '${pkgName}'"
 logNotice "Package has version '${pkgVersion}'"
 logNotice "Package has base directory '${pkgBaseDir}'"
 logNotice "Package has contact '${pkgContact}'"
 
 logMessage "\n${JASS_MSG_SOFTWARE_CONFIGURED}"
 check_startScriptExists "${servsrc}" 1 LOG
 check_serviceConfigExists "${servcfg}" 1 LOG
 
 logMessage "\n${JASS_MSG_SOFTWARE_RUNNING}"
 check_processExists "${servcmd}" 1 LOG
fi
 
finish_audit

 

新しい監査スクリプトを作成する

新しい監査スクリプトを作成して、使用している Solaris Security Toolkit ソフトウェアに統合することができます。通常、監査スクリプトは Bourne シェルや Solaris 10 OS の Perl で作成されるため、新機能を追加するのは比較的簡単です。UNIX シェルスクリプトの作成経験があまりない開発者は、同様の機能を実行する既存の監査スクリプトを調べて、目的のタスクを実行する方法を習得し、アクションの正しいシーケンスを理解してください。

終了スクリプトの新規作成と同じ規則が、監査スクリプトの新規作成にも適用されます。これらの規則については、終了スクリプトのカスタマイズを参照してください。



注 - 監査スクリプトと終了スクリプトは連携しています。新しい監査スクリプトを追加するときは、対応する終了スクリプトも必ず追加してください。




標準の監査スクリプトの使用

監査スクリプトは、Solaris Security Toolkit ソフトウェア内で、セキュリティー状態とあらかじめ定義されているセキュリティープロファイルを比較することにより、自動的にセキュリティー状態を検証する方法を提供します。セキュリティー変更が正しく行われたことを検証し、システムのセキュリティー状態と設定したセキュリティープロファイルの間に不一致がある場合に報告を受け取るときには、監査スクリプトを使用します。監査スクリプトを使用してシステムのセキュリティーを検証する方法についての詳細は、『Solaris Security Toolkit 4.2 管理マニュアル』の第 6 章を参照してください。

この節では、Audit ディレクトリに格納されている標準の監査スクリプトについて説明します。ここで説明するのは、監査スクリプトで実行される機能だけです。

Audit ディレクトリ内のスクリプトは、以下のカテゴリに分かれています。これは、Finish ディレクトリの終了スクリプトのカテゴリと同じです。

これらの標準の監査スクリプトに加え、Solaris Security Toolkit ソフトウェアでは、製品固有の監査スクリプトも提供しています。製品固有の監査スクリプトのリストについては、製品固有の監査スクリプトの使用を参照してください。

無効化 (disable) 監査スクリプト

この節では、以下の無効化 (disable) 監査スクリプトについて説明します。

disable-ab2.aud



注 - Solaris OS バージョン 9 および 10 では AnswerBook2 ソフトウェアは使用されなくなったため、このスクリプトは、Solaris OS バージョン 2.5.1 〜 8 を実行しているシステムでのみ使用します。



このスクリプトは、AnswerBook2 サービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。

disable-apache.aud



注 - このスクリプトは、サンによってパッケージ化され、Solaris OS バージョン 8 または 9 に組み込まれている Apache Web Server についてのみチェックを行います。



このスクリプトは、Apache Web Server がシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。

disable-apache2.aud



注 - このスクリプトは、Solaris 10 OS を実行しているシステムでのみ使用します。



このスクリプトは、Apache 2 サービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。

disable-appserv.aud



注 - このスクリプトは、Solaris 10 OS を実行しているシステムでのみ使用します。



このスクリプトは、Sun Java Application Server がシステムにインストールされ、構成され、実行されているか判定します。このソフトウェアが、インストールされているか、動作するよう構成されている場合は、失敗が表示されます。

disable-asppp.aud



注 - このスクリプトは、Solaris OS バージョン 2.5.1 〜 8 を実行しているシステムでのみ使用します。Solaris 9 および 10 OS では、このサービスは PPP サービスに置き換わっており、検証は disable-ppp.aud スクリプトを使用して行われます。



このスクリプトは、ASPPP サービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。

disable-autoinst.aud

このスクリプトは、自動インストール機能がシステムにインストールされ、有効になっているか判定します。このソフトウェアが、インストールされているか、動作するよう構成されている場合は失敗が表示されます。

disable-automount.aud



注 - 自動マウントサービスが必要な場合には、このスクリプトを使用しないでください。また、このサービスは RPC サービスに依存しているため、disable-rpc.fin スクリプトも使用しないでください。



このスクリプトは、自動マウントサービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。

disable-dhcpd.aud



注 - このスクリプトは、Solaris OS バージョン 8 〜 10 の DHCP サーバーにのみ使用します。



このスクリプトは、DHCP サービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。

disable-directory.aud



注 - このスクリプトは、Solaris 9 または 10 OS に付属している Sun Java System Directory Server に対してのみチェックを行います。別パッケージの製品や、Solaris OS の他のバージョンに付属している Sun Java System Directory Server の監査は行いません。



このスクリプトは、Sun Java System Directory サービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。

disable-dmi.aud



注 - このスクリプトは、Solaris OS バージョン 2.6 〜 10 を実行しているシステムでのみ使用します。



このスクリプトは、DMI サービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。

disable-dtlogin.aud



注 - このスクリプトは、Solaris OS バージョン 2.6 〜 10 を実行しているシステムでのみ使用します。



このスクリプトは、CDE ログインサーバー (dtlogin) がシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。

disable-face-log.aud



注 - このスクリプトは、Solaris 10 OS を実行しているシステムでのみ使用します。



このスクリプトは、/usr/oasys/tmp/TERRLOG ファイルが存在し、グループおよびその他のユーザーに対する書き込み権がないことを検証します。ファイルが グループおよびその他のユーザーによるグローバル書き込み権を持っている場合、失敗が表示されます。

disable-IIim.aud



注 - このスクリプトは、Solaris OS バージョン 9 および 10 を実行しているシステムでのみ使用します。



このスクリプトは、IIim サービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実際に実行されている場合は、失敗が表示されます。

disable-ipv6.aud



注 - このスクリプトは、Solaris OS バージョン 8、9 および 10 を実行しているシステムでのみ使用します。



このスクリプトは、IPv6 インタフェースを plumb させる IPv6 ホスト名ファイル /etc/hostname6.* が存在するかどうかをチェックします。また、このスクリプトでは、in.ndpd サービスが開始されているかどうかについてもチェックします。IPv6 インタフェースが構成されて plumb されている、またはサービスが実行されている場合は、失敗が表示されます。

disable-kdc.aud



caution icon

注意 - Solaris 9 OS では、JASS_DISABLE_MODEconfに設定されている場合は、kdc.confファイルが無効になるため、システムに Kerberos クライアントと KDC サーバー両方としての機能があるかどうかが判定されます。システムが Kerberos クライアントとして機能しなければならない場合は、このスクリプトをこのような方法では使用しないでください。





注 - このスクリプトは、Solaris OS バージョン 9 および 10 を実行しているシステムでのみ使用します。



このスクリプトは、KDC サービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。

disable-keyboard-abort.aud



注 - このスクリプトは、Solaris OS バージョン 2.6 〜 10 を実行しているシステムでのみ使用します。





注 - 一部のシステムには、キースイッチが安全位置に設定できるものがあります。これらのシステムでは、キースイッチを安全位置に設定すると、kdb コマンドによるソフトウェアのデフォルト設定が無効になります。



このスクリプトは、キーボードのアボートシーケンスを無視するようにシステムが構成されているかどうか判定します。通常、キーボードのアボートシーケンスが開始されると、オペレーティングシステムが中断されて、コンソールは OpenBoot PROM モニターまたはデバッガに入ります。このスクリプトでは、システムがこの方法で中断されるかどうか判定します。

disable-keyserv-uid-nobody.aud

このスクリプトは、ユーザー nobody がデフォルトのキーを使用できないように keyserv サービスが構成されているかどうか判定します。keyserv プロセスが
-d フラグ付きで実行されておらず、ENABLE_NOBODY_KEYS パラメータが NO に設定されていない場合に、失敗が表示されます (Solaris OS バージョン 9 および 10 の場合)。

disable-ldap-client.aud



注 - このスクリプトは、Solaris OS バージョン 8 〜 10 を実行しているシステムでのみ使用します。



このスクリプトは、LDAP クライアントサービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。

disable-lp.aud

このスクリプトは、ラインプリンタ (lp) サービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。また、このスクリプトは、lp ユーザーが cron 機能の使用を許可されているか、または crontab ファイルがインストールされている場合は、失敗を表示します。

disable-mipagent.aud



注 - このスクリプトは、Solaris OS バージョン 8 〜 10 にのみ使用します。



このスクリプトは、モバイル IP サービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。

disable-named.aud



注 - このサービスを無効にしても、システムがドメインネームシステム (DNS) クライアントとして動作する機能には影響しません。



このスクリプトは、DNS サーバーがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、(構成ファイルにより) 動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。

このスクリプトは、Sun Microsystems によってパッケージ化され、Solaris OS に組み込まれている DNS サーバーについてのみチェックを行います。

disable-nfs-client.aud



caution icon

注意 - NFS クライアントサービスが必要な場合には、このスクリプトを使用しないでください。また、このサービスは RPC サービスに依存しているため、disable-rpc.finスクリプトも使用しないでください。



このスクリプトは、NFS クライアントサービスがシステムで構成されて、実行されているか判定します。ソフトウェアがシステムで動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。

disable-nfs-server.aud



caution icon

注意 - NFS サービスが必要な場合には、このスクリプトを使用しないでください。また、このサービスは RPC サービスに依存しているため、disable-rpc.finスクリプトも使用しないでください。



このスクリプトは、NFS サービスがシステムで構成されて、実行されているか判定します。ソフトウェアがシステムで動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。

disable-nscd-caching.aud

このスクリプトは、passwdgrouphost、または ipnodes サービスのいずれかで、値が 0 に設定されていない、正または負の数の生存時間があるかどうか判定します。値が 0 でない場合は、失敗が表示されます。

disable-picld.aud



注 - このスクリプトは、Solaris OS バージョン 8 および 9 を実行しているシステムでのみ使用します。



このスクリプトは、PICL サービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。

disable-power-mgmt.aud



注 - このスクリプトは、Solaris OS バージョン 2.6 〜 10 を実行しているシステムでのみ使用します。



このスクリプトは、電源管理サービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。

disable-ppp.aud



注 - このサービスは Solaris 8 OS (7/01) で導入され、以前の ASPPP サービスを補完するものです。このスクリプトは、Solaris OS バージョン 8 〜 10 を実行しているシステムでのみ使用します。



このスクリプトは、PPP サービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。

disable-preserve.aud

このスクリプトは、保持機能が有効になっているかどうか判定します。有効である場合は、失敗が表示されます。

disable-remote-root-login.aud



注 - Solaris Secure Shell の使用など、/bin/login を使用しないでシステムにアクセスする他のメカニズムでは、システムがこのテストにパスした場合でも、直接 root にアクセスできます。



このスクリプトは、root ユーザーが直接ログインを許されているのか、または telnet などの /bin/login を使用するプログラムにより遠隔でシステムに対してコマンドを実行している場合、それが判定され、失敗が表示されます。

disable-rhosts.aud



注 - このスクリプトは、Solaris OS バージョン 2.6 〜 10 を実行しているシステムでのみ使用します。



このスクリプトは、rhostshosts.equiv の機能が、/etc/pam.conf の PAM 構成によって有効になっているかどうか判定します。この機能が /etc/pam.conf ファイルの pam_rhosts_auth.so.1 モジュールを使用して有効になっている場合は、失敗が表示されます。

disable-routing.aud



注 - このスクリプトは、Solaris OS バージョン 5.51 〜 10 を実行しているシステムでのみ使用します。



このスクリプトは、あるネットワークから別のネットワークへのネットワークパケットのルーティングまたはパケット転送が無効であるかどうかを判断します。

disable-rpc.aud



caution icon

注意 - システムで、自動マウント、NFS、NIS、NIS+、CDE、およびボリューム管理 (Solaris 9 および 10 OS のみ) のいずれかのサービスを使用している場合は、RPC ポートマッパー機能を無効にしないでください。



このスクリプトは、RPC サービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。また、各サービスが rpcbind ポートマッパーを使用して登録されている場合にも、このスクリプトは失敗が表示されます。

disable-samba.aud



注 - このスクリプトは、Solaris OS バージョン 9 および 10 を実行しているシステムでのみ使用します。



このスクリプトは、Samba サービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。チェック時に無効と判断されるのは、Solaris OS に付属の Samba サービスだけです。システムにインストールされているその他の Samba ソフトウェアには影響を与えません。

disable-sendmail.aud



注 - Solaris Security Toolkit ソフトウェアの変更では、Solaris OS システムが電子メールを受信するよう構成されていないことのみ検証されます。送信する電子メールは正常に処理されます。



デフォルトでは、sendmail サービスは、ローカルメールの転送と、遠隔発信元からの着信メールの受信の両方を行うように構成されています。システムをメールサーバーにしない場合は、着信メッセージを受け取らないように sendmail サービスを構成することができます。このスクリプトでは、sendmail サービスが着信メッセージを受け取らないように構成されているかどうかチェックします。

使用している Solaris OS のバージョンによって、このチェックを実行する方法が異なります。

 

各 Solaris OS バージョンに対応したチェックの結果、sendmail サービスが無効でない場合に、失敗が表示されます。

disable-slp.aud



注 - このスクリプトは、Solaris OS バージョン 8、9 および 10 を実行しているシステムでのみ使用します。



このスクリプトは、SLP サービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。

disable-sma.aud



注 - このスクリプトは、Solaris 10 OS を実行しているシステムでのみ使用します。



このスクリプトは、SMA サービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステム上で呼び出される、動作するよう構成されている、あるいは実際に実行されている場合は、失敗が表示されます。

disable-snmp.aud



注 - このスクリプトは、Solaris OS バージョン 2.6 〜 10 に搭載されている SNMP エージェントのみチェックします。



このスクリプトは、SNMP サービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。このスクリプトでは、Sun 以外の SNMP エージェントがシステムで機能しているかどうかを検証しません。

disable-spc.aud



注 - このスクリプトは、Solaris OS バージョン 2.6 〜 10 を実行しているシステムでのみ使用します。



このスクリプトは、SPC サービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。

disable-ssh-root-login.aud



注 - このスクリプトは、Solaris 9 または 10 OS を実行し、Solaris Secure Shell パッケージがインストールされて有効になっているシステムでのみ使用します。



このスクリプトでは、Solaris OS バージョン 9 および 10 に搭載されている Solaris Secure Shell サービスが root アカウントへの遠隔アクセスを制限していない場合に、失敗が表示されます。

disable-syslogd-listen.aud



注 - SYSLOG サーバーの機能は遠隔で生成された SYSLOG ログメッセージを受け取ることであるため、このスクリプトは SYSLOG サーバーでは使用しないでください。このスクリプトは、Solaris OS バージョン 8 〜 10 を実行しているシステムでのみ使用します。



スクリプトでは、syslogd プロセスの遠隔ログ機能を許可しないオプションを設定します。このスクリプトは、SYSLOG サービスが遠隔ログ接続を受け付けるように構成されているかどうか判定します。syslogd プロセスが -t フラグ付きで実行されていない (Solaris OS 8)、および LOG_FROM_REMOTE パラメータが NO に設定されていない (Solaris OS バージョン 9 および 10) 場合に、失敗が表示されます。

disable-system-accounts.aud

このスクリプトは、JASS_ACCT_DISABLE 環境変数にリストされている各アカウント名を調べ、JASS_SHELL_DISABLE 変数で定義されているシェルを使用するように構成されていないアカウントに対して失敗が表示されます。また、JASS_SHELL_DISABLE 変数にリストされているシェルプログラムがシステム上に存在しない場合も、失敗が表示されます。



注 - このスクリプトでチェックするのは、/etc/passwd ファイルにリストされているアカウントだけです。他のネームサービス (NIS、NIS+、または LDAP) にリストされているアカウントはチェックしません。



disable-uucp.aud

このスクリプトは、UUCP サービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。また、nuucp ユーザーが存在する (Solaris 9 OS およびそれ以前) またはこのユーザーがロックされてない (Solaris 10) 場合、in.uucpd/etc/inetd.conf に存在する場合、あるいは uucp crontab ファイルがインストールされている場合も失敗が表示されます。

disable-vold.aud



注 - システムで、リムーバブルメディア (フロッピーディスク、CD-ROM など) の自動取り付けおよび取り外しを行う必要がある場合は、このスクリプトを使用しないでください。



このスクリプトは、VOLD サービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。

disable-wbem.aud



注 - WBEM サービスが必要な場合には、このスクリプトを使用しないでください。また、このサービスは RPC サービスに依存しているため、disable-rpc.fin スクリプトも使用しないでください。Solaris Management Console を使用する必要がある場合は、このスクリプトを使用しないでください。このスクリプトは、Solaris OS バージョン 8 〜 10 を実行しているシステムでのみ使用します。



このスクリプトは、WBEM サービスがシステムにインストールされ、構成され、実行されているか判定します。ソフトウェアがシステムにインストールされている、動作するよう構成されている、あるいは実行されている場合は、失敗が表示されます。

disable-xfs.aud



注 - このスクリプトは、Solaris 10 OS を実行しているシステムでのみ使用します。



このスクリプトは、xfs サービスがシステムにインストールされ、有効にされ、実行されているか判定します。ソフトウェアがシステム上で、動作するよう有効である、あるいは実際に実行されている場合は、失敗が表示されます。

disable-xserver.listen.aud



注 - このスクリプトは、Solaris OS バージョン 9 および 10 を実行しているシステムでのみ使用します。



X11 サーバーが TCP トランスポートを使用してクライアント接続を受け付けるように構成されている場合に、失敗が表示されます。また、TCP トランスポートの使用を許可する構成で X11 サーバーが実行されている場合にも、失敗が表示されます。

有効化 (enable) 監査スクリプト

この節では、以下の有効化 (enable) 監査スクリプトについて説明します。

enable-account-lockout.aud



注 - このスクリプトは、Solaris 10 OS を実行しているシステムでのみ使用します。



このスクリプトは、LOCK_AFTER_RETRIES の値が /etc/security/policy.conf ファイルで正しく定義されているかを検証します。また、/etc/user_attr で指定されている LOCK_AFTER_RETRIES 以外の値を持つユ―ザーが存在しないことを確認します。

enable-bart.aud



注 - このスクリプトは、Solaris 10 OS を実行しているシステムでのみ使用します。



このスクリプトは BART が実行されていることを検証し、BART の規則とマニフェストファイルを比較します。

BART 規則ファイルが存在するかどうか、また存在する場合はその構成が実行中のドライバおよびその BART 規則ファイルと矛盾がないかどうかを判断します。BART 規則ファイルの構成が実行中のドライバおよびその BART 規則ファイルと矛盾する場合、スクリプトは $JASS_FILES/var/opt/SUNWjass/bart/rules から規則ファイルをコピーします。またこのスクリプトは、/var/opt/SUNWjass/BART/manifestsJASS_TIMESTAMP.txt という名前の新しいマニフェスト (20050711152248.txt など) も作成します。

さらにこのスクリプトは、新規作成されたマニフェストファイルと最新のマニフェストファイルとの間の違いを報告し、使用される BART マニフェストの名前を含む監査メッセージを生成し、検出された問題について以前のマニフェストファイルまたはフィンガープリントデータベースをチェックすることをユーザーに勧めます。



注 - enable-bart.aud スクリプトにより報告されるエラーは必ずしもアラームの原因にはなりません。追加、削除、変更されたファイルまたはファイルアクセス権など、スクリプトがチェックするディレクトリで変更が検出されると、必ずエラーが報告されます。ただし、enable-bart.aud スクリプトにより作成される出力で潜在的な問題がないかを確認する必要はありません。



enable-bsm.aud



注 - このスクリプトは、Solaris OS バージョン 8 〜 10 を実行しているシステムでのみ使用します。



このスクリプトは、SunSHIELD Solaris 基本セキュリティーモジュール (Solaris BSM) 監査機能が有効で、システム上で実行されているか、このサービスが /etc/system ファイルに読み込まれているか、および audit_warn 別名が /etc/mail/aliases で定義されているか判定します。これらのうちで 1 つ以上のチェックに失敗した場合は、失敗が表示されます。

enable-coreadm.aud



注 - このスクリプトは、Solaris OS バージョン 7 〜 10 を実行しているシステムでのみ使用します。



このスクリプトは、JASS_CORE_DIR で指定されているディレクトリに、生成されたコアファイルが格納されているか確認します。Solaris OS バージョン 7 〜 9 に搭載されている coreadm 機能が構成されていない場合に、失敗が表示されます。また、JASS_CORE_PATTERN で指定されたタグがコアファイルに付けられていない場合も、エラー状態になります。

enable-ftp-syslog.aud

このスクリプトは、FTPサービスが、セッションと接続情報を記録するように構成されているかどうか判定します。FTPサービスの記録が有効になっていない場合は、失敗が表示されます。

enable-ftpaccess.aud



注 - このスクリプトは、Solaris OS バージョン 9 および 10 を実行しているシステムでのみ使用します。



このスクリプトは、FTP サービスが /etc/ftpd/ftpaccess ファイルを使用するように構成されているかどうか判定します。FTP サービスが正しく構成されていない場合は、失敗が表示されます。

enable-inetd-syslog.aud

このスクリプトは、インターネットサービスデーモン (inetd) サービスがセッションと接続情報を記録するように構成されているかどうか判定します。

enable-ipfilter.aud



注 - このスクリプトは、Solaris 10 OS を実行しているシステムでのみ使用します。



このスクリプトは、すべての使用可能なネットワークインタフェースの ipfilter 構成を確認し、正しい IP フィルタ規則セットがインストールされていることを検証します。スクリプトは次の動作を行います。

enable-password-history.aud



注 - このスクリプトは、Solaris 10 OS を実行しているシステムでのみ使用します。



このスクリプトは、システム上のパスワード履歴の正しい構成を検証します。/etc/default/passwd ファイルをチェックし、HISTORY 値が指定されているかどうかを判断します。

enable-priv-nfs-ports.aud

このスクリプトは、1024 未満の特権範囲のポートから発信されたクライアント通信のみを受け付けるように NFS サービスが構成されているかどうか判定します。NFS サービスが正しく構成されていない場合は、失敗が表示されます。

enable-process-accounting.aud

このスクリプトは、プロセスアカウンティングソフトウェアがシステムにインストールされているか、有効になっているか、あるいは実行されているか判定します。いずれにも該当しない場合は、失敗が表示されます。

enable-rfc1948.aud



注 - このスクリプトは、Solaris OS バージョン 2.6 〜 10 を実行しているシステムでのみ使用します。



このスクリプトは、RFC 1948 を使用して TCP シーケンス番号を生成するようにシステムが構成されているかどうか判定します。保存されている構成と、実際の実行時設定の両方をチェックします。RFC 1948 準拠の TCP シーケンス番号生成を行うようにシステムが構成されていない場合は、失敗が表示されます。

enable-stack-protection.aud



注 - このスクリプトは、Solaris OS バージョン 2.6 〜 10 を実行しているシステムでのみ使用します。



このスクリプトは、スタックの保護と例外のログを有効にするように、noexec_user_stack オプションと noexec_user_stack_log オプションが /etc/system ファイルで設定されているかどうか判定します。これらのオプションが有効になっていない場合は、失敗が報告されます。

enable-tcpwrappers.aud



注 - このスクリプトは、付属の TCP ラッパーパッケージを使用している Solaris OS バージョン 9 および 10 を実行しているシステムでのみ使用します。



このスクリプトは、TCPラッパーが、Solaris Security Toolkit ソフトウェアに含まれている hosts.allow|deny テンプレートを使用してインストールまたは構成されているか、ENABLE_TCPWRAPPERS 変数を使用して有効になっているか判定します。システムで TCPラッパーが使用されていない場合は、失敗が報告されます。

Solaris 10 OS 専用:

また、このスクリプトは次の動作も行います。

インストール (install) 監査スクリプト

この節では、以下のインストール (install) 監査スクリプトについて説明します。

install-at-allow.aud

このスクリプトは、JASS_AT_ALLOW 変数にリストされているユーザー名が、/etc/cron.d/at.allow ファイルに存在しているかどうか判定します。JASS_AT_ALLOW で定義されているユーザー名リストは、デフォルトでは空です。このチェックにパスするには、各ユーザー名が /etc/passwd ファイルと /etc/cron.d/at.allow ファイルの両方に存在している必要があります。さらに、ユーザー名は /etc/cron.d/at.deny ファイルに存在していてはなりません。どちらのファイルにもユーザー名がリストされていない場合は、失敗が表示されます。

install-fix-modes.aud



注 - このスクリプトは、Solaris OS バージョン 2.5.1 〜 9 を実行しているシステムでのみ使用します。



このスクリプトは、Fix Modes プログラムがシステムにインストールされ、実行されていたか判定します。このソフトウェアがインストールされていない、あるいは実行されていなかった場合は、失敗が表示されます。さらにこのスクリプトは、デバッグモードで Fix Modes プログラムを使用して、その他のファイルシステムオブジェクトを変更する必要があるかについても判定します。

install-ftpusers.aud

このスクリプトは、JASS_FTPUSERS パラメータにリストされているユーザー名が ftpusers ファイルに存在しているかどうか判定します。

install-jass.aud

このスクリプトは、Solaris Security Toolkit (SUNWjass) パッケージがシステムにインストールされているかどうか判定します。このパッケージがインストールされていない場合は、失敗が報告されます。

install-loginlog.aud

このスクリプトは、/var/adm/loginlog ファイルが存在しているか、このファイルに対する適切な所有権とアクセス権があるかチェックします。このファイルが存在していない、アクセス権が無効である、あるいは所有者が root アカウントを持っていない場合は、失敗が報告されます。

install-md5.aud

このスクリプトは、MD5 ソフトウェアがシステムにインストールされているかどうか判定します。このソフトウェアがインストールされていない場合は、失敗が報告されます。

install-nddconfig.aud

このスクリプトは、Sun BluePrints OnLine 掲載記事『Solaris Operating Environment Network Settings for Security』で指定されている、Solaris Security Toolkit ソフトウェアに付属の nddconfig 実行コントロールスクリプトファイルが、対象システムにコピーされ、その設定が対象システム上でアクティブにされているか判定します。

このスクリプトは、オブジェクトごとに以下のチェックを行います。

1. ソースファイルとターゲットファイルのタイプ (通常ファイル、シンボリックリンク、またはディレクトリ) が一致していることを確認する

2. ソースファイルとターゲットファイルの内容が同じであることを確認する

このスクリプトでは、nddconfig スクリプトで定義されている設定が、実行中のシステムで実際に機能しているかについても確認します。このスクリプトは、特に、スクリプト名が変更されていた場合や、同様のことを実行するために他のスクリプトが使用される場合には、Solaris Security Toolkit の nddconfig スクリプトのコピーを使用してより正確な結果を報告します。

上記のチェックのいずれかが正しくなかった場合は、失敗が表示されます。

install-newaliases.aud



注 - このスクリプトは、Solaris OS バージョン 2.5.1 〜 8 を実行しているシステムでのみ使用します。



このスクリプトは、/usr/bin/newaliases プログラムが存在するかどうかチェックします。このファイルが存在しないか、またはシンボリックリンクでない場合は、失敗が示されます。

install-openssh.aud



注 - このスクリプトは、Solaris OS バージョン 2.5.1 〜 8 を実行しているシステムでのみ使用します。Solaris 9 および 10 OS には Secure Shell ソフトウェアが含まれているので、Solaris 9 および 10 OS をインストールする場合はこのスクリプトは使用しません。



このスクリプトは、このスクリプトで指定されている OpenSSH パッケージがインストールされ、構成されているか判定します。このパッケージがインストールされていない場合は、失敗が報告されます。

install-recommended-patches.aud

このスクリプトは、推奨およびセキュリティパッチクラスタファイルに記載されているパッチがシステムにインストールされているか判定します。パッチ情報は、テスト対象システムの Solaris OS バージョンに基づいて、JASS_HOME_DIR/Patches ディレクトリから収集されます。いずれかのパッチがインストールされていない場合は、失敗が表示されます。

インストールされているパッチのバージョンがパッチ順ファイルにリストされているバージョン以上である場合は、成功が表示されます。

install-sadmind-options.aud



注 - このスクリプトは、Solaris OS バージョン 2.5.1 〜 9 を実行しているシステムでのみ使用します。



このスクリプトは、sadmind サービスが /etc/inet/inetd.conf ファイルに存在しているかどうか判定します。存在している場合は、JASS_SADMIND_OPTIONS 変数で定義されているとおりにオプションが設定されているかチェックします。デフォルトの設定は -S 2 です。

install-security-mode.aud

このスクリプトは、EEPROM セキュリティーモードの状態をチェックします。このモードが command または full でない場合は、警告を表示します。また、PROM の失敗したログインカウンタをチェックし、そのカウンタがゼロでない場合にも警告を表示します。



注 - install-security-mode.fin スクリプトではシステムのセキュリティーモードを変更できないため、スクリプトでは失敗を報告するのではなく、適合していないという警告だけを表示します。



install-shells.aud

このスクリプトは、JASS_SHELLS パラメータで定義されているシェルが、shells ファイルにリストされているか判定します。JASS_SHELLS で定義されているシェルを 表 6-1 に示します。


表 6-1 JASS_SHELLS で定義されているシェルのリスト

/usr/bin/sh

/usr/bin/csh

/usr/bin/ksh

/usr/bin/jsh

/bin/sh

/bin/csh

/bin/ksh

/bin/jsh

/sbin/sh

/sbin/jsh

/bin/bash

/bin/pfcsh

/bin/pfksh

/bin/pfsh

/bin/tcsh

/bin/zsh

/usr/bin/bash

/usr/bin/pfcsh

/usr/bin/pfksh

/usr/bin/pfsh

/usr/bin/tcsh

/usr/bin/zsh


 

JASS_SHELLS にリストされているシェルが shells ファイルにリストされていない場合は、失敗が表示されます。

install-strong-permissions.aud



注 - このスクリプトは、Solaris 10 OS を実行しているシステムでは使用しないでください。



このスクリプトは、install-strong-permissions.fin スクリプトで推奨されている変更が行われているか判定します。変更が行われていない場合は、失敗が表示されます。

Solaris 10 OS には多くのアクセス権と所有権の変更が組み込まれているため、このスクリプトは Solaris 10 OS には使用しません。このスクリプトを実行できないわけではありませんが、Solaris 10 OS への変更点を考慮すると、実行結果によりセキュリティーが改善されることはありません。

install-sulog.aud

このスクリプトは、/var/adm/sulog ファイルの適切な所有権とアクセス権についてチェックを行います。このファイルが存在していない、アクセス権が無効である、あるいは所有者が root アカウントを持っていない場合は、失敗が報告されます。

install-templates.aud

このスクリプトは、JASS_FILES 変数で定義されているファイルが、対象システムに正常にコピーされたか判定します。コピー元ファイルとコピー先ファイルのタイプ (通常ファイル、シンボリックリンク、またはディレクトリ) が一致しているか確認するテストと、両方のファイル内容が同一であるか確認するテストのいずれかに失敗した場合は、失敗が表示されます。

印刷 (print) 監査スクリプト

この節では、以下の印刷 (print) 監査スクリプトについて説明します。

これらのスクリプトは、監査用にカスタマイズされていることを除けば、印刷 (print) 終了スクリプトと機能は同じです。

print-jass-environment.aud



注 - このスクリプトは、Solaris 10 OS を実行しているシステムでは使用しないでください。



このスクリプトは、Solaris Security Toolkit で使用される変数とその内容を表示します。内容の検証やその他のチェックは行いません。

print-jumpstart-environment.aud

このスクリプトは、JumpStart モード専用です。JumpStart 環境変数の設定を印刷するときに使用します。このスクリプトは、監査チェックを行いません。

print-rhosts.aud



注 - スクリプトが必要とする追加の処理時間が許容される場合、print-rhosts.aud スクリプトは手動で有効にする必要があります。



このスクリプトは、.rhosts または hosts.equiv という名前を持つファイルに関する通知を表示します。さらに、詳細確認のためにファイルの内容も表示します。

print-sgid-files.aud

このスクリプトは、set-gid ビットセットを持つファイルに関する通知を表示するとともに、詳細確認のために完全な (長い) リストも表示します。

print-suid-files.aud

このスクリプトは、set-uid ビットセットを持つファイルに関する通知を表示するとともに、詳細確認のために完全な (長い) リストも表示します。

print-unowned-objects.aud

このスクリプトは、有効なユーザーとグループが割り当てられていないファイルに関する通知を表示するとともに、詳細確認のために完全な (長い) リストも表示します。

print-world-writable-objects.aud

このスクリプトは、world-writableである対応ファイルに関する通知を表示するとともに、詳細確認のために完全な (長い) リストも表示します。

削除 (remove) 監査スクリプト

この節では、以下の削除 (remove) 監査スクリプトについて説明します。

remove-unneeded-accounts.aud



注 - このスクリプトは、Solaris OS バージョン 2.5.1 〜 9 を実行しているシステムでのみ使用します。



remove-unneeded-accounts.aud スクリプトは、JASS_ACCT_REMOVE 変数で定義されている未使用の Solaris OS アカウントが、システムから削除されたことを検証します。

設定 (set) 監査スクリプト

この節では、以下の設定 (set) 監査スクリプトについて説明します。

set-banner-dtlogin.aud



注 - このスクリプトは、Solaris OS バージョン 2.6 〜 10 を実行しているシステムでのみ使用します。



このスクリプトは、CDE サービスまたは dtlogin サービス用のサービスバナーが定義されているか確認します。このスクリプトは、ファイルテンプレート JASS_ROOT_DIR/etc/dt/config/Xsession.d/0050.warning/etc/motd ファイルをリストすると、システムがそのファイルの内容を表示するか確認します。

set-banner-ftpd.aud



注 - このスクリプトは、Solaris OS バージョン 2.6 〜 10 を実行しているシステムでのみ使用します。



このスクリプトは、FTP サービスバナーが、JASS_BANNER_FTPD 変数で定義されている値と一致するかチェックします。サービスバナーが一致しない場合は、失敗が表示されます。変数の値は、Authorized Use Only です。

set-banner-sendmail.aud



注 - このスクリプトは、Solaris OS バージョン 9 および 10 を実行しているシステムでのみ使用します。



このスクリプトは、JASS_BANNER_SENDMAIL 環境変数で定義されているとおりにサービスバナーを表示するよう sendmail サービスが構成されているか確認します。このバナーは、ネットワークを介して sendmail サービスに接続されているすべてのクライアントに表示されます。

set-banner-sshd.aud



注 - このスクリプトは、Solaris OS バージョン 9 および 10 を実行しているシステムでのみ使用します。



このスクリプトは、システムへのアクセス認証の前に、Secure Shell サービスがユーザーに /etc/issue の内容を表示することで、Secure Shell サービスバナーが表示されることを確認します。

set-banner-telnet.aud



注 - このスクリプトは、Solaris OS バージョン 2.6 〜 10 を実行しているシステムでのみ使用します。



このスクリプトは、Telnet サービスバナーが、JASS_BANNER_TELNETD 変数で定義されている値と一致するかチェックします。サービスバナーが一致しなかった場合は、失敗が表示されます。変数の値は、Authorized Use Only です。

set-flexible-crypt.aud



注 - このスクリプトは、Solaris 10 OS を実行しているシステムでのみ使用します。



このスクリプトは、"Invalid Cross-Reference Format" で説明している各 Solaris Security Toolkit ドライバの変更が正しく行われていることをチェックすることで、強力なパスワードの使用を検証します。

このスクリプトによる監査時に Perl がシステムにインストールされている場合、Solaris Security Toolkit 4.2 ソフトウェアは Perl を使おうとします。システムに Perl が存在しない場合、スクリプトはエラーを出力します。

set-ftpd-umask.aud



注 - このスクリプトは、Solaris OS バージョン 2.6 〜 10 を実行しているシステムでのみ使用します。



このスクリプトは、FTP サービスバナーが、JASS_FTPD_UMASK 変数で定義されている値と一致するかチェックします。ファイル生成マスク値が一致しない場合は、失敗が表示されます。変数の値は 022 です。

set-login-retries.aud

このスクリプトは、ログイン RETRIES パラメータに、JASS_LOGIN_RETRIES 変数で定義されている値が割り当てられているか判定します。変数のデフォルト値は 3 に設定されています。変数がデフォルト値に設定されていない場合は、失敗が表示されます。

set-power-restrictions.aud



注 - このスクリプトは、Solaris OS バージョン 2.6 〜 10 を実行しているシステムでのみ使用します。



このスクリプトは、/etc/default/power ファイルの PMCHANGEPERM パラメータと CPRCHANGEPERM パラメータに値としてハイフン ( - ) が含まれているか確認します。含まれていない場合は失敗が表示されます。

set-rmmount-nosuid.aud



注 - このスクリプトは、Solaris OS バージョン 2.6 〜 10 を実行しているシステムでのみ使用します。Solaris OS バージョン 8 〜 10 は、デフォルトで nosuid オプションを指定してリムーバブルメディアをマウントするように構成されています。このスクリプトは、デフォルトの設定に関係なく、必要なチェックを実行します。



このスクリプトは、nosuid パラメータを設定することによって、/etc/rmmount.conf ファイルで、リムーバブル Unix File System (UFS) または High Sierra File System (HSFS) ファイルシステムのマウントが制限されるかどうか判定します。/etc/rmmount.conf ファイルでこの制限が定義されていない場合は、失敗が表示されます。

set-root-group.aud

このスクリプトは、root アカウントの一次グループが、JASS_ROOT_GROUP 変数で定義されている値に設定されているかどうか判定します。正しく定義されていない場合は、失敗が表示されます。

set-root-home-dir.aud



注 - このスクリプトは、Solaris 10 OS を実行しているシステムでのみ使用します。



このスクリプトは、root アカウントが /etc/passwd ファイルに / のホームディレクトリを持っているかどうかを確認します。

set-root-password.aud

このスクリプトは、root アカウントのパスワードをチェックします。パスワードの値が JASS_ROOT_PASSWORD 変数の値と同じ場合は、失敗が表示されます。このチェックは、root パスワードを、JASS_ROOT_PASSWORD で定義されている値からできるだけ早く変更するようユーザーに促すために行われます。

set-strict-password-checks.aud



注 - このスクリプトは、Solaris 10 OS を実行しているシステムでのみ使用します。



このスクリプトは、さまざまなパスワードチェック用の正しい値が /etc/default/passwd ファイルで正しく定義されていることを確認します。

set-sys-suspend-restrictions.aud



注 - このスクリプトは、Solaris OS バージョン 2.6 〜 10 を実行しているシステムでのみ使用します。



このスクリプトは、/etc/default/sys-suspend ファイルのチェックを行います。PERMS パラメータに値としてハイフン ( - ) が含まれていない場合は、失敗が表示されます。

set-system-umask.aud

このスクリプトは、システムのデフォルトのファイル生成マスクが、JASS_UMASK 変数で定義されている値に設定されているかどうか判定します。デフォルトの値は 022 に設定されています。変数が正しく定義されていない場合は、失敗が表示されます。

set-term-type.aud

このスクリプトは、/etc/profile ファイルと /etc/login ファイルでデフォルトの端末タイプが vt100 に設定されているかどうか判定します。デフォルトの端末タイプが正しく定義されていない場合は、失敗が表示されます。このスクリプトは便宜上の理由から用意されているだけで、失敗が表示されてもシステムのセキュリティーには影響ありません。

set-tmpfs-limit.aud



注 - Solaris 2.5.1 OS では、この set-tmpfs-limit.aud スクリプトはサポートされていないため実行できません。



このスクリプトは、/etc/vfstab ファイルで定義されている tmpfs ファイルシステムが、JASS_TMPFS_SIZE 変数にサイズが制限されているかどうか判定します。この変数は、デフォルトで 512 MB に設定されています。tmpfs ファイルシステムのサイズが JASS_TMPFS_SIZE 値に適合していない場合は、失敗が報告されます。

set-user-password-reqs.aud

このスクリプトは、システム上のパスワードポリシー設定が、あらかじめ定義されている設定どおりであるかどうかを確認します。設定値が、Solaris Security Toolkit で定義されている次のデフォルト値と一致しない場合は、エラーが表示されます。

デフォルト値は、以下の環境変数に含まれます。

set-user-umask.aud

このスクリプトは、以下のファイルの umask パラメータが、(デフォルト値は 022 に設定されている) JASS_UMASK 変数で定義されている値に設定されているかどうか判定します。

これらのファイルの umask パラメータが適切に設定されていない場合は、失敗が表示されます。

更新 (update) 監査スクリプト

この節では、以下の更新 (update) 監査スクリプトについて説明します。

update-at-deny.aud

このスクリプトは、JASS_AT_DENY 変数にリストされているユーザーアカウントが、/etc/cron.d/at.deny ファイルにリストされているかどうか判定します。JASS_AT_DENY 変数で定義されているユーザーアカウントのリストは、次のとおりです。

このチェックにパスするには、すべてのユーザーアカウントが、/etc/passwd ファイルと /etc/cron.d/at.deny ファイルの両方に存在している必要があります。ユーザーアカウントは /etc/cron.d/at.allow ファイルに格納しないでください。このファイルは優先度が高いので、設定を無効にすることがあるためです。いずれかのチェックに失敗した場合は、失敗が表示されます。

update-cron-allow.aud

このスクリプトは、JASS_CRON_ALLOW 変数にリストされているユーザーアカウントが、/etc/cron.d/cron.allow ファイルにあるかどうか判定します。デフォルトでは、ユーザーアカウントの値は root ユーザーだけです。このチェックに失敗すると、失敗が表示されます。

update-cron-deny.aud

このスクリプトは、JASS_CRON_DENY 変数にリストされているユーザーアカウントが、/etc/cron.d/cron.deny ファイルにあるかどうか判定します。JASS_CRON_DENY 変数で定義されているユーザーアカウントのリストは、次のとおりです。

このチェックにパスするには、すべてのユーザーアカウントが、/etc/passwd ファイルと /etc/cron.d/cron.deny ファイルの両方に存在している必要があります。なお、ユーザーアカウントは /etc/cron.d/cron.allow ファイルに格納しないでください。このファイルは優先度が高いので、設定を無効にすることがあるためです。いずれかのチェックに失敗した場合は、失敗が表示されます。

update-cron-log-size.aud



注 - このスクリプトは、Solaris OS バージョン 2.6 〜 10 を実行しているシステムでのみ使用します。



このスクリプトは、ログファイルのデフォルトのサイズ制限を増加するように cron 機能が構成されているかどうか判定します。チェック方法は、Solaris OS のバージョンと JASS_CRON_LOG_SIZE 変数の値によって決まります。JASS_CRON_LOG_SIZE 変数で定義されているサイズ制限は 20480 KB です。サイズ制限が正しくない場合は、失敗が表示されます。

update-inetd-conf.aud

このスクリプトは、JASS_SVCS_DISABLE 変数にリストされているサービスが /etc/inetd.conf ファイルで無効になっているかどうか判定します。また、JASS_SVCS_ENABLE 変数にリストされているサービスが、/etc/inetd.conf ファイルで有効になっているかどうかもチェックします。サービスが両方の変数にリストされている場合には、JASS_SVCS_ENABLE 変数で有効になっているサービスが残されます。いずれかのチェックに失敗した場合は、失敗が表示されます。

JASS_SVCS_DISABLE パラメータは、表 6-2 のように表示されます。


表 6-2 JASS_SVCS_DISABLEの出力例

100068

100083

100087

100134

100146

100147

100150

100155

100166

100221

100229

100230

100232

100234

100235

100242

100424

300326

536870916

chargen

comsat

daytime

discard

dtspc

echo

eklogin

exec

finger

fs

ftp

kerbd

klogin

kshell

login

name

netstat

printer

rexd

rquotad

rstatd

rusersd

rwalld

shell

smtp

sprayd

sun-dr

systat

talk

telnet

tftp

time

ufsd

uucp

uuidgen

walld

xaudio

 

 

 

 


 

デフォルトでは、JASS_SVCS_ENABLE 変数は空です。suncluster3x-secure.driver などの一部のドライバがこの変数を使用することがあります。


製品固有の監査スクリプトの使用

特定のサン製品用の製品固有の監査スクリプトを、表 6-3 に示します。これらのスクリプトは、Audit ディレクトリに格納されています。

サンの新製品や更新されたサン製品のセキュリティーを強化するために、定期的に新しい監査スクリプトがリリースされます。最新のスクリプトのリストについては、以下の Security Web サイトを参照してください。

http://www.sun.com/security/jass


表 6-3 製品固有の監査スクリプト

製品

ドライバ名

Sun Cluster 3.x ソフトウェア

suncluster3x-set-nsswitch-conf.aud

Sun Fire ハイエンドシステムドメイン

s15k-static-arp.aud

Sun Fire ハイエンドシステムシステムコントローラ

s15k-static-arp.aud

s15k-exclude-domains.aud

s15k-sms-secure-failover.aud


 

suncluster3x-set-nsswitch-conf.aud



注 - このスクリプトは Sun Cluster 3.x システムにのみ適用され、ほかのシステムでは実行されません。



このスクリプトは、ホストのデータベースに対する最初のソースとして、cluster キーワードが /etc/nsswitch.conf ファイルにリストされているかどうか判定します。リストされていない場合は、失敗が表示されます。

詳細については、Sun BluePrints OnLine 掲載記事『Securing Sun Cluster 3.x Software』を参照してください。

s15k-static-arp.aud

System Management Services (SMS) バージョン 1.2 〜 1.4.1 では、このスクリプトは、静的 ARP 構成ファイルが、Sun Fire ハイエンドシステムのシステムコントローラ (SC) とドメインにインストールされているか確認します。システムコントローラでは、このファイルは /etc/sms_sc_arp に格納されます。ドメインでは、このファイルは /etc/sms_domain_arp に格納されます。

このスクリプトは、すべての既存ドメインが、SC の静的 ARP 起動スクリプトと、それに対応するデータファイルにリストされているとおりに Ethernet アドレスを持っているかチェックします。

詳細については、Sun BluePrints OnLine 掲載記事『Securing the Sun Fire 12K and 15K System Controller』と『Securing the Sun Fire 12K and 15K Domains』を参照してください。

s15k-exclude-domains.aud

SMS バージョン 1.2 以降では、このスクリプトは、/etc/opt/SUNWSMS/SMS/config/MAN.cf ファイルが存在しているかどうか判定します。存在している場合は、このファイルにリストされているドメインがすべて I1 MAN から除外されているかチェックします。そして、すべてのドメインを I1 MAN から除外します。サイトでドメインの一部のみを除外するようにスクリプトを変更した場合は、ドメインが I1 MAN に含まれているという警告が表示されます。

詳細については、Sun BluePrints OnLine 掲載記事『Securing the Sun Fire 12K and 15K System Controller』を参照してください。

s15k-sms-secure-failover.aud

SMS バージョン 1.2 〜 1.4.1 では、このスクリプトは、Sun BluePrints OnLine 掲載記事『Securing the Sun Fire 12K and 15K System Controller』の推奨事項に従って、Sun Fire ハイエンドシステムシステムコントローラが構成されているかどうか判定します。SMS_SVCS_DISABLE 変数にリストされているサービスのいずれかが、/etc/inet/inetd.conf で有効になっている場合は、失敗が表示されます。