今リナックスの勉強をしている初学者です。ssh接続におけるホスト間認証について、有用性がいまいち理解できず、中間者攻撃に対してなぜ耐性を持つと言えるのかがどうしても納得できません。知識がないためにトンチンカンな質問をしていたら申し訳ないです。
#ホスト間認証に対する自分の理解
sshサーバーに接続しようとすると、サーバー側から指紋が提示されます。ホスト間認証というのは、この指紋が自分の.ssh/known_hostsに保管された公開鍵よって導きされるものと断定できるとき、この指紋を提示したサーバーを接続した経験があるサーバーであると判断するシステム、だという風に理解しています。
#悪意のある者が本物の指紋を示してくる可能性はないのでしょうか
どの教材やネット記事を眺めても、このホスト間認証は中間者攻撃を防ぐためのシステムだと書いてあります。たしかに、悪意を持った何者かがDNSを乗っ取るかなんかの方法で自分のサーバーへ接続を誘導してきた場合、相手が示してきた指紋がおかしければ「こいつなんかやべぇな」と判断できるというのは理解できます。
なのですが、sshサーバーが提示する指紋は誰に対しても提示されるはずのものなので、悪意を持った者も予め知っておくことができるのではないか、という点が疑問として残っています。悪意を持った者がサーバーが提示する指紋を予め入手しておいて、DNSを乗っ取った後、接続を試みてきたクライエントに入手しておいたその指紋を提示してくるといった可能性はないのでしょうか。
もしそれができてしまったらホスト間認証に中間者攻撃への耐性はないような気がします。そんな訳はないというのは分かっているのですが、だとしたらどのような仕組みがそういった手口から守ってくれているのでしょうか。
文章が分かりづらかったら申し訳ないです。
ご教示いただけるととても有り難いです。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/02/22 03:14
2021/02/25 12:23
2021/02/27 01:55