データベースのレビューでは二つの文が同じように使われるが、意味はまったく違う。一つは、特定のワークロードに特定の除外が必要だと言い、もう一つは、ホストにもうエンドポイント保護は不要だと言う。前者は範囲を限定したエンジニアリング上の判断であり、後者は所有者のいないリスクである。この二つを分けることが作業のすべてであり、それはサーバーが実際に何をしているかから始まる。

同じに聞こえる二つの文

除外はパス、プロセス、ファイルの種類を名指しし、その理由を示す。一方、放棄はマシンから統制を取り除き、その代わりに理由を示す。どちらも同様のパフォーマンス数値を生みながら、まったく異なるセキュリティ姿勢になることがある。

データベースサーバーは、ほかのすべてが依存するデータを保管しているため、放棄の候補としては不適切である。また、データベースが開いたままにしているファイルを走査するとデスクトップでは起こらない問題が生じるため、デスクトップ水準のポリシーの候補としても不適切である。正直な立場は中間にあり、前提ではなく議論で示さなければならない。レビューが記録すべきは、その議論である。

除外と放棄を比較する

二つの選択肢を四つの点、つまり何が保護されたままか、何が露出するか、決定を誰が持つか、どの証拠がそれを支えるかで並べる。

範囲を限定した除外は、ホストの残りを以前と同じ保護の下に置き、決定を名前のある所有者に残し、再現された症状に基づく。放棄はすべてから保護を外し、通常はマシンが露出していないという主張に基づく。その主張は、ファイル共有、リンクサーバー、エージェントジョブ、管理用のファイル転送がどれもファイアウォールの見ることのない露出を生むため、サーバーの実際の役割に耐えなければならない。下の比較で所有者が変わっても残るのは、何が決められ、なぜそう決めたかが記録されている一つの列だけである。

PointScoped exceptionBlanket exclusion
CoverageOnly the named paths or processesThe whole host
Evidence neededA reproduced interactionAn argument about exposure
OwnerA named reviewer with a dateUsually nobody
Behaviour after an updateReviewed againSilently inherited

例外を実証された相互作用に限定する

一覧からではなく症状から始める。ファイルアクセスの競合、リソースの逼迫、遅いクエリはログでの見え方が違い、異なる修正に導く。保護を有効にしたまま症状を再現し、関与している正確なパスまたはプロセスを特定する。

典型的な候補は、データベースファイル、ログファイル、バックアップ、フルテキストカタログファイルであり、アンチウイルスソフトウェアと SQL Server に関する Microsoft のガイダンスが、展開したバージョンとセキュリティ製品の参照先であり続ける。ほかのサーバーから一覧をコピーしてはならず、一つのサービス名がインストールされたすべてのコンポーネントを覆うと仮定してもいけない。実証された相互作用に対処する最小の例外こそ提案すべきものである。それより広いものには、それぞれの議論が必要である。

Get-MpPreference | Select-Object -ExpandProperty ExclusionPath
Get-MpComputerStatus | Select-Object AntivirusEnabled, RealTimeProtectionEnabled

その一覧を、一つのインシデントのために追加した除外はそのまま永遠に残りがちだから、サーバーの役割に照らして見直す。各項目の横に短い注記があれば、次の監査は可能になる。

ネットワークと ID の統制を維持する

エンドポイントの除外は、誰がデータベースに到達できるかについては何も語らない。ファイアウォールポリシーは、どの送信元が SQL セッションや管理セッションを開けるかを引き続き制限すべきであり、アプリケーションアカウントは、それらのセッションが何をできるかを引き続き制限すべきである。

VPN も同じ議論に属するが、根拠として誤用されることが多い。アクセス経路を制限しても、そこを通って届くファイル、スクリプト、クエリが検証されるわけではない。暗号化トンネルはネットワークセンサーから見て不透明でもあるため、センサーが与える可視性はホストエージェントが与える可視性ではない。これらは別の証拠の流れであり、どちらも他方を置き換えない。パッチ管理、信頼できる管理用ツール、検証済みの復旧経路は、それぞれの所有者を持つ別個の責務として残る。役割の衛生もここに含まれる:無関係な閲覧、ダウンロード、ファイル共有の業務は、所有者が明示的に受け入れない限り、データベースホストから遠ざけるべきである。

変更をテストし、それから責任を持つ

代表的なワークロードと重要なセキュリティチェックでテストし、元のエラーだけでなく、安定性、スループット、継続的な保護を比較する。

Get-MpThreatDetection | Sort-Object InitialDetectionTime -Descending | Select-Object -First 5
Get-WinEvent -LogName 'Microsoft-Windows-Windows Defender/Operational' -MaxEvents 20

一つのビルド向けに書いた除外が存在理由より長く残ることがあるため、サポートされたロールバック経路と、コンポーネントや製品の更新後に例外を見直す所有者を維持する。範囲、理由、見直し日をサーバーのビルド記録と同じ場所に記録する。それがなければ、次のレビュー担当者は根拠のない一覧を引き継ぐことになる。除外は、その理由がまだ正しい間だけ正当化できる。

関連記事