OSI の 7-Layers モデルをセキュリティ面から考える:各層と攻撃手法をマッピングしてみた

An overview of the OSI model and its security threats

2023/05/05 Tripwire — Open Systems Interconnection (OSI) モデルは、International Standards Organization (ISO) が作成した概念的なフレームワークであり、あらゆるコンピュータ・ネットワーク書籍において、40年以上にわたって使用されている。また、ほぼ全てのサイバー・セキュリティ試験で、好んで使用されるリソースでもある。OSI モデル は、コンピュータ・システム間の通信が行われる方式を理解する際に有効な、7つの層で表現されている。具体的に言うと、各層におけるプロトコル/サービス/インターフェイスを排他的に分離するため、ネットワークに関連するトラブルシューティングに有益であり、メーカーが技術を定義する際に、他社との互換性を維持するためにも有効である。

Source: Profitap

その一方で、技術の進歩により、脅威アクターたちは、ネットワークを侵害する複雑な方法を数多く発見している。したがって、OSI 各層の機能と、その脆弱性を理解することで、数多くのネットワーク攻撃を防ぐことも可能になる。

1 – 物理層

この層は、ケーブル/ワイヤ/無線信号などの物理媒体上での、生のビット・ストリーム (2進数の1と0) の送受信を担当し、物理的な接続の確立/維持/解除を行う。データビットを同期させ、データ伝送速度や、全二重/半二重モードなどの、データ伝送モードを定義する。物理層で使用されるデバイスは、イーサネット・ケーブル/同軸ケーブル/光ファイバーなどのコネクターである。

サービス拒否 (DoS) 攻撃は、システムのハードウェアである有形層/物理層がターゲットになる。DoS 攻撃は、すべてのネットワーク機能を停止させる。また、DoS 攻撃は、ネットワーク・ケーブルの物理的な切断/解除でも実行できる。物理層の脆弱性は、アクセス制御/ビデオ監視/改ざん防止電磁波シールド/冗長リンクなどの、物理的なセキュリティ対策で緩和できる。

2 – データリンク層

この層は、フレーム内にカプセル化された情報フローを扱う。この層は、データのエラーを検出して修正し、物理リンクを介したネットワーク機器間の、信頼性の高い伝送を保証する。この層は、連続かつ一貫したデータ交換/エラー制御/フロー制御を担当する。CRC (Cyclic Redundancy Check) により、失われたフレームの監視/再送信も可能となる。このレイヤーに属するのは、ブリッジ/スイッチ/NIC (Network Interface Controllers) などのデバイスや、ARP (Address Resolution Protocol)/PPP (Point-to-Point Protocol)/STP (Spanning Tree Protocol)/LACP (Link Aggregation Control Protocol) などのプロトコルである。

データリンク層への攻撃は、内部の LAN (Local Area Network) から発生する。これらの攻撃には、以下のものなどがある:

  • ARP スプーフィング:この攻撃は MiTM (Man in The Middle) 攻撃の1つであり、ネットワーク通信チャネルの両側を装う攻撃者が、パケットを盗聴して、データの窃取および通信の変更を行い、さらには、セッション・ハイジャックや DDoS (分散サービス拒否) 攻撃に至るこになる。この攻撃を防ぐにためには、プライベート VLANS および スタティック ARP を有効化し、IDS (Intrusion Detection Systems) を導入する。
  • MAC フラッディング攻撃:この攻撃は、ネットワーク・スイッチ上で行われる。脅威アクターは、スイッチの MAC (Media Access Control) テーブルを、偽の MAC アドレスでオーバーフローさせ、有効なアドレスと置き換える。それにより、スイッチはネットワークハブのように動作し、正規のユーザーが Web にアクセスしようとすると、ネットワーク全体にブロードキャスト・フラッドが発生する。したがって、正規のユーザー向けのデータが、攻撃者に受信されることになる。この攻撃は、ポート・セキュリティを有効化し、AAA (Authentication, Authorization, and Accounting) サーバで認証を行うことで軽減される。
  • スパニング・ツリー攻撃:STP (Spanning Tree Protocol) は、冗長スイッチ間の潜在的なループを除去し、無限のブロードキャスト・トラフィック・ストームの発生を防ぐものだ。脅威アクターは、ルート・ブリッジとなる新しい STP デバイスを追加することで動作を変更し、攻撃者のスイッチを介してトラフィックを送信する。各種のスイッチ上で、BPDU (Bridge Protocol Data Unit) ガードを有効化すると、この攻撃を防ぐことができる。
3 – ネットワーク層

ネットワーク層はパケットを操作し、デバイスやネットワーク間でパケットをルーティングするレイヤーである。論理的なデバイスの識別とアドレッシングを管理し、パケットを転送するための最短かつ論理的/効率的な経路を選択することで、ルーティングを実行する。ルーターとスイッチは、この層に関連する最も一般的なデバイスである。この層で機能するプロトコルには、IP (Internet Protocol)/ICMP (Internet Control Message Protocol)/RIP (Routing Information Protocol)/OSPF (Open Shortest Path First) などがある。

ネットワーク層での攻撃には、インターネット上で行われる DDoS 攻撃などがある。この攻撃では、標的とされるルーターが不正なリクエストに圧倒され、正規のリクエストを受け付けられなくなる。ネットワーク層への攻撃の機会を制限するものとして、一般的に用いられるものには、Packet Filtering/VPN (Virtual Private Networks)/IPsec/Firewall などのセキュリティ機構がある。

4 – トランスポート層

この層は、送信元と送信先の間で point-to-point 接続を確立し、データが正しい順序で伝送されることを保証する。また、フロー制御/エラー制御/データの再組み立て/セグメンテーションも担当する。トランスポート層のプロトコルの例としては、TCP (Transmission Control Protocol)/UDP (User Datagram Protocol) などがある。

