ここでは、Unix ファイルのコンテンツチェックのためのユーザ定義コントロールの例を挙げます。
Unix ファイルのコンテンツチェックコントロールには、2 つの正規表現があります。
1 つ目は「Scan Parameters」項に入力し、スキャン時にターゲットファイル/ディレクトリの結果をフィルタリングするために使用されます。この正規表現は、特定の Unix プラットフォームで「grep」コマンドがサポートする「Basic Regular Expression(BRE)」標準に従う必要があります。アカウントでエージェント UDC サポートが使用可能になっているときに Cloud Agent を使用する場合は、この正規表現は「Perl Compatible Regular Expressions(PCRE)」標準に従う必要があります。
2 つ目は「Control Technologies」項にデフォルト値として入力し、返された結果の合格/不合格の評価を実行するために使用されます。この正規表現は、「Perl Compatible Regular Expressions(PCRE)」の標準に従う必要があります。
この例では、/etc/passwd ファイル内で /bin/bash で終わる行を検索できます。
「Scan Parameters」項の設定により、まず /etc/passwd ファイル内で少なくとも 1 文字を持つすべての行がスキャンエンジンによって返されます。「Control Technologies」項の設定により、いずれの行も /bin/bash で終わらない場合、そのコントロールが合格とされます。ファイル内の少なくとも 1 つの行が /bin/bash で終わる場合、そのコントロールは不合格になります。
項 |
フィールド |
入力内容 |
Scan Parameters |
File/Directory path |
/etc/passwd |
Scan Parameters |
Regular expression |
. |
Scan Parameters |
Data Type |
Line List |
Control Technologies |
Cardinality |
match none |
Control Technologies |
Operator |
regular expression |
Control Technologies |
Default Value |
/bin/bash$ |
この例では、/etc/profile ファイル内で“ alias rm ”で始まる行を検索できます。
「Scan Parameters」項の設定により、まず /etc/profile ファイル内で“ alias ”という単語で始まるすべての行がスキャンエンジンによって返されます。「Control Technologies」項の設定により、返された行のうち少なくとも 1 つが“ alias rm ”で始まる場合、そのコントロールが合格とされます。“ alias rm ”で始まる行がない場合、そのコントロールは不合格になります。
項 |
フィールド |
入力内容 |
Scan Parameters |
File/Directory path |
/etc/profile |
Scan Parameters |
Regular expression |
^alias |
Scan Parameters |
Data Type |
Line List |
Control Technologies |
Cardinality |
match any |
Control Technologies |
Operator |
regular expression |
Control Technologies |
Default Value |
^alias rm |
この例では、/etc/sudoers ファイル内にコメントのみの行ではない行があるかどうかを判断できます。コメントのみの行はシャープ記号(#)で始まります。
「Scan Parameters」項の設定により、まず /etc/sudoers ファイル内で # で始まらないすべての行がスキャンエンジンによって返されます。「Control Technologies」項の設定により、返されたリストが空でない場合、つまり少なくとも 1 つの行が # で始まらないため返された場合、そのコントロールが合格とされます。リストが空である場合、そのコントロールは不合格になります。カージナル数として“ not empty ”または“ empty ”を選択すると、デフォルトの値は入力されません。
項 |
フィールド |
入力内容 |
Scan Parameters |
File/Directory path |
/etc/sudoers |
Scan Parameters |
Regular expression |
^\s*[^#] |
Scan Parameters |
Data Type |
Line List |
Control Technologies |
Cardinality |
not empty |
Control Technologies |
Operator |
regular expression |
Control Technologies |
Default Value |
|
この例では、superuser(ルート)権限の取得を試みる一般ユーザを識別できます。このコントロールでは、スキャンエンジンが /var/adm/sulog ファイルを読み取り、権限を持たないユーザによる試行がリストされ、権限を持つ管理者による試行が無視されます。/var/adm/sulog ファイル内で、失敗した試行にはマイナス記号(-)が、成功した試行にはプラス記号(+)が表示されます。
「Scan Parameters」項の設定により、まず /var/adm/sulog ファイル内で少なくとも 1 文字を持つすべての行がスキャンエンジンによって返されます。「Control Technologies」項の設定により、いずれかの行に失敗した試行を示すマイナス記号(-)が表示されている場合、そのコントロールが合格とされます。すべての行にプラス記号(+)がある場合、そのコントロールは不合格になります。
項 |
フィールド |
入力内容 |
Scan Parameters |
File/Directory path |
/var/adm/sulog |
Scan Parameters |
Regular expression |
. |
Scan Parameters |
Data Type |
Line List |
Control Technologies |
Cardinality |
match any |
Control Technologies |
Operator |
regular expression |
Control Technologies |
Default Value |
\s*-\s* |
これは、Unix ファイルのコンテンツチェック(エージェントのみ)コントロールの例です。このコントロールタイプは Cloud Agent のみでサポートされるため、エージェントスキャンデータのみを使用して評価されます。
「Scan Parameters」項の設定により、エージェントスキャンで“ Qualys ”という語を含むすべてのファイルが返されます。検索は、/root ディレクトリから開始され、ディレクトリ内の 3 段階下まで行われます。300 秒の時間制限か 50 ファイルの制限のいずれか早いほうに達した場合に、検索が停止します。
「Control Technologies」項の設定により、返された文字列のうち少なくとも 1 つに“ Qualys ”が含まれる場合、エージェントスキャンでそのコントロールが合格とされます。“ Qualys ”が含まれる行がない場合、そのコントロールは不合格になります。
項 |
フィールド |
入力内容 |
Scan Parameters |
Base directory |
/root |
Scan Parameters |
Maximum Depth |
3 |
Scan Parameters |
Regular Expression |
Qualys |
Scan Parameters |
File Name Include |
* |
Scan Parameters |
Directory Name Include |
* |
Scan Parameters |
Time Limit |
300 秒 |
Scan Parameters |
Match Limit |
50 ファイル |
Scan Parameters |
Data Type |
String List |
Control Technologies |
Cardinality |
contains |
Control Technologies |
Operator |
文字列 |
Control Technologies |
Default Value |
Qualys |