TCP/IP セキュリティ上の欠陥
情報漏洩
概要
ネットワーク上で配信されるメッセージには、アカウント番号やパスワードなどの機密情報が含まれることが多く、これらの情報が漏洩すると悲惨な結果を招きます。中でも、スニッフィングは一般的なネットワーク攻撃の隠れた手段です。
匂いを嗅ぐ
概要
- 問題: 共有ネットワーク アーキテクチャでは、すべてのデータがブロードキャスト モードで送信されるため、ネットワーク カードの動作モードを「プロミスキャス」に設定するだけで、ネットワーク セグメント内のすべての通信データを傍受できます。
- 解決策: スニッフィングとブロードキャストによって引き起こされる問題を解決するには、スイッチド ネットワーク アーキテクチャを使用して、各ポートをそのポートに接続されている物理アドレスにバインドし、データを「宛先アドレス」に従って対応するポートに直接送信します。フレームヘッダー、ポート。しかし、ARP スプーフィングという別の問題が発生します。
ARPスプーフィング
- 問題の説明: ARP スプーフィングは、攻撃者がスイッチド ネットワーク環境でスニッフィングを実装するための基盤です。ネットワーク内にホストAがあるとすると、BとCの通信データを盗聴する必要があります。3 つのアノテーションの IP アドレスは IPA、IPB、および IPC であり、物理アドレスは MACA、MACB、および MACC です。
- プロセスの説明:
1) A はまず、マッピング関係 IPA/MACC を含む ARP 応答メッセージを B に送信します。
2) B は、この応答を受信した後、自身のキャッシュを更新し、マッピング関係 IPA/MACC を保存します。
3) A は、マッピング関係 IPA/MACB を含む ARP 応答メッセージを C に送信します。
4) 応答を受信した後、C は自身のキャッシュを更新し、マッピング関係 IPA/MACB を保存します。
5) この時点で、B と C の間のすべての通信データは A に送信されます。重要な通信データを傍受した後、A はデータを正しい宛先に転送できますが、B と C はスニッフィング動作を検出できません。ARP キャッシュは定期的に更新されますが、A は、更新間隔よりも短い頻度で ARP スプーフィング パケットを送信する限り、B と C の間でデータを傍受し続けることができます。
情報改ざん
概要
- 情報の改ざんは、ARP スプーフィングを実装するネットワーク スニッフィングに基づいて行われ、データを転送する前に改ざんされます。
- 情報改ざんの一般的な攻撃手法は、傍受したデータに悪意のあるコードを挿入し、トロイの木馬を埋め込んでウイルスを送信するというものです。
身分偽装
概要
- APRスプーフィングは、IPスプーフィングやドメインネームサーバスプーフィングに加え、TCP/IPプロトコルスタックのネットワークインタフェース層からの身分偽装を実現するものです。
行動の否定
概要
- 行動拒否とは、データ送信者がデータを送信したことを拒否する、または受信者がデータを受信したことを拒否する行動を指します。
- IP スプーフィングなど、送信者は自分の身元を隠すために、偽造した IP アドレスを使用して情報を送信します。
ネットワークセキュリティ要件
機密保持
- データの不正な開示を防ぐということは、関係のない視聴者に対してメッセージを非公開に保つことを意味します。
- スニッフィングなどはデータの機密性を破壊します。
- 暗号化により機密性が保護されます。
威厳
- データの改ざんを防止し、受信者が受信する情報が送信者が送信したメッセージであることを保証します。
- 悪意のあるコードの挿入などにより、データの整合性が破壊されます。
- ウイルス対策ソフトウェア、暗号化により完全性を保護できます。
コントロール性
- ネットワーク リソース (ハードウェアおよびソフトウェア) およびデータ (ストレージおよび通信) へのアクセス、組織によるリソースの不正使用、データの不正な開示または変更を制限します。
- その要素には、識別と認証、認可、意思決定、施行が順に含まれます。
- アクセス制御の基本的な考え方は、各通信エンティティに一意の識別子と対応するアクセス権を与えることであり、通信を実装する際には、まずエンティティの身元を確認してから、対応するアクセス制御戦略を実装します。
- ARP スプーフィング、IP スプーフィング、DNS スプーフィングなどは、制御性を破壊します。
- ファイアウォールと暗号化により、制御可能な保護が提供されます。
否認防止
- コミュニケーション主体は自らの行動に責任を持つ必要があり、自らの行為を否定することはできません。それは 2 つの側面です。1 つは送信者がデータを送信する行為を否定できないということ、もう 1 つは受信者がデータを受信したことを否定できないということです。
- IP スプーフィングなどは否認防止を破壊します。
- 暗号化は否認防止保護を提供します。
可用性
- つまり、正規のユーザーは、ネットワーク リソースを使用する必要がある場合に通常のサービスを利用できます。
- DoS 攻撃などは可用性を破壊する例です。
- 暗号化により可用性が保護されます。
暗号化と復号化
概要
- 暗号化はデータの機密性を確保するための基本的な手段であり、復号化はその逆のプロセスです。
- 暗号化アルゴリズムは、キーの作用の下でデータを暗号文に変換しますが、このプロセスはデータの不規則性を増大させるプロセスと見なすことができます。キーを指定して、暗号文を復号して平文に戻します。
暗号アルゴリズム
対称暗号化アルゴリズム
概要
- 通信する両方の当事者が同じキーを共有します。
- 暗号化と復号化はすべてこのキーに依存します。
アルゴリズム
Advanced Encryption Standard(Advanced Encryption Standard、AES)、Triple Data Encryption Standard(Triple DES、3DES)、RC2、RC4、International Data Encryption Algorithm(International Data Encryption Algorithm、IDEA など)
非対称暗号アルゴリズム
概要
- 各当事者は、公開鍵と秘密鍵のペアの鍵を持っています。
- 公開キーは公開できますが、秘密キーは秘密にしておく必要があります。
- 通信の双方は自分の公開鍵を双方に通知し、相手にデータを送信するときに、相手の公開鍵を使用して暗号化してデータの機密性を確保できます。データを受信した後、相手は秘密鍵を使用してデータを復号化できます。
アルゴリズム
RSA、デジタル署名アルゴリズム (DSA)、ElGamal、楕円曲線暗号 (ECC)
メッセージダイジェスト
概要
- データのダイジェストとは、データの特徴を表す文字列であり、通常、データのダイジェストを求める機能はハッシュ関数によって完結する。ハッシュ関数は、任意の長さのデータを受け取り、固定長のハッシュ値を生成できます。
- ハッシュ関数の式: h=H(M)、ここで、M は任意の長さの平文、H はハッシュ関数、h は H のアクションの下で M によって取得されたハッシュ値です。
- ハッシュ関数は圧縮されたマッピング プロセスです。ハッシュ値の空間は入力の空間よりもはるかに小さいです。異なる入力が同じ出力にハッシュされる可能性があり、ハッシュ値から入力値を一意に決定することは不可能です。
- TCP/IPにおけるIP、ICMP、TCP、UDPなどのプロトコルのメッセージには、概要情報の一種である2B固定長の「チェックサム」フィールドが含まれています。
メッセージ確認コード
概要
- メッセージ認証コードは、キーとメッセージ ダイジェストに基づいて取得される値であり、データ ソースの認証と整合性検証に使用できます。
プロセス
- データを送信する前に、送信者はまず、通信当事者によってネゴシエートされたハッシュ関数を使用してダイジェスト値を計算します。双方が共有するセッションキーの作用により、ダイジェストからメッセージ認証コードのみが取得されます。
- データと一緒にメッセージ確認コードを送信します。
- メッセージを受信した受信者は、まずセッションキーを使用してダイジェスト値を復元し、同時にハッシュマジックを使用して受信データのダイジェスト値をローカルに計算し、2つの値を比較します。2 つが等しい場合、パケットは認証されます。
デジタル署名
概要
- デジタル署名は通常、否認防止を保証するために使用され、認証機能を備えています。
- デジタル署名もメッセージ ダイジェストに基づく必要がありますが、メッセージ検証コードとは異なり、メッセージ検証コードは通信当事者の両方が共有するセッション キーを使用してダイジェストを処理するのに対し、デジタル署名は送信者の秘密キーを使用してダイジェストを暗号化します。受信者がデジタル署名を検証するときは、送信者の公開キーを使用して暗号化を解除する必要があります。
アルゴリズム
DSA と RSA