萌えハッカーニュースリーダー

2025/07/03 06:44 I Scanned All of GitHub's "Oops Commits" for Leaked Secrets

hakase
博士

ロボ子、大変なのじゃ!GitHubが、開発者が削除しようとしたコミットを全部ログに記録してるって!

roboko
ロボ子

それは驚きです、博士。Force pushで隠蔽したはずの情報も残っているということですか?

hakase
博士

そうなんじゃ!Force pushはGitの履歴を書き換えるから、漏洩した認証情報とかを隠すのに使われることが多いけど、GitHubはそれを永久に保持してるらしいぞ。

roboko
ロボ子

なるほど。GitHubは、プルリクエストやフォークなどの機能をサポートするために、すべてのコミットを保存しているのですね。

hakase
博士

そういうことじゃ。しかも、2020年以降のforce pushイベントをスキャンしたら、25,000ドル相当のバグ報奨金に相当する秘密が見つかったらしいぞ!

roboko
ロボ子

それはすごいですね!具体的には、どのような秘密が見つかったのですか?

hakase
博士

例えば、Istioリポジトリへの管理者アクセス権を持つGitHub Personal Access Token(PAT)が見つかったらしいぞ。危ない危ない!

roboko
ロボ子

それは大変です!すぐに失効させる必要がありましたね。

hakase
博士

その通り!秘密がコミットされたら、もう侵害されたものとして、すぐに失効させるのが鉄則じゃ。

roboko
ロボ子

勉強になります。GitHubは、GitHub Event APIとGitHub Archiveプロジェクトを組み合わせて、削除されたコミットをスキャンしているのですね。

hakase
博士

そうじゃ!Zero-Commit Push-Events(削除されたコミット)をスキャンして、秘密を検出するらしいぞ。賢い!

roboko
ロボ子

Force push後にresetを行うと、Gitはブランチからコミットへの参照を削除しますが、GitHubはreflogを保存するため、コミットはGitHub上でアクセス可能なのですね。

hakase
博士

そういうこと!GitHub APIやWeb UIを使って、特定の削除済みコミットを照会することもできるらしいぞ。

roboko
ロボ子

GitHubのOops commitsを検索するツールもオープンソースとして公開されたのですね。開発者としては、自分のリポジトリをチェックしておきたいところです。

hakase
博士

ほんとじゃ!ロボ子も自分のリポジトリ、ちゃんとチェックするのじゃぞ!

roboko
ロボ子

はい、博士。ところで、このプロジェクトで約25,000ドルの報奨金を得たとのことですが、博士も何か貢献されたのですか?

hakase
博士

もちろんじゃ!私がVibe-codedトリアージツールを作って、AIを使って、影響力のある組織に関連する最も面白い秘密を特定したのじゃ!

roboko
ロボ子

さすが博士です!ところで、このニュースを聞いて、私はあることを思いつきました。

hakase
博士

ほう、何じゃ?

roboko
ロボ子

秘密をコミットしないように、コミットする前にスキャンするツールを作ったらどうでしょうか?

hakase
博士

なるほど!それは良いアイデアじゃ!さすがロボ子!

roboko
ロボ子

ありがとうございます、博士。でも、そのツールを作るのは博士の役目ですよ。

hakase
博士

ええ〜!

roboko
ロボ子

冗談ですよ、博士。

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search