GitHubはこのほど、「GitHub Availability Report: December 2023 - The GitHub Blog」において、2023年12月の可用性レポートを公表した。今回のレポートでは、GitHubサービス全体のパフォーマンスを低下させた3件のインシデントが報告されている。

  • GitHub Availability Report: December 2023 - The GitHub Blog

    GitHub Availability Report: December 2023 - The GitHub Blog

認証情報のローテーションが影響

GitHubによると、2023年12月に発生した3件のインシデントは、いずれも12月27日から29日にかけて実施された認証情報のローテーションに関連したものだという。GitHubでは、同12月26日にバグ報奨金プログラムを通じて「GitHub.com」と「GitHub Enterprise Server(GHES)」に影響する脆弱性「CVE-2024-0200」の報告を受けた。

この脆弱性への対策の一環として、同社では影響を受けるすべての認証情報のローテーションを実施した。視覚情報のローテーションは通常の業務の一環ではあるものの、臨時的な実施によって多数のサービスが想定外の影響を受けたとのこと。詳細は公式ブログの次の記事でアナウンスされている。

3件のインシデントの概要

1件目のインシデントは2023年12月27日2時30分(協定世界時)に発生。GitHubのフロントエンドサービスと内部サービスの間でHMACシークレットをローテーションしている最中に、Azure Key Vaultからキーを取得する処理にバグがあり、2つのサービス間のAPI呼び出しが失敗するようになった。インシデントは最大で90分間続いたという。

2件目のインシデントは2023年12月28日5時52分(協定世界時)に発生。最大65分間、GitHubサービスから特定の電子メール通知が送信できなくなった。これはフロントエンド サービスと内部サービスの間で認証情報がローテーションされ、SMTPサーバが新しい認証情報で正しく更新されなかったことが原因だという。その結果、通知を生成するバックエンドサービスとSMTPサーバのサブセット間の認証に失敗した。

3件目のインシデントは2023年12月29日0時34分(協定世界時)に発生。最大68分間、ユーザーはサインインまたは新しいアカウントへのサインアップができなくなった。このインシデントは、フロントエンドキャッシュにミラーリングされていない認証情報のローテーションが原因とのこと。

GitHubでは、今後は同様のダウンタイムのリスクを軽減するために、認証情報のローテーション手順を改善したという。