OSI参照モデルとは?層別セキュリティ対策とTCP/IPモデルとの比較
「どの層を守っているか」を意識せずにセキュリティ対策を積み上げると、思わぬ抜け穴が残ります。OSI参照モデル7層それぞれの役割と、有効な対策を整理します。
OSI参照モデルとは
OSI参照モデル(Open Systems Interconnection、開放型システム間相互接続)は、1980年代にISO(国際標準化機構)が 策定した、ネットワーク通信の機能を7つの層に分割して整理するための概念モデルです。実際のプロトコル実装が この7層にきれいに対応しているとは限りませんが、「通信のどの段階で何が起きているか」「どこに脆弱性が 存在しうるか」を議論するための共通言語として、今でも広く使われています。
7層それぞれの役割とセキュリティ対策
| 第7層 アプリケーション層 | HTTP・DNS・SMTPなど、利用者が直接触れるプロトコル。SQLインジェクション、XSS、フィッシング、認証不備が主な脅威。 対策例: 入力値検証、WAF、多要素認証、セキュアコーディング |
|---|---|
| 第6層 プレゼンテーション層 | データの符号化・暗号化・圧縮を担う層(TLSの一部機能もここに位置づけられることがあります)。 対策例: 適切な暗号スイートの選定、証明書検証の徹底 |
| 第5層 セッション層 | 通信セッションの確立・維持・終了を管理。セッションハイジャック、セッション固定攻撃が脅威。 対策例: セッションIDの再生成、タイムアウト設定 |
| 第4層 トランスポート層 | TCP・UDPによる end-to-end のデータ転送。TCPの構造を悪用したSYNフラッド等が脅威。 対策例: TLS(第4層〜第6層にまたがる)、SYN Cookie、レートリミット |
| 第3層 ネットワーク層 | IPによるルーティング。IPスプーフィング、ルーティング操作、DDoSが主な脅威。 対策例: ファイアウォール、IPS、BCP38(送信元アドレス検証) |
| 第2層 データリンク層 | Ethernet・Wi-Fiなど、隣接ノード間の伝送。ARPスプーフィング、MACアドレス偽装が脅威。 対策例: ポートセキュリティ、802.1X認証、Dynamic ARP Inspection |
| 第1層 物理層 | ケーブル・電波など物理的な伝送路。盗聴、物理的な機器への不正アクセスが脅威。 対策例: 施錠管理、ケーブルの敷設経路管理、電波漏洩対策 |
重要なのは、それぞれの層が独立した攻撃対象になりうるという点です。アプリケーション層で どれだけ堅牢な認証を実装していても、データリンク層でARPスプーフィングを許してしまえば、通信そのものを 中間者攻撃で盗聴・改ざんされる可能性があります。シールドガードNETのようなネットワーク診断 ツールは、主に第3層・第4層(ルーターの脆弱性、開放ポート)を対象にしていますが、それだけで全層をカバー できるわけではない、という前提を持つことが大切です。
TCP/IPの4層モデルとの比較
現実のインターネット通信の多くは、OSIの7層モデルではなく、より実装寄りのTCP/IPの4層モデル (または5層モデル)を前提に設計されています。両者の対応関係を整理すると次のようになります。
| TCP/IP 4層モデル | 対応するOSI層 / 代表プロトコル |
|---|---|
| アプリケーション層 | OSI第5〜7層 / HTTP, DNS, SMTP, SSH |
| トランスポート層 | OSI第4層 / TCP, UDP |
| インターネット層 | OSI第3層 / IP, ICMP |
| ネットワークインターフェース層 | OSI第1〜2層 / Ethernet, Wi-Fi |
TCP/IPモデルは、OSIモデルの第5〜7層(セッション・プレゼンテーション・アプリケーション)をまとめて 「アプリケーション層」1つとして扱う点が最大の違いです。これは歴史的な経緯によるもので、TCP/IPが 実用化された当初、OSIモデルほど厳密な層分離を前提に設計されていなかったためです。実務では、 セキュリティ製品のカタログや脆弱性情報が「レイヤー7の攻撃」のようにOSI風の呼び方をする一方、 実装や設定ファイルは「アプリケーション層」とTCP/IP風にまとめて書かれることが多く、両方のモデルを 知っておくと、ドキュメントの読み違いを防げます。
まとめ
- OSI参照モデルは通信を7層に分割する概念モデルで、脅威と対策を層ごとに整理する共通言語として有用
- 各層は独立した攻撃対象になりうるため、1つの層だけを厚く守っても全体の安全性は保証されない
- 実装で使われるTCP/IPの4層モデルは、OSIの第5〜7層を「アプリケーション層」としてまとめている
- セキュリティ製品がどの層を対象にしているかを意識することが、対策の抜け漏れを防ぐ第一歩