2022年10月17日~10月23日に読んだ中で気になったニュースとメモ書き(TLSらじお第77回の前半用原稿)です。
[HTTP/3コネクション汚染]
こちらのツイートから。
HTTP/3 connection contamination: an upcoming threat https://t.co/eSi9fAfavJ
— /r/netsec (@_r_netsec) 2022年10月19日
リンク先はこちら。
TLSというよりはHTTPの話題。
secure.example.comとwordpress.example.comが、両方とも*.example.comの証明書で同じリバースプロキシでホストされている時に、ブラウザは同じIPのサイトということで同一のHTTP/2またはHTTP/3コネクションを使い回す。この時、リバースプロキシは同じコネクションなので同じバックエンドにリクエストを送信してしまう。
これを悪用すると、wordpressドメインのサイトにあるXSS脆弱性を利用して、secureドメインを攻撃できるとのこと。
このコネクションの使い回しに、HTTP/2では接続先のIPが一致することが条件として必要だったが、HTTP/3ではこの条件を不要とする提案がされているらしい。危なそう...。
リバースプロキシのこの動作(first request routing)は珍しいらしいので、大丈夫なのか?
[OpenSSL+compress_certificate]
こちらのツイートから。
[openssl] Add support for compressed certificates (RFC8879)https://t.co/YvWrQGeUJy
— ゆき (@flano_yuki) 2022年10月20日
TLSハンドシェイク時に証明書を圧縮するヤツ、opensslに入ったのか
OpenSSLさん、たしかにcompress_certificate対応してた。ブラウザはすでに対応してるし、サーバ側ももっと広がると良さそう pic.twitter.com/gT1PvALBZW
— ゆき (@flano_yuki) 2022年10月20日
RFC 8879で提案されているやつ。
TLS1.3以降で利用可能で、ClientHelloやCertificateRequestにcompress_certificate(27)拡張を含めることでネゴシエートする。サーバ証明書だけでなくクライアント証明書にも適用可能ということ。
拡張の値は以下のように圧縮アルゴリズムが定義されている。
enum {
zlib(1),
brotli(2),
zstd(3),
(65535)
} CertificateCompressionAlgorithm;struct {
CertificateCompressionAlgorithm algorithms<2..2^8-2>;
} CertificateCompressionAlgorithms;
2年前の時点でChromeやFacebook、Wiresharkが対応している模様。そう考えると、OpenSSL以外と対応遅いんだな。
[その他のニュース]
▼えきねっとの証明書
こちらのツイートから。
話題になっている「どこかにビューーン!(dokokani-eki-net\.com)」のサーバー証明書はEV証明書なんですが、発行先の組織がJR東日本ではなく、委託先と思われる「NRI Digital」になってますね。
— Yasuhiro Morishita (@OrangeMorishita) 2022年10月19日
話題になってたのはロシアドメインの件ですね。
確かにNRIのEV証明書だ。
▼SSLMate CT検索API
こちらのツイートから。
Our Certificate Transparency Search API now includes a boolean field `revoked` indicating if a certificate is revoked.
— SSLMate (@SSLMate) 2022年10月19日
You can also include `expand=revocation` in the query string to get additional details (revocation time, reason) in the response.https://t.co/erlv4q3xW4
リンク先はこちら。
失効の有無がわかるようになったとか。結構大事な情報な気がするけどなんで最初からなかったんだろう...。
他のサイト(Censysとか)だと画面ベースでAPIじゃないから、プログラムから使いたい時は便利かも?1時間100APIコールまで無料とのこと。
▼Bulletproof TLS Guide
こちらの記事。feistyduckのサイトにこんなコンテンツがあったことに気づいた。
内容的にはプロフェッショナルSSL/TLSの第8章 デプロイと第9章 パフォーマンス最適化あたりを、TLS1.3までの最新動向を踏まえて短くまとめた感じになっている。
要はBulletproof TLS and PKIの11章 Configuration GuideがそのままWebで読めるっぽい。
[まとめ]
Ivan Ristic氏のAMAがあったらしい。来週取り上げよう...。
Good morning! Our Twitter AMA with @ivanristic starts in one hour, at 10 am Central Time! pic.twitter.com/bnxrPvOvDZ
— Let's Encrypt (@letsencrypt) 2022年10月24日