テック技報最新号へ →
コード

Git/GitHub: 秘密情報を push してしまったら、最初にやるのは「無効化」。rebase+force push だけでは足りない

履歴を書き換えても、GitHub 上ではフォーク・PR の参照・キャッシュから古いコミットが SHA 経由で見えることがある。漏れた時点で第三者に取得されたと考え、まず鍵を失効させる。

@ymrl · 投稿 2026-05-03
#git#github#security#インシデント対応

対応の順番

  1. すぐに失効・ローテーション(API キー、トークン、パスワード)。これが最優先
  2. 漏れた鍵が使われていないか、各サービスのアクセスログや監査ログを確認
  3. 必要なら履歴から削除(git filter-repo など)して force push
  4. GitHub 上のキャッシュ(PR 差分など)を消すには GitHub サポートに依頼する。フォークされていれば、そちらにも残る
  5. 再発防止: push protection(secret scanning)を有効にする、.gitignore、pre-commit で秘密を検出するツールを入れる

注意点

  • 「消したからセーフ」ではない。公開リポジトリなら、自動の収集ボットが数分で拾うこともある。
  • 社内ルールに従ってインシデントとして報告する。メルカリの公開事例が参考になる(出典参照)。

出典

X の元の投稿を開く