web-dev-qa-db-ja.com

セキュリティのためのサーバー監視

私たちは多くのWebホスティング管理を行っており、サーバー管理パッケージの販売を開始しています。ただし、セキュリティ関連の脅威についてサーバーの監視を開始したいと考えています。

私たちのクライアントはWebホスティング以外のものにサーバーを使用する場合があり、一部は日ごとに変更される可能性があるため、常に通信を維持する必要があるため、すべての監視サービスを微調整して、ホワイトリストに登録されていないものをチェックできますが、これにより、プロトコルが守られていない場合、特にソックスの監視時にホワイトリストに登録されていないプロセスを終了するようにLFDを構成し、別のツールが実行する場合は、大きな問題になります。

したがって、問題は2つあります。

  • どのような問題を検出しようとすべきでしょうか?
  • それらを特定するために、一般的な監視をどのように設定しますか?できれば、お客様を常に関与させる必要はありません。
4
Tiffany Walker

What do we look for?-セキュリティエキスパート採用

それは100%深刻な答えです-この質問をする場合、それに答えることができる家の誰かが必要です。スタッフの専門家なしで「セキュリティ監視サービス」を販売することは悪い考えです。間違えると、クライアントが危険にさらされる可能性があり、それに対処する専門知識がなくなります。そのすべてがあなたを悪い見た目にします、そしてそれの多くはスタッフに適切なセキュリティ知識を持つ誰かを持っていることによって避けることができます。
(顧客に説明されたセキュリティ評価が必要であることも期待してください-評価に使用されるテクノロジーを理解していないと、そうすることは困難です。)


セキュリティの専門家を見つけたら、次に何を調べ、どのようにセキュリティの評価と管理に取り組むかを決定できます。

