Was passiert, wenn ein API-Schlüssel offengelegt wird?
Ein offengelegter API-Schlüssel wird fast sofort genutzt. Automatisierte Scanner überwachen öffentliche Repositories ununterbrochen. Ein Commit, der einen Schlüssel enthält, wird typischerweise gefunden und ausprobiert, noch bevor der Entwickler den Pull Request abgeschlossen hat. Der Schlüssel muss nicht im finalen Code überleben, da er nur irgendwo in der Commit-Historie existieren muss.
Dieser Punkt in der Historie überrascht die meisten Entwickler. Das Entfernen eines Schlüssels in einem späteren Commit ändert nichts; das Repository enthält ihn immer noch. Ein Force-Push zur Umschreibung der Historie geschieht selten schnell genug. Die Annahme, dass ein privates Repository sicher ist, scheitert auf die gleiche Weise, da Repositories ihre Sichtbarkeit ändern können und Forks ihre Eltern überleben. Was niemals auf dem Bildschirm erscheinen sollte, sind echte Zugangsdaten, einschließlich abgelaufener und Screenshots einer Konsole, die einen teilweise maskierten Wert zeigen.
Diese Praxis wird in sieben Szenen dargestellt: eine darüber, wie Schlüssel gefunden werden, eine über das Historienproblem, zwei über Scoping und das Prinzip der geringsten Rechte für Token, eine darüber, wo Geheimnisse tatsächlich gespeichert werden sollten, eine über die Rotation und was ein Rotationsplan beinhalten muss, und eine darüber, was in der ersten Stunde nach einem vermuteten Leak zu tun ist.

