Modelovanie hrozieb poskytuje bezpečnostnej kontrole mapu. Identifikuje cenné údaje a operácie, aktérov, ktorí k nim môžu pristupovať, hranice, na ktorých sa mení dôvera, a nežiaduce výsledky, ktorým musí systém zabrániť. Výsledok smeruje kontrolu a testovanie k dôsledkom namiesto toho, aby sa každý súbor považoval za rovnako dôležitý.
Vytvorenie modelu z pracovného kódu
Vyspelý systém môže mať schémy architektúry a bezpečnostné požiadavky. Vibe-coded produkt nemusí mať ani jedno ani druhé, takže audit rekonštruuje model z trás, dátových úložísk, konfigurácie nasadenia, integrácií a správania pri behu. Kód ukazuje, čomu systém v súčasnosti dôveruje, aj keď toto rozhodnutie nebolo nikdy zdokumentované.
Model má hodnotu iba vtedy, keď zostáva prepojený s implementáciou. Audit vibe-coded softvéru porovnáva každú deklarovanú hranicu s kódom, ktorý ju má presadzovať, a zaznamenáva rozdiely medzi zamýšľaným návrhom a reálne nasadeným systémom.
| Prvok modelu | Otázka auditu | Dôkaz v kóde |
|---|---|---|
| Aktívum | Aké údaje alebo akcie potrebujú ochranu? | Modely, skladovanie, kritické operácie |
| Aktér | Kto alebo čo s tým môže interagovať? | Používatelia, služby, správcovia |
| Vstupný bod | Ako sa môže aktér dostať do systému? | Trasy, úlohy, importy, webhooky |
| Hranica dôvery | Kde sa mení dôvera? | Identita, sieť, účet, prostredie |
| Kontrola | Čo bráni nechcenej akcii? | Kontroly, validácia, izolácia, testy |
Od hraníc ku konkrétnym kontrolám
Model premieňa všeobecné obavy na overiteľné otázky. Ak treba chrániť záznamy zákazníkov, audit zisťuje, ktoré API endpointy ich čítajú, ako sa identifikuje volajúci, kde sa overuje vlastníctvo a čo sa pri prístupe zaznamená. Tak sa návrh systému prepája s konkrétnymi kontrolami autorizácie v kóde.
Prvý prechod zvyčajne prebieha podľa pevnej sekvencie:
- Inventarizujte aktíva: Uveďte citlivé údaje, privilegované operácie, poverenia a služby kritické z hľadiska dostupnosti.
- Zmapujte aktérov a vstupné body: Zahrňte externých používateľov, interné nástroje, integrácie, úlohy a identity strojov.
- Vyznačte hranice dôvery: Označte, kde údaje menia vlastníka, prostredie, oprávnenie alebo stav overenia.
- Popíšte nechcené výsledky: Uveďte, čo sa nesmie čítať, meniť, spúšťať ani prerušovať.
- Umiestnite kontrolné mechanizmy: Prepojte každý výsledok s kódom, konfiguráciou a testami, ktoré znižujú riziko.
- Zaznamenajte nepokryté cesty: Uprednostňujte medzery podľa následkov a dosiahnuteľnosti.
Prečo generované systémy potrebujú rekonštrukciu
Jednotlivé vygenerované funkcie môžu samy osebe dávať zmysel, no spoliehať sa na odlišné predpoklady. Jeden endpoint dôveruje relácii z frameworku, druhý prijíma podpísaný callback a úloha na pozadí číta záznamy pomocou širokých servisných oprávnení. Žiadny z týchto prístupov nemusí byť chybný. Riziko vzniká na nepreskúmaných hraniciach medzi nimi.
Validácia vstupov ukazuje toto prepojenie v praxi. Model určí, ktoré vstupy prekračujú hranicu dôvery a čo môžu ovplyvniť. Kontrola kódu potom overí mechanizmy použité ešte predtým, než údaje spôsobia daný účinok. Všeobecný checklist tak nenahrádza posúdenie konkrétneho systému.
Výstup auditu
Výstupom je živá mapa spojená so zisteniami a dôkazmi. Zaznamenáva aktíva, aktérov, hranice, nechcené výsledky, aktuálne kontroly a chýbajúce kontroly. Poskytuje tiež odkaz na neskoršie zmeny: nová integračná alebo administratívna akcia môže byť umiestnená na tej istej mape pred odoslaním.
Táto disciplína patrí k rozdielom medzi prototypom a technickým postupom určeným pre produkciu. Modelovanie hrozieb nepredpovedá každý nedostatok. Zviditeľňuje rozhodnutia systému o dôvere, aby kontrolóri mohli testovať miesta, kde by chyba mala najväčší dosah.