この記事は ゆるTLS Advent Calendar 2021 の2日目の記事です。
[MITM]
中間者攻撃を英語で言うと、Man-in-the-Middle Attackである。
Monster-in-the-Middleとか、Machine-in-the-Middleと表現される場合もあるが、意味するところは同じである*1。
『プロフェッショナルSSL/TLS』1.4.5 MITM攻撃を読むまでは、中間者攻撃という字面から、第三者によるデータの改竄をイメージしていた。アリスがボブにデータを送る場合に、マロリーがデータを書き換える、といった具合である。
しかし、『プロフェッショナルSSL/TLS』1.4.5 MITM攻撃を読むと、中間者攻撃にも2種類あることが分かる。
受動的攻撃と能動的攻撃である。
[受動的攻撃]
TLSプロトコルを使った通信では、データは暗号化されている。しかし、その場合でも暗号化されたトラフィックを保存しておくことで、受動的攻撃が成り立つ場合がある*2。
暗号が安全かどうかは、RSA鍵交換であれば素因数分解問題、DH鍵交換であれば離散対数問題といった、数学の問題を現代の計算機で効率的に解くことができない、という点にかかっている。量子コンピュータの登場や、新たなアルゴリズムの発見、暗号技術そのものの脆弱性の発見などによって、暗号が暗号としての役割を果たさなくなる可能性は十分にあることになる。
そのときまで、暗号化されたトラフィックを保存しておいて、必要なときにトラフィックを復号することで、攻撃が成立する。
暗号がいずれ何らかの方法で破られる(危殆化する)可能性がある、という点はなんとなく認識していたものの、通信はその場かぎり1回だけのやりとりだから問題ないだろう、とぼんやり考えていた。それらを結びつけて、攻撃の可能性があるとは考えられていなかった。
[能動的攻撃]
一方で、能動的攻撃も単にデータを改竄するだけではない。
場合によっては、通信経路をのっとって、本来のサーバに代わってデータのやりとりをするケースまである。
NSA(アメリカ国家安全保障局)やGCHQ(イギリス政府通信本部)が主導したQuantum Insertと呼ばれるプログラムでは、高速なサーバが、本来のサーバよりも速く悪意のあるページを配信することで攻撃をしていたらしい。
[まとめ]
- 中間者攻撃には受動的/能動的の2種類がある
- 暗号が危殆化するまで暗号化されたトラフィックを保管しておく受動的攻撃がある
- 政府機関が主導して能動的攻撃を行う場合もある