今回は、サイバーセキュリティに関する非営利組織「Center for Internet Security, CIS」がとりまとめた「CIS クリティカルセキュリティ コントロール トップ20 ( CIS top 20 Critical Security Controls)」の第7版から、「コントロール8 マルウェア対策」を見ていきます。そして必須要件として挙げられている8つのサブコントロール項目を確認し、その上で気づいたことをシェアしていきます。
内容:集中管理型のアンチマルウェアソフトウェアを活用することで、組織内にある個別のワークステーション、およびサーバを継続的に監視・防護します。
留意点:企業向けのアンチウィルスソフトウェアなら 集中管理機能が搭載されているはずです。この集中管理型アンチウィルスは、以下のサブコントロール2から6についても対応します。
内容:組織のアンチマルウェアソフトウェアのウィルス検索エンジンおよびシグネチャデータベースは必ず定期的に更新します。
留意点:アンチウィルスとはシグネチャのことだといってもいいでしょう。純粋なシグネチャ型の検知方法はもはや実践的ではなく、アノマリ型の検索エンジンでも定期的な更新が求められています。自動更新の適用に加え、更新状態の検証ツールを用いて、シグネチャが最新であることを確実にします。Tripwire Enterpriseでは、アンチウィルスのインストールの有効状態、稼働状態、そして更新状態を確認できます。
内容:ツールデータ実行防止(DEP)やアドレス空間配置のランダム化(ASRL)などOS上のアンチエクスプロイト機能を有効化するか、または大量のアプリケーションや実行ファイルの保護が可能なように設定したツールキットを用います。
留意点:複雑そうに聞こえますが、実際そんなことはありません。DISAの強化ガイドラインはこれらの設定の手続きをステップ・バイ・ステップで順を追って丁寧に説明してあり、それ以外にも有益な情報がたくさんあります。コントロール5に示されている強化に関するガイドラインをすでに実行しているのなら、もうすでにこちらはクリア出来ているはずです。
内容:明示的に許可されるサービスとポートを除くすべてのトラフィックをドロップするデフォルトの拒否ルールを使用して、ホストベースのファイアウォールまたはポートフィルタツールをエンドシステムに適用します。
留意点:通常アンチウィルスは、デフォルトで実行されるように設定されています。とはいえ、USBスティックを介して潜入するマルウェアはどんな組織においてもほぼ有効な攻撃経路となっていますから、実際に有効になっているか検証することは重要です。
内容:取り外し可能なメディアからコンテンツが自動実行されないようデバイスを設定します。
留意点:スキャンが行われない方がいいのと同じ理由で、取り付けられている時に自動実行されるのはよくないです。設定はあっという間にできます。CIS、DISAの強化ガイドが、自動実行の無効化について具体的な手順を紹介しています。Tripwire Enterpriseなどの、セキュリティ構成管理ツールなら、組織の環境下のエンドポイントで無効に設定されていることを瞬時に確認できます。
内容:すべてのマルウェア検知イベントを、企業のアンチマルウェア管理ツールとイベントログサーバに送信することで、その分析と警告を実施します。
留意点:これは、このコントロール8よりも、むしろコントロール6(監査ログの保守、監視および分析)で取り扱うべきでしょう。集中型ロギングサーバーへのログ送信について、(コントロール6以外では)このサブコントロールでしか言及されていないことに違和感を覚えます。いずれにしてもここで重要な点は、ログをエンドポイントから切り離すことで、マルウェアに感染してもエンドポイントのログが失われないようにします。
内容:既知の悪意のあるドメインを検索するホストを検知するために、ドメインネームシステム(DNS)クエリのロギングを有効にします。
留意点:これは一定の環境では高い効果があるパッシブ型マルウェアの監視体勢です。コントロール12のサブコントロール6(ネットワークベースのIDSセンサーを導入する)では、このIDSセンサーは、全てのクエリのログをエンドポイントから引き出さなくとも取得が可能です。新たなDNSクエリを探し、コンピュータ生成らしいものがあれば、マルウェア感染の早期発見につながります。
内容:Microsoft PowerShellやBashなどのコマンドシェルに対し、コマンドラインの監査ロギングを有効にします。
留意点:高度なインタラクションシステムでは手間がかかるかもしれませが、法的証拠を探し出す観点からは重要です。マルウェアが好んで攻撃するのはPowerShellとBashですが、これら二つのスクリプト言語に限られてはいません。
By Travis Smith