認証情報が流出してしまった際の対処法

togetter.com

↑文脈です。

コメント欄でsugonegaという方が対処法について誤った情報を垂れ流しているので正しい対処法を書きます。

まずもって、認証情報が流出した際の最優先事項は認証情報の再発行です。

なぜなら、誤って公開されてしまった認証情報を破棄して新規に作り直すことで悪用を防げるからです。

sugonegaさんは

ファイルの内容を消したものをPRしてマージしても何の解決にもなりません。リポジトリから完全に削除したあと再pushするか、あるいは、履歴がたいして重要でないのなら、リポジトリそのものを削除して再作成するべきです。

と書いていますが、それだけでは問題は解決しません。

なぜなら、リポジトリを再生成したり、ファイルの存在自体を無かったことにしても、公開されていたことを知っており、かつ悪意のある人間が存在すれば認証情報をそのまま悪用されてしまうからです。

例え話をしましょう。もしあなたがクレジットカードの情報を誤ってツイートしてしまったとして、そのツイートを削除すれば問題は解決しますか?

しません。自明ですよね。カード会社に連絡を取って現在のカードを停止して、新規に発行してもらうという手続きを取るはずです。

今回の件も同じことです。認証情報の再発行が最優先です。わかりましたか?

ですので、既に公開されている情報を消して回るのは認証情報を再発行した次にしましょう。

sugonegaさん曰く

なので、そんなPRを出したり、thumbs upつけた人たちは、もうちょっとgitの事を勉強した方がいいと思います。

とのことですが、sugonegaさんはもうちょっとセキュリティの事を勉強した方がいいと思います。

ファイル自体を無かったことにするのも、ログには残るけれどgit rmするのも、認証情報を再発行すれば結局のところ手段の違いでしかありません。

ですから、sugonegaさんがコメント欄で仰られている対処法では不確かということですし、明確に誤りです。

私はPRのコメントにも「このPRを取り込んでもGitの履歴には残ってしまうため、キーの再発行を推奨します。」と書きました。

にも関わらず的はずれなコメントを書いてしまうsugonegaさんは、セキュリティの勉強をするのと同時に、なにかに言及する際はきちんと原文を読んで内容を理解してからやるようにするのをオススメします。

皆さんは正しい知識を身につけてくださいね。

終わり