先日、Philadelphia InfoSec Meetupに参加してきました。今回は、Empower Security AcademyというWashington D.C.をベースとした人がセキュリティの基礎とAPI・Wiresharkについて話してくれました。
内容がビギナー向けなコンテンツでしたが、プレゼンテーションの中で触れられていたセキュリティの7原則が非常に新鮮だったのでそのことを書きたいと思います。(当然、セキュリティを仕事としている人であれば知っている内容ですが、7つ並べて見るとその重要性を再認識したため、あえて取り上げてみたいと思います。)
- Defense In Depth
- Least Privilege
- System Hardening
- CIA Triangle Triad
- Separation of Duties
- AAAs of Security
- Patch Vulnerable Systems and Software
Defense In Depth(多層防御)
詳しい説明は、多層防御 (セキュリティ) - Wikipediaに任せますが、ひとつの脅威に対して複数のセキュリティ保護対策を組み合わせることで、ひとつの対策が機能しない、もしくは適切に実装されていない場合でも複数の対策のいずれかで防がれるという考え方です。安全工学でも同様の概念があり、深層防御と呼ばれたり、スイス・チーズ・モデルと呼ばれることもしばしばあります。
昔、ペリメータ制御だけに頼ったセキュリティ対策を、チョコレートのM&Mに例えてM&Mモデルなんて呼ばれることもありましたが、これは典型的にDefense In Depthの考え方に反するものです。
Least Privilege(最小権限の原則)
詳しい説明は、最小権限の原則 - Wikipediaに譲りますが、システム・ユーザに対して必要となる最小の権限のみを付与すべきという原則です。これにより、通常の挙動・業務に支障をきたさない一方、万が一悪用されていても正当な業務で行える範囲に被害を局所化できるためです。とはいえ、実際問題として非定型の仕事をしている場合には、一時的に高い権限が欲しいときもあり、それを適切に運用する必要があるため、運用が非常に難しい原則だと考えられます。
System Hardening(システムの堅牢化)
システムの堅牢化に勤めるべきという考え方です。具体的には...
- 必要最小限のポートのみオープンにする
- 暗号化されていないメンテナンスポートは使わない
- デフォルトのパスワードはきちんと変更する
などが挙げられます。最近のシステムは初期設定からある程度のセキュリティは担保されているケースが多いですが、各製品のベスト・プラクティスに従い適切に設定することを推奨します。
CIA Triangle Triad(セキュリティの3原則)
情報処理試験でおなじみの機密性・完全性・可用性です。
- 機密性(Confidentiality)
- 完全性(Integrity)
- 可用性(Availability)
セキュリティ施策を行うときにどこをゴールにすべきかを端的に表現しているもので、コンサルティングをするときに忘れてはいけない原則のひとつだと思います。個人的には、日本は可用性にすこし比重がかかりすぎていると思う一方、日本年金機構の標的型攻撃時に議論にでた「全遮断」の議論をこの原則で捕らえると、「可用性」を捨ててでも「機密性」を維持することを維持を優先すべきだという議論になるかと思います。
Separation of Duties(職務分掌)
簡単に言うと部門・個人の内容・権限・責任などの範囲を明確に定義し、不要に情報を与えたり、権限を与えたりしないことを意味します。これにより、会社の資産を守ったり、内部不正を防ぐことができます。
これを実現する手段がIAM(Identity Access Management)と呼ばれるもので権限・アクセスコントロールなどを整備するソリューションのことを意味します。
AAAs of Security(認証・認可・監査)
この英語の言い回しを知らなかったのですが、AAAとはアクセス・コントロールが兼ね備えるべき3要素を意味します。
- Authentication(認証)
- ユーザのアイデンティティ(本人性)を検証すること
- Authorization(認可)
- 認証に基づいて、権限を与えられたユーザのみがアクセスできるよう制御すること
- Auditing(監査)
- 認証・認可が適切に機能することを検証するため、認証・認可をログとして記録すること
Patch Vulnerable Systems and Software(パッチ・マネジメント)
システム・ソフトウェアは時間がたつにつれて、様々な脆弱性が発見され、セキュリティレベルは時間とともに低下する傾向にあります。そのため、適切にパッチを当てていくことでセキュリティ・レベルを維持することを示した原則です。様々なインシデントの多くも、既知の脆弱性を悪用することで攻撃が成立しますので、パッチ・マネジメントは重要です。
まとめ
今回は、セキュリティの7原則を挙げてみました。もちろん、これ以外にも守るべきことは沢山ありますが、これらの基本原則を忠実に守っていくことがセキュリティを高め、情報を資産を守る上でも重要なのではないかと思います。