「このような露出は驚くほどの頻度で発生しています」と専門家は述べています。CSO(最高情報セキュリティ責任者)とCIO(最高情報責任者)が従業員と請負業者のGitHubリポジトリを保護するためにすべきことをご紹介します。
数日前まで、一般にアクセス可能なGitHubリポジトリは、米国政府のAWSアカウントと内部のサイバーセキュリティ・インフラストラクチャ保護庁(CISA)システムの両方の認証情報を露出していました。
これはサイバーセキュリティジャーナリストのBrian Krebsによるもので、週末にニュースを最初に報じ、GitGuardianの研究者Guillaume Valadonからの情報に基づいています。
ValadonはCSO誌とのメールインタビューで情報を確認しました。
リポジトリのコミット履歴とアカウント作成者自身のトラブルシューティングメモ(リポジトリにコミットされたもの)に基づいて、ValadonはこのリポジトリがゴラムのGitHubアカウントで作成したCISAの請負業者によって管理されていたと考えています。
「これはセキュリティ管理の深刻な違反です。秘密がプレーンテキストで保存され、実行時にシークレットマネージャーから取得される代わりにGitにコミットされているからです」と彼は述べました。「また、プライベートに保つべき内部文書が、個人の開発者アカウント内の公開リポジトリにプッシュされているからです。」
GitGuardianはフランスを拠点とするサービスで、その製品はGitHubを含む内部および外部ソースをスキャンして、露出したシークレットを検出します。
5月14日、GitGuardianは「Private-CISA」という名前の公開GitHubリポジトリを発見しました。2025年11月13日から稼働していたこのリポジトリには、Kubernetesファイル、GitHub Actionsワークフロー、内部ドキュメントバックアップ、個人文書と運用スクリプト、プレーンテキストのパスワード、AWSトークン、GitHubアクセストークンを含む844MBのデータが含まれていました。
良いニュースとしては、GitHubのイベントデータはリポジトリが決してフォークされなかったことを示しており、Valadonは「影響範囲を限定しました」と述べています。
悪いニュースとしては、アカウント所有者がValadonの警告メッセージに直ちに返信しなかったため、Valadonはkrebsに連絡しました。
ValadonはまたCERT/CC(コンピュータ緊急対応チーム調整センター)にリークを報告し、翌日CISAに連絡しました。リポジトリはその夜オフラインになりました。「このリポジトリを迅速に削除してくれたCISAに敬意を表する必要があります」とValadonは述べました。「私たちの責任ある開示のほとんどはずっと長く続き、多くは修正されません。1日でリポジトリをオフラインにすることができたのは、素晴らしい仕事です。」
「私はANSSI(フランス版CISA)で9年間働きました」とValadonは付け加えました。「そして今、GitGuardianで毎日リークに対処しており、これは私が見た中で確実に最も悪いものの1つです。」
アカウントのデータに基づいて、Krebsはワシントンで、CISAと契約したDC地域のサイバーセキュリティ企業によって管理されていたと考えています。CSO誌がコメントを求めたとき、会社はそれを確認しようとしませんでしたが、代わりにCISAに質問を転送しました。
CISAのスポークスパーソンはメールで、当局が報告された露出を認識しており、状況の調査を続けていると述べました。「現在、このインシデントの結果として機密データが侵害されたという兆候はありません」と彼らは書きました。「私たちはチームメンバーに最高水準の完全性と運用意識を保つ一方で、今後の発生を防ぐために追加のセーフガードが実装されることを確認するために取り組んでいます。」
GitHubリポジトリには多くの深刻なセキュリティ問題があります。脅威アクターによって作成されたフェイクリポジトリから、合法的なアカウントが誤って公開アクセスで作成される場合まで様々です。また先月、Wizの研究者は内部gitインフラストラクチャのインジェクション脆弱性を発見し、ハッカーがGitHubのバックエンドサーバで任意のコマンドを実行することを可能にする可能性がありました。
CSO(最高情報セキュリティ責任者)とCIO(最高情報責任者)が行うべきこと
GitHubでシークレットを露出することは「深刻で、残念ながら一般的な問題です」と、SANS InstituteのResearch DeanJohannes Ullrichはコメントしました。
しかし、彼は付け加えました。ITがこれを防ぐために取ることができるいくつかのステップがあります。まず、パスワードやAPIキーなどのシークレットは一元的に管理される必要があります。エンタープライズ全体のシークレット管理プロセスの実装は簡単ではないと彼は認めながらも、「シークレットが不適切に処理されるのを避けるためのあなたの最善の選択肢でもあります。」
第二に、GitHubなどのユーザーシステムと公開サービスをプロアクティブにスキャンして、公開キーを検出するツールを使用します。「これらの製品は、シークレットの安全な処理を規制するポリシーを実行するために不可欠です」とUllrichは述べました。
「この特定のケースでは、障害はCISA自体ではなく請負業者にあるようです」と彼は指摘しました。「ベンダー関係の管理は重要であり、内部システムとデータにアクセスするために使用されるシークレットを処理する方法に関する契約を含める必要があります。」
The Enderle GroupのベテランコンサルタントRobert Enderle は、このタイプの露出が驚くほどの頻度で発生していることを指摘しました。「開発者は多くの場合、コードをすばやく配信するという多大なプレッシャーの下にあります」と彼は述べました。「個人用リポジトリと専門的なリポジトリの境界線は簡単にぼやけることができます。しかし、CISA(国家インフラを守るという使命を持つ機関)に関連する請負業者にとって、潜在的な結果は壊滅的です。公開GitHubリポジトリに認証情報を露出させておくことは、国家のサイバー防御の主要キーを公開の公園のベンチに置いておくようなものです。これらの認証情報が国家単位のアクターによって活用されていた場合、大規模なサプライチェーン攻撃または重大な政府システムへの深い浸透を促進する可能性がありました。」
その可能性を軽減するために、CSO(最高情報セキュリティ責任者)とCIO(最高情報責任者)はポリシーだけに依存することを止め、堅牢で自動化された管理体制を実装する必要があるとEndlerは述べました。「人間が間違いを犯さないことを期待することはできません。それらを捕捉するシステムを構築する必要があります」と彼は述べました。これは、認証情報またはAPIキーを含むコミットをリポジトリに到達する前にアクティブにブロックする自動シークレットスキャンツールを義務付けることを意味しています。エンタープライズはまた、個人用および専門的な開発者環境間の厳密な分離を強制し、多要素認証(MFA)を全体で義務付け、認証情報が最終的に侵害されると仮定するゼロトラストアーキテクチャを採用する必要があると彼は述べました。
Valadonはさらに、CSO(最高情報セキュリティ責任者)とCIO(最高情報責任者)は、公開GitHubアカウントだけでなくすべての内部リポジトリで完全なシークレットスキャンを実行し、シークレットをリポジトリに到達する前にブロックし、可能な限り短命の認証情報を使用し、機密リポジトリに好奇心旺盛な攻撃者を騙すようなフェイクパスワードなどのハニートークンを配置し、従業員や請負業者の個人GitHubアカウントにあるかどうかの確認を含む、組織のコードが実際に存在する場所のインベントリを作成する必要があると付け加えました。