EBU7140 セキュリティと認証 (3) キー管理、IP 層セキュリティ

B3

鍵の管理

主要な分類:

期間別:

  • 短期: 短期キー。ワンタイム暗号化に使用されます。
  • 長期: 暗号化または認可に使用される長期キー。

サービスの種類別:

  • 認証キー: 公開キーは長期的であり、秘密キーは短期的です。
  • 機密キー: 短期。機密保持により、第三者が情報を読み取ることができなくなります。
公開鍵の配布

対称キーが公開キー暗号化を使用して配布されることはすでにわかっています。公開鍵を配布するにはどうすればよいですか?

公開アナウンス: 「これが私の公開鍵です」と直接ブロードキャストします! 欠点は、他人によって簡単に偽造されてしまうことです。

公開ディレクトリ: 公的機関に登録・保管し、定期的に変更する; 公的機関にアクセスして鍵を確認する方法もありますが、これも安全ではありません。

公開鍵機関: 公開鍵証明書の検証と発行を担当する組織。個人情報を公開鍵にバインドし、ディレクトリよりも安全です (ディレクトリからの鍵の配布の制御を強化することにより)。しかし、これは中央集中型のエンティティであるため、簡単に改ざんされる可能性があります。

公開鍵証明書: CA はあなたの公開鍵情報とそれに対応する個人情報を保管し、公開鍵が本当にあなたのものであることを検証できるため、公開鍵を取得した相手はそれを検証できます。

X.500規格

ディレクトリ構造の標準。

X.509規格

公開鍵証明書の形式の標準。ただし、ディレクトリ公開キー配布方法には誰でもアクセスできるという欠点があることが分かっていたため、その後改良され、本人認証に証明書を使用することが決定されました。

  • X.509 は X.500 の一部であり、公開キー証明書の検証に使用されます。
  • X.509 は、公開キー証明書に基づいて認証サービスを提供する承認サービスのフレームワークを提供します。
  • X.509 は、認証プロトコル、つまり公開キー証明書を使用してユーザーを検証する方法を定義します。
  • アルゴリズム: 公開鍵アルゴリズムとデジタル署名を使用します。特定のアルゴリズムに限定されませんが、RSA が推奨されます。

CA またはユーザーは証明書をディレクトリ サーバーに配置しますが、ディレクトリ サーバー自体は証明書を追加しません。

ユーザーは、公開キー情報を認証している限り、いつでも CA から自分の公開キーを回復できます。

CA のみが証明書を変更でき、他の第三者による証明書の変更は検出されます。

CA<<A>> は、A の CA によって署名された証明書を示します。

1704112803132

ユーザーの秘密キーが漏洩した場合 (ユーザーの秘密キーが漏洩した場合、または CA が危険にさらされた場合)、または証明書のプロキシとして機能し続けるためにこの CA 機関を使用したくない場合は、証明書を取り消す必要があります。

CA は定期的に CRL を発行して、使用されなくなった証明書を公開し、ユーザーはこれを使用して失効が成功したかどうかを確認できます。

AB が異なる CA 機関を使用する場合、両者は相手方に証明書の取得を要求する可能性があります。Web サイトを切り替えるときに、Web サイトが安全でない可能性があるため、アクセスするかどうかを尋ねるメッセージが表示されることがありますが、これは実際には CA 機関を変更する兆候です。

CA の構造はツリー状です。ルート ノードはルート認証局であり、他のすべての証明書を発行できます。中間証明書は、仲介者としてルート ノード証明書の機密性を高め、定期的な置換を容易にします。ターミナル ノードCA サービスのユーザー、サーバーなどを受け入れるものもあります。

画像-20240101210418957

ユーザ認証

メッセージではなくユーザーの識別に重点を置く

主に、識別子の決定、ユーザーと識別子のバインドに分かれます。

認証プロトコル

認証プロトコル: ユーザーの検証とセッション キーの交換に使用され、機密性 (セッション キーが漏洩できないこと) と適時性 (誰かが認証情報を傍受して繰り返し送信することを防ぐこと) が必要です。

アイデンティティ管理

登録されたユーザー ID を管理するにはどうすればよいですか?

共同管理システムには、ユーザー ID の認証、ユーザー権限の認可、ユーザー リソース アクティビティの記録など、多くの手順が含まれます。

学生が本を借りる場合と同様に、まず学生センターに行って本人確認を行い、確認後、学生センターは本を借りる資格があると判断し、図書券を発行します。図書券を持って図書館に行き、図書館で本を借ります。

詳細な処理:クライアントは自身のID、サーバーID、パスワードを送信し、これらの情報をASに送信します。AS がそれを受信したら、まず本人かどうかを確認し、本人であればサービスの利用許可を持っていますか? その場合は、あなたの情報を使用してチケットを作成しますので、それをサーバーに送信してください。サーバーは受信後にそれを復号化し (チケットは AS とサーバーの両方が知っているキーで暗号化されます)、検証後にユーザーにサービスを提供します。

画像-20240102005111329