最も簡単で最も簡単なことは、何も見ないで、すべての利用可能なパッチがすべての管理対象マシンに自動的に適用されるようにすることです。
(「最も単純」および「最も簡単」の適切に広い定義の場合:これらの更新をプッシュする何らかの方法が必要です。WSUSまたはCitadel/Herculesなどの商用ソリューションは、Windowsの一般的なソリューションであり、PuppetまたはRedHat Network衛星サーバーはLinuxの世界ではかなり一般的です。

これはショットガンアプローチです。利用可能なすべてのパッチをインストールし、いくつかの穴を塞ぐことを期待している他の情報がない場合。これは多くの環境で機能しますが、特定の脆弱性を修正しないパッチを適用したときに、ローカルソフトウェアを混乱させる方法でシステムを変更する場合にも、不可解な破損が発生する可能性があります。

私の残りの回答では、セキュリティ評価を2つのフェーズ(Outside-InとInside-Out)で見ていきます。それは決して包括的ではありませんが、あなたにいくつかの良いアイデアを与えるでしょう。


外部からの評価

Outside-In評価の最初の大きな項目は、潜在的な問題についてホストを積極的に調査し始めることです。

Tenable Networks Nessus脆弱性スキャナー はこの分野の主力製品で、 OpenVAS は人気のあるオープンソースの代替品です。
これらのプログラムは、「シグネチャスキャン」によって特定された脆弱なサービスを探すホストをスキャンします-時々、それらは誤検知を発行しますが、多くの場合、あなたが気付かないかもしれない実際の問題を見つけます。定期的に実行すると、システムにインストールする必要のある特定のパッチを対象にしたり、パッチポリシーへの準拠を判断したりできます(先月現在、全員がFooServer 1.2.3を使用しているはずで、誰かが1.2.0がまだ実行されている場合は、対処する必要のある問題があります)。

これらのツールは基本的に、ハッキングの黎明以降に「ハッカー」が行ったことを自動化します。


もう1つの主要な「アウトサイドイン」ツールは、ネットワークIDS(および/またはIPS)です。ネットワーク上に存在し、「正しくないと思われるもの」を探すものです。
Snort (Snort IDS)はここでの旗艦であり、かなりまともな製品と広く見なされています。優れたネットワーク監視システムは、「興味深い」トラフィックパターンを把握するのにも役立ちます。そのため、それらをさらに詳しく調べて、何が起こっているのかを確認できます。

優れたIDS/IPSはシステムの侵害を防ぐことはできませんが、適切に構成されていれば、疑わしい動作をするマシンを分離し、ネットワーク上の他のシステムの侵害に使用されるのを防ぐことができます。状況に最適な構成は、環境に大きく依存し、前述の専門家が支援できるものです。


裏返しの評価

インサイドアウトアセスメントの最初のステップは、セキュリティのためにシステムを構成することです-不要なサービスが停止していることを確認する絶対的な基本、デフォルトのパスワードが変更されている、SSHがキーのみのログインに切り替えられている、構成 Fail2Ban など。
有能なシステム管理者なら誰でもこれを悪用する必要があるので、詳細には触れません。

次のステップは実際には任意の順序で実行できますが、それらはすべて予防的よりも対処的です(違反が発生した可能性があることを通知します)。

  • ログ分析と集中ロギング
    最近のほとんどのLinuxシステムにはLogWatchが付属しています。問題がありますが、場合によっては役立つことがあります。 Windowsネットワークにも同様の概念があります。システムが「異常な」イベントをログに記録したときに通知するものです。
    理想的には、集中管理された安全なロギングサーバーでこれを実行します(マシンが危険にさらされてログが消去された場合でも、まだ記録があります)。

  • チェックサムおよび署名ベースのシステムチェック
    各ホストで実行され、変更してはならないファイルが変更された場合に警告するプログラム。ここでの主力製品は Tripwire ですが、同様のものが何十もあり、最近のLinuxシステムではFAMデーモンをフックして、ファイルが触れられたときに警告することもできます(攻撃者がデーモンを殺しません)。

  • 「正しく表示されない」ツール
    これは CHKRootKit およびその同類です-システムに侵入した可能性のある既知のマルウェア、ルートキット、トロイの木馬などを探すもの。
    繰り返しますが、多くの最新のシステムには、このツールまたは同等のものが事前に構成されて出荷されています。

  • ドラコニア測度
    これには、「このホワイトリストにないプロセスをすべて強制終了する」などが含まれます。これにより、セキュリティを強化できますが、多くの場合、利便性(および/または使いやすさ)への影響は、ユーザーの負担よりも大きくなります。


最終的な考え

私が言ったように、この答えのすべては表面を引っ掻いているだけです。 「管理されたセキュリティ」は漠然と定義された用語であり、これらは実行されるより一般的なものの一部です。あなたは他の人のことを考えます-それらを提供したいかどうか(そして彼らが何を支払うべきか)を決定するために、リスク、報酬、および人員の点でそれらを注意深く評価します。

経験からのいくつかのヒント:

  1. ユーザーのマシンを管理環境に受け入れないでください。
    新しいシステムを最初から構築できるようにしてください。そうしないと、あちこちで小さな問題を永遠に探し出すことになります。 (実際にはこれはほとんど起こりませんが、クライアントへの経済的苦痛が、既存の環境の管理を受け入れるときにシステムチームが継承する混乱を解明しようと費やす時間と少なくとも同じであることを確認してください他の誰かが建てた)

  2. 管理を引き受けるときは、root/adminアクセスを削除してください。
    顧客が依然として管理タスクを実行できる場合、彼らはあなたがしているすべてを損なう可能性があります。サービスとして管理を提供する前に、お客様にroot権限を与える(管理サービスを一時的に終了する)ための明確なポリシーを確立し、お客様がrootになっているマシンの管理を再開する前に何をしなければならないかを定めます。
    (((/// =)if(---)ではないifの場合)先のヒント1に逆行すると、同じ手順を使用して、継承している災害の管理を受け入れます。 。)

  3. ファイアウォールも管理します
    まだ行っていない場合は、ネットワークレベルでマネージドファイアウォールサービスを提供し、可能な場合はホストファイアウォールの使用を制限します。
    ファイアウォールを制御すると、後で発生する可能性のある問題のトラブルシューティングが容易になります。

  4. コミットしているタスクを実行できる十分なスタッフを用意してください
    セキュリティはフルタイムの仕事です。より大きなスケールでは、severalフルタイムジョブになります。受け入れるワークロードを処理するための人材と専門知識があることを確認してください。ゆっくりとスケールアップします。

10
voretaq7