Wat er gebeurt als een API-sleutel lekt
Een gelekte API-sleutel wordt vrijwel onmiddellijk gebruikt. Geautomatiseerde scanners monitoren continu openbare repositories, en een commit met een sleutel wordt doorgaans gevonden en geprobeerd voordat de ontwikkelaar de pull request heeft afgerond. De sleutel hoeft niet in de uiteindelijke code te overleven, want hij hoeft alleen ergens in de commitgeschiedenis te bestaan.
Dat geschiedenispunt is waar de meeste ontwikkelaars verrast zijn. Het verwijderen van een sleutel in een latere commit verandert niets; de repository bevat deze nog steeds, en een 'force-push' om de geschiedenis te herschrijven gebeurt zelden snel genoeg. De aanname dat een privérepository veilig is, faalt op dezelfde manier, omdat repositories van zichtbaarheid veranderen en forks hun ouders overleven. Eén ding dat je buiten beeld moet houden, zijn alle echte inloggegevens, inclusief verlopen exemplaren en screenshots van een console die een gedeeltelijk gemaskeerde waarde tonen.
De praktijk wordt uiteengezet in zeven scènes: één over hoe sleutels worden gevonden, één over het geschiedenisprobleem, twee over scoping en 'least privilege' voor tokens, één over waar geheimen daadwerkelijk moeten verblijven, één over rotatie en wat een rotatieplan moet omvatten, en één over wat te doen in het eerste uur na een vermoedelijk lek.