問題は、ユーザーがパスワードの入力を要求され、そのパスワードが平文で送信されることです。したがって、チケットを使用して、ユーザーが渡したパスワードも置き換える方法があれば素晴らしいと思います。TGS サーバーを使用してユーザー キー情報を保存するため、クライアントは自身の ID とサーバー ID をサーバーに送信するだけで済みます。これは以下のケルベロス アルゴリズムです。

ケルベロス

ケルベロスという名前は非常に興味深いもので、地獄の三つの頭の犬を意味します。

これは、ユーザー認証およびアクセス制御アプリケーションであり、分散環境で使用するために設計された認証サービスです。サードパーティを通じてユーザー ID を検証し、許可された通信を確立し、セキュリティで保護されていないネットワークでもユーザーが自分の ID を証明できるようにします。クライアントとサーバーが認証された通信を確立できるようにするサードパーティ認証サービス。

ユーザー認証プロセスで発生する可能性のある主な問題は 3 つあります。ユーザーをシミュレートしてワークステーションへのユーザーのアクセス権を取得すること、ワークステーションをシミュレートしてユーザーにサービスを提供すること、およびユーザー認証情報を傍受して再生してアクセス許可を取得することです。Kerberos は主にこれらの問題を解決するために設計されています。

まず、Kerberos 認証にはいくつかのオブジェクトがあります: KDC はそのサーバー (下図の AS と TGS を含む)、クライアント、サーバーです。K サーバーは、ユーザーが登録したすべての ID パスワード情報を保持しており、チケット生成のために他のサーバーとキーを共有します (異なるドメインのレルム内の K サーバーもキーを共有します)。

画像

AS TGS は TGT を復号化するためのキーを共有し、TGS S は ST を復号化するためのキーを共有します。

画像-20240102110404153

ユーザーの身元をチケットではなくパスワードで確認するのはなぜでしょうか? ネットワークは安全ではないため、パスワードを盗聴する盗聴者に注意してください。

また、ユーザーにとってはログインの度にユーザー情報を入力するのが面倒であるという問題もありますが、情報は一定期間保存できますが、保存期間はあまり長くなく、セキュリティを確保するために定期的に再送信する必要があります。これにより、タイムスタンプの概念が導入されます。

画像-20240102124810929

上記の内容は主に Kerbero4 アルゴリズムの説明に焦点を当てています。5 はより安全で、より多くのアルゴリズムをサポートします。たとえば、4 は DeS アルゴリズムのみをサポートします。

IPセキュリティ

以前の暗号化および復号化アルゴリズムは主にセッション層とプレゼンテーション層にあり、IP セキュリティは主にネットワーク層にあります。

IPSec

IP パケットの機密性、認可、またはその両方の保護を提供する IP セキュリティ プロトコル。IP 層の保護がなければ、IP データ パケットは簡単に攻撃され、改ざんされる可能性があります。IPSec は、情報を送信するために暗号化されたチャネルを確立します。

主なコンポーネントは、暗号化、認証、キー管理といった以前のカテゴリのままです。

実現できる機能:

  • 暗号化暗号化。
  • 認証データの認証。
  • コネクションレス型の整合性 UDP などのコネクションレス型の整合性は、接続を確立しない通信プロトコルです。
  • アクセス制御 アクセス制御。
  • 再送パケットの拒否 再送パケットの拒否は、認証における隠れた大きな危険です。
  • トラフィック フローの機密性が制限されているということは、トラフィックの機密性が保たれていることを意味しますが、そうでない場合、第三者がトラフィック許容限界を知った場合、大量のトラフィックによる攻撃を受ける可能性があります。

IPSec は主に、AH と ESP という 2 つのフィールドをデータ パケットに追加して、それぞれ認証と暗号化を保証します。具体的なアルゴリズムはHMAC付加ハッシュ値認証など、以前に学習した方法をすべて使用し、暗号化にはCBCのDESが使用されます。また、論文IDのDOIとは別の解釈DOIというオプションフィールドが新たに追加され、主に暗号化方式を識別するために使用されます(例:0はISAKMP DOI、1はIPSec DOI)。

の上

SA: セキュリティ アソシエーションは、データを送信するために確立される一方向の安全なデータ接続であり、データを送受信する場合は 2 つの SA を確立する必要があります。

SA には次の属性が含まれます。

  • シーケンス番号カウンター: さまざまなデータ パケットを一意に識別し、リプレイ攻撃を防ぐことができる自己増加シーケンス番号。
  • シーケンス カウンター オーバーフロー: シーケンス番号のオーバーフローを処理するために使用されます。不適切な処理はリプレイ攻撃につながる可能性もあります。
  • アンチリプレイ ウィンドウ: リプレイ攻撃を防ぐために、特定のウィンドウ範囲内のデータのみを受信するように指定します。
  • AH 情報: 先ほど紹介した、認証に使用されます。
  • ESP 情報: 導入され、暗号化 (およびオプションのデータ整合性チェック) に使用されます。
  • このセキュリティ アソシエーションの存続期間: SA の効果的なライフ サイクル。理解しやすくなります。
  • IPSec プロトコル モード: 2 つのモード、トンネル モードはデータ パケット全体を暗号化し、トランスポート モードはペイロード部分のみを暗号化します。下の図を見ると、余分な独自の IP ヘッダーがあるように見えます。VPN 仮想プライベート ネットワークは、機密性が高いトンネル モードで確立されますが、送信モードは ESP 暗号化によって実装され、より効率的です。
  • パス MTU: 最大伝送ユニット サイズを指定します。

