Správa prístupových údajov chráni citlivé hodnoty pred uložením priamo v zdrojovom kóde a určuje pravidlá ich používania. Nejde iba o heslá. API tokeny, databázové prihlasovacie údaje, šifrovacie a podpisové kľúče či súkromné certifikáty môžu po prijatí iným systémom potvrdiť identitu alebo sprístupniť chránenú funkciu.
Kde sa citlivé údaje môžu objaviť
Prístupový údaj môže byť najprv uložený v lokálnom konfiguračnom súbore. Neskôr sa môže dostať do skopírovaného príkladu, nastavenia nasadenia, testovacích dát, správy pre podporu alebo výstupu príkazu. Odstránenie pôvodnej kópie nezneplatní ostatné. Uniknutá hodnota zostáva použiteľná, kým ju systém, ktorý ju prijíma, nenahradí alebo nezruší.
Pri kontrole generovaného kódu je toto riziko obzvlášť dôležité. Nástroj môže zopakovať hodnotu, ktorú dostal v kontexte, alebo vytvoriť zástupnú hodnotu, ktorú niekto neskôr nahradí skutočným heslom či kľúčom. Audit vibe-coded softvéru preto nekontroluje iba aktuálny zdrojový kód. Sleduje aj cestu konfigurácie až do bežiacej aplikácie.
| Citlivý údaj | Kde sa používa | Čo treba overiť |
|---|---|---|
| API kľúč | Externá integrácia | Dá sa obmedziť a zneplatniť? |
| Databázové heslo | Bežiaca aplikácia | Je prístup obmedzený na správne prostredie? |
| Podpisový kľúč | Relácie alebo webhooky | Ako prebieha jeho pravidelná výmena? |
| Súkromný kľúč certifikátu | Služba alebo server | Kto ho môže exportovať alebo nahradiť? |
| Token na nasadenie | CI/CD pipeline | Potrebuje každá úloha rovnaké oprávnenia? |
Bezpečné uloženie je iba prvý krok
Premiestnenie hodnoty do premennej prostredia ju síce odstráni zo zdrojového kódu, ale samo osebe nestačí. Odhaliť ju môžu nastavenia platformy, logy, chybové hlásenia, zálohy, build pipeline alebo administrátorské rozhranie. Audit preto sleduje samotnú hodnotu aj oprávnenia ľudí a služieb, ktoré s ňou pracujú.
Kompletná kontrola pokrýva životný cyklus:
- Inventár: Spíšte heslá, kľúče, tokeny a certifikáty používané v jednotlivých prostrediach.
- Ukladanie: Potvrďte, že súbory v repozitári ani vygenerované artefakty neobsahujú platné hodnoty.
- Odovzdanie: Sledujte, ako bežiaca aplikácia získa citlivý údaj bez jeho vypísania alebo ručného kopírovania.
- Oprávnenia: Obmedzte, k čomu jednotlivé prístupové údaje umožňujú prístup a kde ich možno použiť.
- Výmena: Overte, že hodnotu možno nahradiť bez nekontrolovaného alebo dlhého výpadku.
- Zneplatnenie: Po úniku alebo ukončení používania musí systém prestať hodnotu prijímať.
Prístupové údaje určujú identitu služby
Aplikácie používajú heslá, kľúče a tokeny ako dôkaz pri autentifikácii. Audit preto kontroluje, či nesúvisiace služby nezdieľajú jednu identitu, či sa vývojové prístupové údaje nemôžu dostať do produkcie a či dlhodobo platný kľúč nenahrádza token s užším rozsahom a kratšou platnosťou. Zdieľané údaje sťažujú priradenie aktivity ku konkrétnej službe a zväčšujú následky úniku.
Modelovanie hrozieb pomáha určiť prioritu podľa toho, čo konkrétna hodnota umožňuje, nie podľa miesta, kde sa našla. Testovací kľúč s prístupom do produkcie treba chrániť ako produkčný údaj. Ani uloženie vo vyhradenej službe nezaručuje, že prístupové oprávnenia nie sú príliš široké.
Ako vyzerajú dôkazy
Výstupom auditu je zoznam citlivých prístupových údajov spolu s ich vlastníkmi, používateľmi, prostrediami a spôsobom zneplatnenia. Kontroluje sa história repozitára aj výstupy buildu, pretože odstránením riadka z aktuálnej verzie nezmiznú staršie kópie. Logy a spracovanie chýb sa preverujú kvôli náhodnému úniku. Pri kľúčových hodnotách sa overuje aj postup ich výmeny.
Tieto kontroly patria k disciplíne potrebnej pre softvér pripravený na nasadenie. Nejde o výber konkrétneho úložiska. Dôležité je, aby mal každý citlivý údaj jasný účel, obmedzené oprávnenia, riadené sprístupnenie a overený spôsob výmeny alebo zneplatnenia.