ようこそ [BLOCK_TYPE SECTION/STEP]
サイバーセキュリティ:多層防御へようこそ。 [BLOCK_TYPE SECTION/STEP]
毎週のように見出しを飾る出来事:ランサムウェアによって自らのシステムから締め出される病院、侵害されたデータベースから漏洩した何百万ものパスワード、単一の脆弱なパスワードから侵入を許した攻撃者によって停止されたパイプライン。 [BLOCK_TYPE SECTION/STEP]
サイバーセキュリティは、フーディーを着たハッカーになることではありません。システムがどのように失敗するかを理解し、もしもの時(if:not if:)に耐えうる防御を構築することです。 [BLOCK_TYPE SECTION/STEP]
このレッスンは、基礎概念から脅威モデリング、ネットワーク防御、アプリケーションセキュリティ、インシデント対応、そして最後にこの知識が給料につながるキャリアパスへと導きます。
CIA Triad [BLOCK_TYPE SECTION/STEP]
The CIA Triad
[BLOCK_TYPE SECTION/STEP]セキュリティに関するすべての決定は、3つの原則に紐づきます。業界ではこれを CIAトライアド と呼びます。情報機関とは一切関係ありません。 [BLOCK_TYPE SECTION/STEP]
[BLOCK_TYPE SECTION/STEP]
機密性(Confidentiality): データにアクセスできるのは、認可された人だけです。カルテは患者本人と担当医だけが見られるべきで、インターネット上の誰にでも見られるべきではありません。 [BLOCK_TYPE SECTION/STEP]
[BLOCK_TYPE SECTION/STEP]
完全性(Integrity): データが改ざんされていない状態です。銀行が残高を$500と表示した場合、誰かが$5,000から変更したわけではないことを信じられる必要があります。 [BLOCK_TYPE SECTION/STEP]
可用性: システムとデータは必要に応じてアクセス可能であること。病院の患者記録は、緊急時にネットワークがダウンすれば役に立たない。
これらのうち少なくとも1つを侵害する侵害がほとんどです。ランサムウェア攻撃は可用性を侵害します。データ漏洩は機密性を侵害します。金融取引に対する中間者攻撃は完全性を侵害します。
現実のセキュリティは、これら3つの間のトレードオフについてです。金庫に閉じ込められたシステムは完璧な機密性を持ちますが、可用性はゼロです。
攻撃ベクトル
攻撃は実際にどのように起こるのか
ハリウッドでは、ハッカーが端末に緑色のコードを猛烈に打ち込む様子が描かれます。現実にはそれほど派手ではありません。ほとんどの侵害は、いくつかの一般的な攻撃ベクトルのいずれかから始まります:
フィッシング: 人間を騙してリンクをクリックさせたり、添付ファイルを開かせたり、偽のサイトで認証情報を入力させたりする手法。未だに最も一般的な初期アクセス方法です。スピアフィッシングは、特定の個人を狙い、 customized bait を用いて攻撃を行います。
マルウェア: 損害を与えたり、未認可のアクセスを得るためのソフトウェア: ランサムウェアはファイルを暗号化して身代金を要求する、トロイの木馬は正当なソフトウェアのように見せかけて disguise themselves as legitimate software、ワームはネットワークを自動的に横断して spread automatically across networks。
サプライチェーン攻撃: 信頼できるベンダーやソフトウェア依存関係を攻撃する手法。2020年のSolarWinds攻撃では、日常的なソフトウェア更新に悪意あるコードを注入し、18,000の組織(米政府機関を含む)に配布されました。
認証情報攻撃: パスワードのブルートフォース攻撃、credential stuffing(他の侵害から漏洩したパスワードを使用)、または変更されていないデフォルト認証情報の悪用。
ゼロデイエクスプロイト: ソフトウェアベンダーがまだ知らない脆弱性を攻撃する手法。これらは稀だが、パッチが存在しないため壊滅的な被害をもたらす。
脅威アクターとMITRE
攻撃の背後にいるのは誰か?
すべての攻撃者が同じではない。セキュリティ専門家は動機と能力によって攻撃者を分類する:
スクリプトキディ: 既存のツールを使って攻撃を行う低スキルな攻撃者。実際の被害を引き起こすが、洗練された手法は用いない。
ハクティビスト: 政治的または社会的動機を持つ。ウェブサイトの改ざん、データ漏洩、サービス拒否攻撃を仕掛け、意見を主張する。
サイバー犯罪者: 利益追求型。ランサムウェアグループ、詐欺グループ、データブローカーなど。インターネットに適応した組織犯罪である。
国家支援アクター (APT): 政府が支援する高度で持続的な脅威。大規模な予算、カスタムツール、年単位の忍耐力を持つ。スパイ活動、インフラ破壊、知的財産窃取を目的とする。
内部関係者: 正当なアクセス権を持つ従業員や契約者が、それを悪用する。悪意による場合も、過失による場合も。
MITRE ATT&CK Framework
MITRE ATT&CKは、攻撃者の実際の手法をフェーズ別に整理した公開ナレッジベースです。初期アクセス、実行、永続化、権限昇格、ラテラルムーブメント、データ持ち出しなど、各段階で攻撃者が行う手法をカタログ化しています。防御者はこれを活用して、各段階での攻撃者の行動を理解し、検知ルールを構築します。
ファイアウォール、VPN、IDS/IPS
ネットワーク防御レイヤー
ネットワークセキュリティとは、ネットワークに入る、出る、内部で移動するトラフィックを制御することです。1つのデバイスだけでこれを行うわけではありません。ディフェンス・イン・デプスとは、複数のコントロールを重ねることを意味です。
ファイアウォール: 防御の第一線です。ファイアウォールはネットワークトラフィックを検査し、ルールに基づいて許可またはブロックします。基本的なファイアウォールはIPアドレスとポート番号でフィルタリングします。次世代ファイアウォール(NGFW)はトラフィックの中の実際のコンテンツを検査し、特定のアプリケーションを識別できます。
VPNs (Virtual Private Networks): 2点間のトラフィックを暗号化し、パブリックインターネットのような信頼できないネットワーク上にセキュアなトンネルを作成します。リモートワーカーはVPNを使用することで、オフィスにいる場合と同様に社内リソースにアクセスできます。
IDS/IPS (Intrusion Detection/Prevention Systems): IDSはトラフィックを監視し、疑わしいものを発見するとアラートを発します。IPSは同様の機能に加え、自動的にトラフィックをブロックすることができます。IDSを監視カメラ、IPSを監視カメラとドアを自動的にロックする警備員に例えることができます。
Network Segmentation: ネットワークを隔離されたゾーンに分割し、あるエリアでの侵害が他のエリアに容易に広がらないようにする仕組みです。マーケティング部門のワークstationが侵害された場合でも、ファイナンス部門のデータベースサーバーにアクセスできない状態を維持します。
Zero Trust and DNS Security
Zero Trust Architecture
従来のネットワークセキュリティは城と堀のモデルに従っていました。強固な境界防御を設けていましたが、一度内部に入れば信頼されるというものです。このモデルは、攻撃者が境界を突破した場合や、境界自体が消滅した場合(全員が在宅勤務する場合など)に壊滅的な失敗を招きます。
Zero Trust はこのモデルを逆転させます。決して信頼せず、常に検証する。すべてのリクエストは、ネットワークの内部から来るものでも外部から来るものでも、認証・認可・暗号化されなければなりません。主な原則は以下の通りです。
- 明示的な検証: 利用可能なすべてのデータ(アイデンティティ、場所、デバイスの健全性、サービスやワークロード、データの分類)に基づいて認証と認可を行います。
- 最小権限アクセス: ユーザーやシステムに対して、必要な最小限の権限を、必要な期間だけ与えます。
- 侵害を想定: 攻撃者がすでに内部に侵入していると想定してシステムを設計します。侵害が発生した場合の影響範囲を最小限に抑えます。
DNS セキュリティ
DNSはドメイン名をIPアドレスに変換します。攻撃者はこれをさまざまな方法で悪用します:DNSスプーフィングはユーザーを悪意のあるサイトにリダイレクトし、DNSトンネリングはDNSクエリ内にデータ漏洩を隠し、ドメイン乗っ取りは正当なドメインを乗っ取ります。DNSSECはDNS応答に暗号署名を追加して改ざんを防止します。
インジェクション攻撃
アプリケーションが攻撃面になる場合
ネットワーク防御が完璧であっても、アプリケーション自体に脆弱性があれば、攻撃者は正面玄関から侵入してくる。
SQLインジェクション: 攻撃者が入力フィールドに悪意のあるSQLコードを挿入する。アプリケーションがユーザー入力を連結してデータベースクエリを構築する場合、攻撃者はデータベース全体を読み取り、変更、または削除できる。例: ログイン画面に ' OR 1=1 -- を入力すると、認証を完全にバイパスする可能性がある。
クロスサイトスクリプティング (XSS): 攻撃者が他のユーザーが閲覧するWebページに悪意のあるJavaScriptを注入する。被害者がページを読み込むとき、ブラウザでスクリプトが実行され、セッションクッキーを盗んだり、フィッシングサイトにリダイレクトしたり、ページ上の表示を変更したりする可能性がある。
OWASP Top 10: Open Web Application Security Projectは、Webアプリケーションの最も重要なセキュリティリスクを定期的に更新して公開するリストです。InjectionとXSSは10年以上にわたってリストに掲載されています。その他の項目には、Broken Access Control、Security Misconfiguration、Insecure Designなどが含まれます。
Injection攻撃の対策は入力フィルタリングだけではありません。パラメータ化クエリ(prepared statementsとも呼ばれます)です。ユーザー入力を含むSQL文字列を構築する代わりに、入力を別のパラメータとして渡し、データベースがそれをデータとして扱い、コードとして扱わないようにします。
Authentication and Secure Development
Authentication Done Right
Authenticationは、自分が主張する人物であることを証明することです。Authorizationは、許可されていることを決定することです。この2つを混同することは、脆弱性の一般的な原因です。
多要素認証 (MFA): 2つ以上の要素を必要とする。知っているもの(パスワード)、持っているもの(電話やハードウェアキー)、存在するもの(指紋)。MFAは、盗まれたパスワードだけでは不十分なため、認証情報ベースの攻撃の大部分をブロックする。
OAuth 2.0とOpenID Connect: 委任された認可と認証のための標準。「Googleでサインイン」をクリックすると、OAuthはアプリケーションがGoogleのパスワードを見ることなく、Googleを通じてあなたの身元を確認することを可能にする。
安全なソフトウェア開発ライフサイクル (SDLC)
セキュリティは開発後に後付けできるものではない。安全なSDLCは、すべての段階にセキュリティを統合する:
- 設計: 脅威モデリング: 何が起こり得るか?
- 開発: セキュアコーディング基準、コードレビュー、静的解析ツール
- テスト: 動的解析、ペネトレーションテスト、ファジングテスト
- デプロイ: 強化された設定、シークレット管理
- 保守: パッチ適用、脆弱性スキャン、依存関係の更新
インシデント対応ライフサイクル
防御が失敗したとき
防御は完璧ではありません。侵害が発生した場合、軽微なインシデントと大惨事の違いは、どれだけ迅速かつ効果的に対応できるかにあります。
標準的なインシデント対応ライフサイクルには6つのフェーズがあります:
1. Preparation: チームを構築し、役割を定義し、プレイブックを作成し、卓上演習を実施します。これはインシデントが発生する前に実施されます。準備不足のチームは、誰が何をするのかを判断するのに貴重な時間を浪費します。
2. Detection and Analysis: インシデントが発生していることを特定し、その範囲を決定します。ここはSIEM(Security Information and Event Management)システムが環境全体からログを集約し、疑わしいパターンをアラートする場所です。SOC(Security Operations Center)アナリストが24/7でこれらのアラートをトリアージします。
3. Containment: 出血を止めることです。短期的な封じ込めは、感染したマシンをネットワークから隔離することを意味するかもしれません。長期的な封じ込めは、調査中にクリーンな並行環境を構築することを意味するかもしれません。
4. 根絶: 攻撃者の存在を完全に除去する:マルウェア、バックドア、侵害されたアカウント、および永続化メカニズム。
5. 回復: システムを通常の運用状態に復元する。環境がクリーンであることを確認する。攻撃者がまだ存在している可能性がないよう、注意深く監視する。
6. 教訓の抽出: 最も見落とされがちなフェーズ。非難を伴わないポストモーテムを実施する:何が起こったか、どのように検知されたか、何が機能したか、何が機能しなかったか、再発を防止するための変更点。
インシデント対応シナリオ
シナリオ:午前2時のランサムウェア
あなたはオンコールセキュリティアナリストです。午前2時14分、SIEMがアラートを発報しました:複数のファイルサーバーで異常な暗号化アクティビティが検出されています。数分以内に、欧州オフィスの従業員から、ファイルがランサムノートに置き換えられ、50ビットコインを要求されているとの報告がありました。
インシデント対応計画では、IRチームリードへのエスカレーションとランサムウェアプレイブックの実施を定めています。CEOから電話がかかってきています。法務部は通知義務について確認を求めています。ITディレクターはバックアップがクリーンかどうかを知りたがっています。
教訓 [BLOCK_TYPE ir/lessons]
誰もが飛ばすフェーズ
[BLOCK_TYPE ir/lessons]即時の危機が収束した後、教訓フェーズは組織が実際に改善するかどうかを決定します。非難を伴わないポストモーテムでは、以下を問いかけます: [BLOCK_TYPE ir/lessons]
- 初期アクセスベクターは何でしたか? [BLOCK_TYPE ir/lessons]
- 検知されるまでの攻撃者の滞在時間(dwell time)はどのくらいでしたか? [BLOCK_TYPE ir/lessons]
- どのコントロールが失敗し、なぜ失敗したのか? [BLOCK_TYPE ir/lessons]
- どのコントロールが機能したか?
- 再発を防ぐために、どのような具体的で測定可能な変更が必要か?
非難しないという言葉が重要です。人々が罰を恐れる場合、ミスを隠します。ミスを隠す場合、組織は決して学びません。目標は、個人を罰することではなく、システムを修正することです。
ランサムウェア攻撃の平均滞在時間は近年減少していますが、他の攻撃タイプでは、攻撃者が数週間または数ヶ月間検知されずに潜伏していることがよくあります。検知速度は、セキュリティオペレーションにおいて最も重要な指標の一つです。
サイバーセキュリティにおけるキャリアパス
この知識の活用先
サイバーセキュリティ分野は世界的に数十万件の未充足ポジションを抱える深刻な人材不足に陥っています。この分野では、異なる性格やスキルセットに適した複数のキャリアパスが用意されています。
SOCアナリスト: 最前線。SOCアナリストはシフト制でアラートを監視し、インシデントをトリアージし、脅威をエスカレーションします。サイバーセキュリティへの最も一般的な入り口です。シフトワークとアラート疲労が予想されますが、実践的な知識を迅速に構築できます。
ペネトレーションテスター (Pentester): 組織の許可を得て侵入し、報酬を得ます。攻撃者が発見する前に脆弱性を見つけます。ネットワーク、Webアプリケーション、オペレーティングシステムに関する深い技術スキルが必要です。創造的な問題解決が必須です。
セキュリティエンジニア: 防御インフラを設計・構築します:ファイアウォール、SIEMシステム、IDプラットフォーム、暗号化システム。この役割はビルダーです。DevOpsやクラウドエンジニアリングとの重複が強い。
デジタルフォレンジックとインシデントレスポンス (DFIR): 調査担当者。侵害が発生したとき、DFIR専門家は何が起こったか、どのように、いつ起こったかを再構築します。細部への細心の注意と、法的プロセスおよび証拠扱いへの適性が必要です。
認定資格
認定資格は必須ではありませんが、キャリアの扉を開くものです:
- CompTIA Security+: 業界標準のエントリーレベル認定資格。基礎的なセキュリティ概念をカバーします。良い出発点です。
- OSCP (Offensive Security Certified Professional): ハンズオン型のペネトレーションテスト認定資格。24時間以内にラボ内の複数機種への侵入を試みます。高い評価を得ており、実際に難しい資格です。
- CISSP (Certified Information Systems Security Professional): セキュリティ戦略、リスク管理、ガバナンスをカバーするマネジメントレベル認定資格。5年以上の経験が必要です。シニアおよびルーダーシップの役割に広く要求されます。
あなたのセキュリティマインドセット
まとめ
これまで、CIAトライアド、脅威アクターと攻撃ベクトル、ネットワーク防御とゼロトラスト、アプリケーションセキュリティとインジェクション攻撃、検知から教訓まで含むインシデント対応、そしてこれらすべてを活かすキャリアパスについて幅広く学んできました。
防御の深層化の核心原則は、単一の制御では十分ではないということです。ファイアウォールをセグメンテーションと組み合わせ、セグメンテーションを監視と組み合わせ、監視をインシデント対応と組み合わせ、そしてすべてを、何か問題が発生したときに何をすべきかを知るtrained peopleと組み合わせます。
攻撃者は1つのギャップを見つけるだけで十分です。防御者はそれらすべてをカバーする必要があります。この非対称性が、この分野を挑戦的かつ重要なものにしています。