画像-20240102201442527

ESP と AH を同時に実装するには、複数の SA を組み合わせる必要があります。

ソケット

アプリケーションは、エンドポイントに相当するソケットを介して通信します。

1704198690529

形式は次のとおりです。

1704199096335

IPsec では、プリパケットとプリソケットの 2 つの暗号化方式を指定できます。パケットでは、送信時に暗号化する必要がある IP アドレスなど、宛先の暗号化を指定します。ソケットでは、このホストから送信されるすべてのパケットが暗号化されることを意味します。

キー管理

暗号化、認証、キー管理について説明しました。

Oakley Key Determination Protocol は、DH を改良した鍵交換プロトコルです。ISAKMP は、鍵管理プロトコルのフレームワークです。双方が、一連のメッセージ タイプを含む SA の確立、変更、および削除をネゴシエートします。これは特定の鍵交換アルゴリズムではありませんが、これらのメッセージ タイプは、さまざまな鍵交換アルゴリズムの実装をサポートしています。

1704202618085

ファイアウォール

ローカル ホスト/ネットワークを脅威から保護しながら、他のネットワークへのアクセスを許可します。ローカル ネットワークとインターネットの間に位置します。

達成可能な:

  • サービス制御: たとえば、http サービスは問題ありませんが、ftp は問題ありません。
  • 方向制御:例えば、企業の外部から企業の内部にアクセスすることはできない。
  • 使用制御: ユーザーはネットワークにアクセスできますが、企業内の特定の権限など、アクセスできるリソースには制限があります。
  • 動作制御: 悪意のあるファイル転送の防止など。

防止不可能: 内部攻撃、ファイアウォールをバイパスできる攻撃、コンピューター ウイルス (トロイの木馬)。

実装:

  • パケットフィルタリング:シンプルな制御、送信元アドレス、宛先アドレス、ポート、プロトコルなどの双方向検証。そうでない場合は破棄してください。しかし、安全ではなく、ID 認証がなく、パケット トラフィックを通じて IP アドレスが推測される可能性があり、高度なプロトコルの有効性の検証はありません。考えられる攻撃方法:
    • 偽造された IP アドレスはルーティングを通じてブロックできます。
    • 偽のルートを偽造し、偽のルートを直接ブロックします。
    • データ セグメントが小さなフラグメントに分割されることは、検査前にデータ セグメントを組み立てるか、小さなフラグメントを単純に破棄することでブロックできます。
  • アプリケーション レベル ゲートウェイ: 高レベル プロトコルのコンテンツ情報を検証します。欠点はコストが高いことです。
  • 回線レベル ゲートウェイ: 内部ネットワーク アドレスの変換に使用され、外部ネットワークには表示されません (要約)。また、どの接続が許可されているかもチェックします。
  • プロキシ サービス: プロキシ サーバーは、内部ホストと外部ホスト間の通信を実装するため、内部ネットワークと外部ネットワークを完全に分離します (プライベート クラスがパブリック get set メソッドを通じてアクセスできるのと同様に、プロキシ サーバー経由でのみアクセスできます)。

画像-20240102215945948

画像-20240102221358543

1704205325601

Bastion Host は、回線レベルのゲートウェイとアプリケーション層のゲートウェイを実装するホストです。通常、必要なセキュリティ サービス プロキシ Telnet、DNS、FTP のみがインストールされます。強力なセキュリティを備えたオペレーティング システムであり、ユーザー ID 認証が必要です。

ファイアウォールの前後には非武装地帯とスクリーン サブネットがあり、これはファイアウォールのさらに 2 層に相当します。

信頼できるシステムは、さまざまなリソースへのユーザーのアクセスを制御するセキュリティ レベルを設定するために使用されます (たとえば、さまざまな部門がさまざまな種類のリソースにアクセスできます)。2 つのルールがあります: 読み取りは、より低いセキュリティ レベルのオブジェクトのみを読み取ることができ、書き込みは、より高いセキュリティ レベルのオブジェクトのみを書き込むことができます。読み取り禁止 (単純なセキュリティ プロパティ) と書き込み禁止 (*–プロパティ)。参照モニターを使用して、ルールが正しく実行されることを確認します。

画像-20240102223753822

しかし、攻撃方法が 1 つあります。それはトロイの木馬です。

85fcdcf35174a2ce5d8a6d8888c11e9

バックアップデータは両方からアクセスでき、重要なデータはヒーローのみがアクセスできます。しかし、ヒーローがトロイの木馬ファイルを実行すると、トロイの木馬ファイルはデータ ファイルのデータをバックポケット ファイルにコピーするため、悪役はそれにアクセスできるようになります。

おすすめ

転載: blog.csdn.net/jtwqwq/article/details/135351941