LoginSignup
41
38

More than 5 years have passed since last update.

avastの中間者攻撃!

Posted at

まずはスクリーンショットから

Githubの…証明書!?

気づいた経緯

SSL関連での設定を行ったこともあって、ほかのサイトでも「SSL設定はどうなっているかな」と調べていたところ、証明書がこんなのになっていることに気づいてしまいました。

技術的な詳細

ブラウザで「安全」だとされる証明書は、証明書の署名をたどっていって、ブラウザあるいはOSに入っている「ルート証明書」に行き着くもの、ということになります。そして、このルート証明書の正しさを担保するものは、じつは何もありません

ということで、誰かがルート証明書に不用意なものを追加してしまえば、SSLの安全性全体が崩壊しかねない、ということになります(少し前に、Superfishなんていうものが話題となりました)。

このケースでも、avast!が追加した「avast! Web/Mail Shield Root」がルート証明書として組み込まれて、そしてavast!が生成したgithub.comの証明書が「正当なもの」として通用してしまっています。

セキュリティのためなら仕方ないんじゃ?

たしかに、このような手を使わなければHTTPSの通信内容を取得することはできません。実験用などで、意図的にMITMProxyを自分で仕掛けることもあるかもしれません。

ただ、今回気づいてびっくりしたように、avast!のこの仕掛けは、少なくとも意識的に設定したものではありません。コンピューターの管理者が事前に設定しておく、という場合はともかく、自分自身のパソコンにこのような設定を組む以上は、ユーザー側の明確な同意が必要なものだと考えます。「許諾契約に書いておいた」レベルではまずいでしょう。

公開鍵ピンニングは?

Githubでは公開鍵ピンニングを導入しているので、こんなMITM攻撃は成立しないと思っていました。ところが、今回の場合は通ってしまっていました。で、確認してみると、もともとブラウザについていた以外のルート証明書については、ピンニングチェックの対象外とのことでした。このように、PC側に何か入れられた場合には手のうちようがありません。

41
38
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
41
38