中間者攻撃(MITM攻撃)
デジタルエンベロープの仕組みを再度おさらいしましょう。
- メッセージを共通鍵で暗号化
- 共通鍵を相手の公開鍵で暗号化(デジタルエンベロープ)
- 自分の秘密鍵でメッセージのデジタル署名を付与
ざっくり、こんな順番でした。
共通鍵を相手の公開鍵で暗号化しているため、共通鍵の共有も安全なように思えます。プラスアルファ、デジタル署名もしているので、送信者の真正性も担保されます。
今回の講座で取り上げるのは「中間者攻撃(Man-in-the-Middle Attack:マン・インザ・ミドル・アタック)」と呼ばれる攻撃手法です。
この攻撃は、通信を傍受して、送信者と受信者の間でやり取りされる情報を改ざんしたり、盗み取ったりするものです。送信者と受信者は、安全な通信をしているつもりになりますが、実は脅威アクターによって筒抜けの状態になる場合があります。
- 中間者攻撃
送受信の間にハッキングさえちゃんが割り込むイメージだよ
第24講
安全だと思われるデジタルエンベロープ。しかし、ハッキングさえちゃんがこの位置で通信を傍受した場合、何とも無謀な仕組みのように感じてしまいます。
中間者攻撃の基本的な仕組み
ハッキングさえちゃんは、デジタルエンベロープの仕組みをなんとか破ろうと、次のような方法で攻撃を仕掛けます。
まずは一読して、頭の中でイメージを思い浮かべてください。
- 通信の傍受
まず、ゆみちゃんとかよちゃんの通信経路の間に割り込みます。これにより、両者の間で送られるメッセージや鍵を監視できる状態になります。 - 鍵のすり替え
さえちゃんは、ゆみちゃんが受け取るはずの公開鍵を、自分の公開鍵にすり替えます。これにより、ゆみちゃんが送信した共通鍵は、さえちゃんの公開鍵で暗号化され、さえちゃんが復号できるようになってしまいます。 - メッセージの改ざん
さえちゃんは、暗号化された共通鍵を自分の秘密鍵で復号し、その共通鍵を使ってメッセージを復号します。その後、内容を改ざんしたり、新たなメッセージを作成したりして、再度暗号化し、かよちゃんに送ります。 - かよちゃんは改ざんに気づかない!
かよちゃんは、自分の秘密鍵で共通鍵を復号できるうえ、ハッシュ値も変わりないため、本物だと改ざんされたメッセージをそのまま受け取ります。かよちゃん側からしたら、ゆみちゃんが作成したハッシュ値だと思ってしまうからです。
それでは図で追っていきましょう。
中間者攻撃は、通信経路に割り込んで、重要な情報を盗み取ったり改ざんしたりする危険な攻撃です。問題点はどこにあるでしょうか?
この攻撃を防ぐためには、その公開鍵が一体誰ものなのか? というものをしっかりと把握しておく必要があります。
今回、ハッキングさえちゃんが間に入っていることがわからない原因として、その公開鍵が本当にかよちゃんのものだったのか? という認証はしていません。そのため、偽の公開鍵で共通鍵をロックしてしまったことに脆弱性があったと言えるでしょう。
公開鍵は簡単に共有することができるけれども、本当にその公開鍵が正しいのかを証明する仕組みが必要になります
どうやって公開鍵がその人のものだって証明するんだろう?
第24講のまとめ
共通鍵暗号方式と公開鍵暗号方式のいいところどりのように思えたデジタルエンベロープによる鍵交換も、間に入って通信を傍受されると一気に安全が崩れ落ちてしまいました。
ポイントは、公開鍵の信頼性。
次回は、公開鍵の信頼性を担保するための「デジタル証明書」のお話に入ってまいります。それについては、次回の講座で詳しく見ていきましょう。
このように、情報セキュリティは常にイタチごっこの世界なの。脅威アクターは常にセキュリティの弱点を攻めてくるということを忘れないでくださいね