なぜネットワークを理解する必要があるか
すべてのサイバー攻撃はネットワークを通じて行われます。プロトコルの仕組みを理解することで、「なぜその攻撃が成立するのか」「どう防ぐのか」が明確になります。
OSIモデルとセキュリティ
ネットワーク通信は7層のOSIモデルで理解できます。各層に特有の脅威と対策があります。
| 層 | プロトコル例 | 主な脅威 | 対策 |
|---|---|---|---|
| 7 アプリケーション | HTTP, DNS, SMTP | フィッシング, SQLi, XSS | WAF, 入力検証 |
| 6 プレゼンテーション | TLS/SSL | 証明書詐称, ダウングレード | 証明書ピンニング |
| 5 セッション | NetBIOS | セッションハイジャック | セッション管理 |
| 4 トランスポート | TCP, UDP | SYNフラッド, ポートスキャン | ファイアウォール, IPS |
| 3 ネットワーク | IP, ICMP | IPスプーフィング, MITM | uRPF, IPsec |
| 2 データリンク | ARP, Ethernet | ARPスプーフィング | DAI (Dynamic ARP Inspection) |
| 1 物理 | ケーブル, Wi-Fi | 盗聴, 物理アクセス | WPA3, 物理セキュリティ |
TCP/IP とセキュリティ
TCPの3ウェイハンドシェイク
クライアント → SYN → サーバー
クライアント ← SYN-ACK ← サーバー
クライアント → ACK → サーバー
SYNフラッド攻撃はこのハンドシェイクを悪用します。攻撃者は大量のSYNパケットを送り、サーバーのキューを枯渇させます。
対策: SYN Cookie(TCPスタックの機能)、レート制限、Anycast型DDoS防御
IPアドレスとNAT
プライベートIPアドレス(10.x.x.x / 172.16-31.x.x / 192.168.x.x)はインターネットにルーティングされません。NATは内部ネットワークを隠蔽する効果がありますが、セキュリティ対策の代替にはなりません。
DNSの仕組みと攻撃
DNS(Domain Name System)はドメイン名をIPアドレスに変換するシステムです。インターネットの「電話帳」と呼ばれます。
DNSキャッシュポイズニング
攻撃者がDNSサーバーのキャッシュに
偽の応答を注入 → ユーザーを悪意のあるサイトへ誘導
対策:
- DNSSEC: DNSレスポンスへのデジタル署名
- DNS over HTTPS (DoH): DNS通信の暗号化
- DNS over TLS (DoT): TLSによるDNS保護
日本ではDNSSECの普及率はまだ低い状況です。ただし、多くのパブリックDNS(8.8.8.8, 1.1.1.1)はDNSSEC検証をサポートしています。
HTTP vs HTTPS
| 項目 | HTTP | HTTPS |
|---|---|---|
| 暗号化 | なし(平文) | TLS 1.2/1.3 で暗号化 |
| 盗聴リスク | 高い | ほぼなし |
| 改ざんリスク | 高い | なし(TLSで保護) |
| なりすまし検証 | 不可 | サーバー証明書で検証 |
| パフォーマンス | わずかに速い | HTTP/2併用で実用上差なし |
| SEO影響 | ネガティブ | ポジティブ(Googleランキング) |
TLSのハンドシェイク
TLS(Transport Layer Security)は以下の手順で安全な通信路を確立します:
- Client Hello(対応するTLSバージョン・暗号スイートを提示)
- Server Hello(選択した暗号スイート)+ サーバー証明書送信
- 証明書の検証(CAチェーン、有効期限、ドメイン一致)
- 鍵交換(Diffie-Hellman等で共通シークレット生成)
- 暗号化通信の開始
sequenceDiagram participant C as クライアント participant S as サーバー C->>S: ① ClientHello(TLSバージョン、暗号スイート一覧) S->>C: ② ServerHello(選択した暗号スイート) S->>C: ③ Certificate(サーバー証明書) S->>C: ④ ServerHelloDone Note over C: 証明書の検証<br/>(CAチェーン・有効期限・ドメイン) C->>S: ⑤ ClientKeyExchange(鍵交換) C->>S: ⑥ ChangeCipherSpec(暗号化開始を通知) C->>S: ⑦ Finished(ハッシュで整合性確認) S->>C: ⑧ ChangeCipherSpec S->>C: ⑨ Finished Note over C,S: 🔒 暗号化通信開始
TLS証明書の失効は即座に通信障害を引き起こします。Let’s Encryptなどの自動更新機能(ACME)を活用し、有効期限の監視も設定しましょう。2026年現在、多くのブラウザは証明書の有効期間を47日以下に短縮する方向で議論が進んでいます。
ファイアウォールの基本
ファイアウォールはネットワークトラフィックをルールに基づいてフィルタリングします。
| 種類 | 動作 | 特徴 |
|---|---|---|
| パケットフィルタリング型 | IP/ポート単位でフィルタ | 高速・シンプル |
| ステートフル型 | 接続状態を追跡 | より高精度 |
| アプリケーション型(WAF) | HTTP内容を検査 | Webアプリ特化 |
| NGFW | 全層を統合的に検査 | 最も高機能 |
DNSキャッシュポイズニング攻撃への対策として最も効果的なものはどれですか?