システムの弱点を補強するには?
脆弱性を確認する前に
脆弱性の把握、対策方法の選定、リスクの分析と対処の実施、というのは、経験をした人にはわかると思いますが、かなり負担の大きい仕事です。
できるだけこの負担を軽減するために、「歯ブラシ」と「ダイヤモンド」を区別することを紹介しましたが、もう1つ、大きく負担を軽減する策があります。図2に記載した「設定の確認」を脆弱性の確認の前に実施する方法です。
脆弱性検査で発見される脆弱性のうち、そのいくつかは「設定の不備」に起因します。例えば、SSHが外部からroot権限でログインできるようになっていたり、ApacheのIndex機能が有効になっていて、見えてはいけないファイルが見えてしまったりする例は、事前に適切な設定を行っていれば、指摘されることのない脆弱性です(もっとも、指摘だけで済めば幸運で、運が悪い場合は被害につながります)。
本来は、詳細設計で設定が決められているべきものなのに、セキュリティーが考慮されないまま、デフォルトの値で使用することで、脆弱性の発生原因へつながってしまいます。この問題は、再度、望ましい設定と現状とのギャップを確認し、場合によっては管理策を適用することで、見る見る脆弱性を減らすことができます。
「うまく動いているのに設定は変えたくない」という気持ちはわかりますが、脆弱性を利用した被害が発生した際に「誰の責任になるのか」と「どのような被害が起こりうるのか」を考えると、対策を実施することは決して後悔する作業ではありません。
望ましい設定とは
ここで理想的な設定のガイドラインを提示できれば…といつも思うのですが、現状、筆者が把握している限りでは、残念ながら統一したフォーマットでOSやミドルウエアのセキュリティー設定が無料で、しかも、日本語で公開されているようなリソースは数少ないようです。
そのため、本稿では海外のリソースに頼らざるを得なくなってしまう点が多くなりますが、ご容赦ください。
また、いくつかの設定には組み合わせによる相性もあるため、動作確認をして、自分なりの設定を組み上げる作業は欠かせないことを付記しておきます。
日本における設定のガイドラインは独立行政法人 情報処理推進機構(IPA)が公開しているコンテンツが充実しています。
[独立行政法人 情報処理推進機構(IPA) セキュリティセンター]
小規模サイト管理者向けセキュリティ対策マニュアル
http://www.ipa.go.jp/security/fy12/contents/crack/soho/soho/index.html
SOHO・家庭向け セキュリティ対策マニュアル(Ver1.20)
http://www.ipa.go.jp/security/fy14/contents/soho/html/index.html
セキュアなWebサーバーの構築と運用に関するコンテンツ
http://www.ipa.go.jp/security/awareness/administrator/secure-web/index.html
海外の代表的な設定ガイドラインのいくつかは以下の通りです。OS、ミドルウエア、機器など具体的な製品に対する設定ガイドラインが公開されています。
[the Center for Internet Security]
CIS Benchmarks / Scoring Tool
http://www.cisecurity.org/benchmarks.html
[Microsoft Corporation.]
Microsoft Solution Accelerators
http://technet.microsoft.com/en-us/solutionaccelerators/default.aspx
[NSA/CSS]
Security Configuration Guides
http://www.nsa.gov/ia/guidance/security_configuration_guides/index.shtml
もちろん、MBSAのようなメーカーが公開しているツールも設定の参考になります。
[Microsoft Corporation.]
Microsoft Baseline Security Analyzer (MBSA)
http://www.microsoft.com/japan/technet/security/tools/mbsahome.mspx