この層の攻撃は、ポートスキャンにより特定した、脆弱なオープンポートを介して行われることが多い。

  • SYN フラッド攻撃:TCP の 3-Way ハンドシェイクを悪用した、DDoS 攻撃の一種である。攻撃者は、サーバの各ポート経向けて、複数の SYN パケットを送信する。対象となるサーバは、それぞれの SYNパケットに対して SYN-ACK (Synchronize-Acknowledge) メッセージを送信して確認を行う。悪意のクライアントが、予測される通りに最後の ACK パケットを送信しないと、サーバ上にハーフオープン・セッションが作成される。したがって、サーバのリクエスト処理能力が枯渇し、正当なクライアントへの新しいリクエストやサービスが拒否されるようになる。SYN フラッドが続くと、サーバは機能不全に陥り、クラッシュに至る。SYN リクエストに対して、僅か 16 Byte のマイクロブロックを割り当て、SYN クッキーと RST クッキーを維持することで、この SYN フラッド攻撃は軽減される。
  • スマーフ攻撃:この攻撃手法は、1980年代に流行したものでもある。どこにでもあるようなオモチャのフィギュアから名付けられたスマーフ攻撃は、DDoS 攻撃の一種でもある。この攻撃は、ターゲットとなるサーバの IP アドレスを、送信元 IP アドレスとして、IP ブロードキャスト・ネットワークに偽の ING (ICMP Echo Request) パケットを生成することで実行される。多くの ICMP 応答が、どこからともなく送られてくるため、標的とされたサーバは圧倒され、ダウンしてしまう。受信トラフィックを検査し、不正な ICMP 応答をブロックすることで、Smurf 攻撃の可能性を抑制できる。
5 – セッション層

この層は、ローカルデバイスとリモートデバイス間における、セッションの確立/維持/終了を担当する。同期と回復を担当し、データの伝送中にチェックポイントを追加していく。データ伝送中に、チェックポイントが追加され、伝送エラーが発生した場合は、最後のチェックポイントから伝送が再開される。

このレイヤーにおける一般的な攻撃は以下の通りである:

セッション・ハイジャック: 個人情報やパスワードにアクセスするために、脅威者がセッション・トークンを侵害し、Web セッションを乗っ取る攻撃である。多要素認証による強力なパスワード/VPN に加えて、ソフトウェアを常に最新の状態に保つことが、セッション・ハイジャック攻撃に対する緩和策になり得る。

MiTM攻撃 :この攻撃では、二者間のデータ伝送セッション位置する脅威アクターが、盗聴とメッセージの中継を行う。この種の侵害では、安全ではないオープン Wi-Fi 接続が、最もよく使われる攻撃ベクターとなる。SSH (Secure Shell) などの通信技術により、この種の攻撃は制限される。

6 – プレゼンテーション層

この層は、送信者が用いるフォーマットから、アプリケーション層が理解できる共通のフォーマットへと、データを変換する役割を担っている。たとえば、ASCII から EBCDIC への変換などの、異なる文字セットの変換も行う。サイバー・セキュリティの観点から、最も重要なのは、この層がデータの暗号化と復号化を処理することである。ネットワーク伝送のためのデータ圧縮も、プレゼンテーション層で管理される。セッション・ハイジャックと呼ばれる SSL (Secure Sockets Layer) ハイジャックは、プレゼンテーション層で発生する。それらの暗号化技術は、伝送中のデータの機密性と完全性を確保するために用いられる。

7 – アプリケーション層

この層は、Mail Service/Directory Services/FTAM (file transfer, access, and management) などの、エンドユーザー向けのサービスを提供する。File Transfer Protocol (FTP)/Simple Network Management Protocol (SNMP)/Domain Name System (DNS)/Hypertext Transfer Protocol (HTTP)/eMail Protocol ( (SMTP, POP3, IMAP) などが、アプリケーション層のプロトコルの一例である。

アプリケーション層への攻撃は、防御が最も困難なものである。つまり、外部の世界に最もさらされている層であり、また、多くの脆弱性が発生するためである。Layer-7 およびゼロデイ攻撃を検出するための、アプリケーション監視テクノロジを採用し、アプリケーションを定期的に更新することが、この層を保護するためのベスト・プラクティスである。

最も一般的なサイバー攻撃は、この層で発生しする。そこに含まれるのは、ウイルス/ワーム/トロイの木馬/フィッシング攻撃/DDoS 攻撃/HTTP フラッド/SQL インジェクション/クロス・サイト・スクリプティングなどである。

まとめ

OSI モデルは、デバイス間の通信方法を表現したものである。この概念モデルにより、データが伝送される仕組みを容易に理解できる。その複雑なプロセスにおいて、脅威アクターたちはシステムを悪用し、侵害する方法を発見していく。それぞれのレイヤーで利用可能な攻撃や脆弱性の種類を特定し、ネットワークを保護するための適切な防御戦略を実施することが、きわめて重要となる。

OSI の 7-Layers モデルと、攻撃手法をマッピングしてくれる、とても分かりやすい記事ですね。そして、大半の攻撃パターンが、5 – セッション層/6 – プレゼンテーション層/7 – アプリケーション層の欠点を突いているものだと分かってきます。ちょっとふざけたタイトルで恐縮ですが、2021/08/27 に「セキュリティを押しつけるな!ネットワークさんが怒ってます!」という記事をポストしています。よろしければ、以下のオススメお記事も含めて、ご参照ください。

2023/01/03:セキュリティの強制は行き詰まる
2021/09/09:OWASP Top-10 2021 Draft
2021/09/07:ネットワーク境界が消えた世界

%d bloggers like this: