Symantecが再びGoogleの信頼を失った件についてのメモ

(初めに言い訳しておくと、証明書界隈については詳しくないです。某誤訳量産サイトが適当な記事を書いていたので、なにか書かねばと思って書いているという程度のまとめ記事です。間違いなどあればご指摘ください)

何が起こるのか

Ryan Sleeviさん(Googleの人)がBlink-devのメーリングリストに投稿したこれにまとまっています:https://groups.google.com/a/chromium.org/d/msg/blink-dev/eUAKwjihhBs/rpxMXjZHCQAJ

経緯についてはいったん飛ばして、どのようなアクションが提案されているのか見ます。

To restore confidence and security of our users, we propose the following steps:

  • A reduction in the accepted validity period of newly issued Symantec-issued certificates to nine months or less, in order to minimize any impact to Google Chrome users from any further misissuances that may arise.
  • An incremental distrust, spanning a series of Google Chrome releases, of all currently-trusted Symantec-issued certificates, requiring they be revalidated and replaced.
  • Removal of recognition of the Extended Validation status of Symantec issued certificates, until such a time as the community can be assured in the policies and practices of Symantec, but no sooner than one year.

ざっくり訳すと、

  • Symantecから新規に発行される証明書は、有効期限が9カ月以下のものしか受け付けない。
  • Symantecが発行した既存の証明書はGoogle Chromeのリリースごとに徐々に、最終的にはすべてdistrustする。
  • SymantecのEV証明書は、アドレスバーのEV証明書表示(たぶんこの表示のこと:f:id:yutannihilation:20170327080054p:plain)が出ない。信頼が回復されればこの措置は解除するがたぶん1年以上後だろう。

という感じです。技術的な詳細に関しては、SleeviさんがGitHubに上げているドキュメントが参考になるでしょう。

explainer/README.md at master · sleevi/explainer · GitHub

また、後述のようにこの話題はmozilla.dev.security.policyというメーリングリストでやり取りされていたので、少なくともMozillaはある程度歩調を合わせると思われます。

Symantecの証明書」とは

https://groups.google.com/a/chromium.org/d/msg/blink-dev/eUAKwjihhBs/4E2tYKtKCQAJ によれば、影響を受けるのは、Chromiumnet/data/ssl/symantec以下に含まれる証明書をルートとする証明書です。

https://chromium.googlesource.com/chromium/src/+/master/net/data/ssl/symantec/README.md

具体的には以下の組織が発行した証明書? 調べ方あってる?

$ mkdir roots
$ wget -O - https://chromium.googlesource.com/chromium/src/+archive/master/net/data/ssl/symantec/roots.tar.gz | tar -x -z -f - -C roots/
$ for cert in roots/*.pem; do openssl x509 -inform pem -in $cert -noout -text | grep Issuer; done | grep -o 'O=[^,]\+' | sort -u
O=Equifax
O=Equifax Secure
O=Equifax Secure Inc.
O=GeoTrust Inc.
O=RSA Data Security
O=Symantec Corporation
O=TC TrustCenter GmbH
O=TC TrustCenter for Security in Data Networks GmbH
O=Thawte
O=Thawte Consulting
O=Thawte Consulting cc
O=The USERTRUST Network
O=VeriSign
O=thawte

Symantecの前科

今回の経緯を見る前に、まずは2年前を思い出してみましょう。Symantecには前科があります。

http://blog.livedoor.jp/k_urushima/archives/1779810.html

On September 14, around 19:20 GMT, Symantec’s Thawte-branded CA issued an Extended Validation (EV) pre-certificate for the domains google.com and www.google.com. This pre-certificate was neither requested nor authorized by Google.
(Google Online Security Blog: Improved Digital Certificate Security)

私もすっかり忘れてたんですが、Symantec傘下のThawteは、Googleの許可なしに、google.comとwww.google.comのEV証明書を発行してしまったのでした。それを受けて、GoogleSymantecルート証明書を無効にします。

Symantecが今回やらかしたこと

今回Googleが怒っているのは、EV証明書が大量に発行されたことそのものではなく、前回の再発防止策がまったく徹底されていないことです。

事が明るみに出たのは2カ月ほど前。mozilla.dev.security.policyへの以下の投稿でした。Symantecが、自身が所有していないexample.comなどのドメインに勝手に証明書を発行しているのがCTのログから見つかった、というものでした。

https://groups.google.com/d/msg/mozilla.dev.security.policy/fyJ3EK2YOP8/yvjS5leYCAAJ

これに対するSleeviさんの怒りの投稿がこちら。改善するっつったのにできてなくない??という感じです。

While I understand that your investigation is ongoing, this does seem extremely similar, if not identical, to Symantec’s previous misissuance.

In that previous incident, Symantec took a number of steps - beginning with reportedly immediately terminating the employees responsible and then continuing to a comprehensive system overhaul, as detailed at https://www.symantec.com/page.jsp?id=test-certs-update#

What is particularly concerning here is that your current explanations suggest that either they are incomplete, or that Symantec’s previous answers were either misleading or incorrect. This is extremely concerning,
(https://groups.google.com/d/msg/mozilla.dev.security.policy/fyJ3EK2YOP8/chC7tXDgCQAJ)

あと怒りの質問攻め:

で、1カ月ちょっとの間ここで長いやり取りが繰り返されて、Symantecの中の人から満足いく回答が返ってこなかったので今回の対応に至った、ということのようです。

Symantecの言い分

私たちの証明書発行業務ならびに過去の不適切な発行の影響範囲に関するGoogle社のステートメントは誇張されており、誤解を助長するものです。例えば私たちが3万枚の証明書を不適切に発行したとするGoogle社の主張は正しくありません。Google社が言及する事象において、3万枚ではなく、127枚の証明書が不適切に発行されましたが、これによる被害は消費者には及んでいません。
(Symantec Backs Its CA | Symantec Connect)

という風にSymantecは言っていますが、上に書いたように結果の問題ではないので、Googleからすれば的外れな反論ということになるでしょう。

考慮点

とはいえ、Symantecが不満をにじませているように、若干見せしめっぽい雰囲気も感じます。

全ての大手認証局SSL/TLSサーバ証明書の不適切な発行という事態を経験している中、Google社はブログの中でいくつかの認証局における問題の存在を指摘しつつ、Symantec認証局のみをその提案の対象としています。
(Symantec Backs Its CA | Symantec Connect)

あとはそもそもSleeviさんが既存のCAに対して批判的な立場にいる(でもComodoの人とは仲がよさそう)、ということも頭の片隅に入れたいところです。