Model zaupanja
Povzetek. Model zaupanja določa, komu TrustBridge zaupa, pred kom se varuje in kaj doseže napadalec, ki prevzame posamezno komponento. Jedro je v vsaki organizaciji majhna zaupanja vredna osnova iz delavca CA, HSM, korenske CA brez povezave in osebnih ključev za odobritev. Podatkovna baza, upravljanje, distribucija in spletne storitve so zunaj nje; njihova kompromitacija povzroči zamudo ali vpogled, ne pa nepooblaščenih certifikatov. Med organizacijami velja: zaupanje je dvostransko, določeno za vsako smer in se ne prenaša prek tretjih. In certifikat ni pooblastilo: dokazuje, kdo govori, ne pa, kaj je dovoljeno.
Pojmi
- Varovana dobrina – kar je treba zaščititi.
- Zaupanja vredna osnova – komponente, katerih kompromitacija omogoči nepooblaščeno izdajo ali trditev o stanju.
- Sidro zaupanja – certifikat, ki mu preverjevalec zaupa brez nadaljnjega preverjanja; v TrustBridge korenski certifikat organizacije ali certifikat izdajateljske CA, ki ga razmerje zaupanja izrecno dopušča.
- Omejitev imen – razširitev
nameConstraints(RFC 5280, razdelek 4.2.1.10) v certifikatu CA, ki določa, katera imena so dovoljena v podrejenih certifikatih. - Razmerje zaupanja – dogovor med natanko dvema organizacijama, da priznata sidra zaupanja druge strani za določene storitve in namene.
- Politika razmerja – določitve organizacije za eno smer razmerja zaupanja: storitve, namen, kriptografske zahteve, trajanje, pravica do spremembe, preklic.
- Pooblastilo – odločitev ciljne aplikacije, ali je določena operacija za preverjeno identiteto dovoljena.
- Pogodba preverjevalca – pravila, ki se jih mora preverjevalec držati, da varnostne zaveze pri njem učinkujejo.
Varovane dobrine
| Varovana dobrina, po teži | Grožnja | Posledica kršitve |
|---|---|---|
| Vezava identitete prek meja partnerjev | partner se izdaja za drugega | dostop do naročil, krmilnih podatkov ali posodobitev drugega podjetja |
| Meja vsakega razmerja zaupanja | partner razmerje razširi prek njegovega namena ali ga preda tretjim | dostop organizacij, s katerimi razmerje ni bilo nikoli dogovorjeno |
| Ključi CA | kraja ali zloraba | poljubna izdaja do zamenjave CA |
| Stanje preklica in preklic razmerja | zatiranje ali zamuda | kompromitirani sistemi ali končana razmerja ostanejo zaupanja vredni |
| Zaupnost povezav | snemanje danes, dešifriranje pozneje | razkritje poslovnih podatkov po letih |
| Zaupnost podatkov najemnikov | vpogled v inventar in zahtevke | razkritje dobavnih razmerij in sistemske pokrajine |
| Razpoložljivost | izpad izdaje, podatkov o stanju ali agentov ključev | poteki v dobavni verigi obstanejo; preverjanja ne uspejo |
Ni v modelu: zahteve spletne PKI, poljubni udeleženci interneta kot vlagatelji, obremenitveni napadi iz interneta na izdajo.
Napadalci
| Napadalec | Predpostavka o zmožnostih |
|---|---|
| Zunanji napadalec | prek omrežja doseže vmesnike za vpis, distribucijo in agente ključev; snema promet |
| Kompromitiran ali zlonameren partner | ima veljavne certifikate in lastno CA v lastnem imenskem prostoru; ima lastna razmerja s tretjimi |
| Kompromitirana spletna storitev | popoln nadzor nad upravljanjem, vpisom ali distribucijo |
| Skrbnik podatkovne baze ali kompromitirana podatkovna baza | lahko prebere, spremeni in izbriše vsako vrstico ter na novo izračuna verige zgoščenih vrednosti |
| Operativni partner v modelu Managed | upravlja strežnike in storitve organizacije v dogovorjenem obsegu |
| Napačna konfiguracija | napačna predloga profila, napačne pravice, napačno nastavljen preverjevalec ali politika razmerja |
| Notranji storilec s pravico odobritve | ima osebni ključ za odobritev |
Zaupanja vredna osnova
graph TD
subgraph AUS [Zunaj zaupanja vredne osnove]
ADM[Upravljalna aplikacija] --> VW[Upravljanje]
EN[Protokolni adapterji]
VW --> DB[(Podatkovna baza)]
EN --> DB
VT[Distribucija]
end
subgraph TCB [Zaupanja vredna osnova]
RW[Pravilnik]
FS[Osebni ključi<br/>za odobritev]
EA[Atestacija vpisa<br/>samo samodejni razredi]
RT[Korenska CA brez povezave]
WK[Delavec CA<br/>gostitelj, račun, ura]
REG[Register]
HSM[HSM]
end
PRF[Preverjevalec<br/>zadnja črta]
DB -->|nepreverjen vhod| WK
RW --> WK
FS ==>|odobritev| WK
EA ==>|atestacija| WK
RT -.->|certifikat CA| WK
WK --> REG
WK ==>|podpiše| HSM
WK -->|seznam preklicanih| VT
VT --> PRF
classDef tcb fill:#fde7e9,stroke:#a4262c,color:#201f1e
classDef aus fill:#f3f2f1,stroke:#605e5c,color:#201f1e
classDef par fill:#deecf9,stroke:#0078d4,color:#201f1e
class WK,RW,REG,HSM,FS,RT,EA tcb
class DB,VW,EN,VT aus
class ADM,PRF par
style AUS fill:#ffffff,stroke:#8a8886,color:#201f1e
style TCB fill:#ffffff,stroke:#8a8886,color:#201f1eVsaka organizacija ima lastno zaupanja vredno osnovo. Osnova ene organizacije nikoli ni del osnove druge: razmerje priznava samo sidra zaupanja, ne deli pa ključev, odobriteljev ali registrov.
Preverjevalec je zadnja črta: omejitev imen v certifikatu CA učinkuje samo, če jo preverjevalec uveljavi. Adapter TLS v TrustBridge jo uveljavi sam.
Analiza kompromitacije
| Kompromitirano | Dosegljivo | Nedosegljivo | Omejevalni ukrep |
|---|---|---|---|
| Podatkovna baza | zamuda, vpogled, zatiranje naročil | izdaja, razveljavitev preklica, ponarejen seznam preklicanih | delavec CA preveri odobritev glede na pravilnik; preklic je v registru monoton; distribucija preverja podpise |
| Upravljanje | predlaganje in storniranje naročil, sprožanje preklicev, branje podatkov najemnikov | izdaja brez ključa za odobritev | odobritev je podpis, odobritelji so v pravilniku |
| Upravljalna aplikacija zaposlenega | kot upravljanje v okviru njegovih pravic; z njegovim ključem za odobritev odobritev lastnih zahtevkov | odobritev v razredih s pravilom dveh oseb | drugi odobritelj; ključ za odobritev na lastnem strojnem nosilcu |
| Vpis | izdaja v samodejnih razredih, v imenskem prostoru partnerja, s kratko veljavnostjo | certifikati CA, tuji najemniki, ročni razredi | pravilnik omejuje samodejne razrede |
| Distribucija | dostava starejšega, še veljavnega seznama preklicanih | ponaredba | podpis seznama; preverjevalec zavrne potekel seznam |
| Skrbnik pri partnerju | izdaja v lastnem imenskem prostoru z odobritvijo osebe, ki mu je dodeljena | tuj imenski prostor; razmerja, ki jih druga stran ni priznala | nameConstraints, pogodba preverjevalca, politika razmerja nasprotne strani |
| Agent ključev na strežniku | skrivnosti povezav tega strežnika | skrivnosti drugih strežnikov, izdaja certifikatov | skrivnost nikoli ne zapusti strežnika; preklic certifikata agenta konča vsa njegova razmerja |
| Operativni partner v modelu Managed | razpoložljivost, vpogled v operativne podatke v dogovorjenem obsegu | izdaja brez odobritve organizacije, skrivnosti agentov | odobritelji izhajajo samo iz organizacije same; upravljanje ni posest ključev |
| Delavec CA ali HSM | izdaja z obstoječimi ključi CA | korenska CA, druge generacije brez njihovih ključev | korenska CA prekliče to CA; zaznavanje prek števcev podpisov |
| Korenska CA brez povezave | popolna kompromitacija hierarhije te organizacije | hierarhije drugih organizacij | fizično varovanje, pravilo več oseb, ponovna postavitev; partnerji prekličejo razmerje |
Zakaj kompromitirana podatkovna baza ali upravljanje ne moreta izdajati
graph TD
G[Cilj napadalca:<br/>veljaven certifikat za tuje ime] --> P1[ustvari naročilo v podatkovni bazi]
P1 --> C1{Podpis odobritve<br/>osebe, vpisane<br/>v pravilnik?}
C1 -- ne --> X1[Delavec CA zavrne]
C1 -- da, ukraden --> C2{Ime v imenskem prostoru<br/>izbrane CA?}
C2 -- ne --> X2[Delavec CA zavrne]
C2 -- ne, delavec CA obiden --> X3[Preverjevalec zavrne:<br/>nameConstraints]
C2 -- da --> R[Certifikat samo v<br/>lastnem imenskem prostoru]
classDef x fill:#dff6dd,stroke:#107c10,color:#201f1e
classDef r fill:#fde7e9,stroke:#a4262c,color:#201f1e
class X1,X2,X3 x
class R r
classDef neu fill:#f3f2f1,stroke:#605e5c,color:#201f1e
class C1,C2,G,P1 neuVeriga argumentov v podrobnostih:
- Certifikat nastane samo, če podpiše delavec CA. Delavec CA ni dosegljiv od zunaj; napadalec mu lahko naročila predloži samo prek podatkovne baze.
- Delavec CA ne zaupa nobeni vsebini podatkovne baze. Podpis odobritve preveri z javnimi ključi iz svojega lokalnega pravilnika. Kdor obvladuje podatkovno bazo, ne more dodati odobritelja.
- Odobritev velja za natanko eno zgoščeno vrednost naročila. Prenos stare odobritve na novo naročilo ne uspe, ker se zgoščena vrednost spremeni; vsako naročilo se izvede največ enkrat in ima rok.
- Delavec CA preveri ime glede na imenski prostor CA. Tudi ob napaki v delavcu CA pri preverjevalcu učinkuje omejitev imen v certifikatu CA.
- Preklici so v registru monotoni. Podatkovna baza, ki preklic „pozabi“, ne spremeni naslednjega seznama preklicanih; distribucija dostavi samo pravilno podpisane sezname z naraščajočo številko.
Meje te argumentacije. Ne zdrži proti: odobritelju, ki hkrati nadzoruje upravljanje ali podatkovno
bazo, v razredih z eno samo odobritvijo; skrbniku gostitelja delavca CA, ki lahko spremeni pravilnik;
preverjevalcu, ki nameConstraints ne uveljavlja. Ta preostala tveganja se omejijo organizacijsko
(pravilo dveh oseb, načelo štirih oči na gostitelju delavca CA, pogodba preverjevalca s testnimi
certifikati).
Certifikat in pooblastilo
Veljaven certifikat odgovori na eno samo vprašanje: kdo govori? Ali je to, kar želi ta identiteta narediti, dovoljeno, TrustBridge ne odloča. Zato se ločuje šest stvari:
| Pojem | Dokazuje | Kdo odloča |
|---|---|---|
| Identiteta organizacije | ta certifikat izvira iz hierarhije organizacije B | sidro zaupanja v razmerju |
| Identiteta storitve | ta sistem je erp.b.example v imenskem prostoru B | dNSName in omejitev imen |
| Certifikat | certifikatna agencija B je to povezavo potrdila | delavec CA pri B |
| Posest zasebnega ključa | nasprotna stran ima zdaj ustrezni zasebni ključ | podpis v rokovanju TLS |
| Politika razmerja | A je B dovolila to storitev in ta namen | organizacija A, za svojo smer |
| Pooblastilo | natanko ta operacija nad natanko temi podatki je dovoljena | ciljna aplikacija pri A, na primer Database Gateway |
graph TD
V[Povezava iz B] --> K1{Veriga do<br/>sidra razmerja?}
K1 -- ne --> X1[Adapter TLS zavrne]
K1 -- da --> K2{Storitev in namen<br/>v politiki A?}
K2 -- ne --> X2[Adapter TLS zavrne]
K2 -- da --> K3{Operacija za to<br/>identiteto pooblaščena?}
K3 -- ne --> X3[Aplikacija zavrne]
K3 -- da --> OK[Operacija se izvede<br/>in zabeleži]
classDef onl fill:#f3f2f1,stroke:#605e5c,color:#201f1e
classDef auth fill:#fff4ce,stroke:#8a6d00,color:#201f1e
classDef par fill:#deecf9,stroke:#0078d4,color:#201f1e
classDef x fill:#dff6dd,stroke:#107c10,color:#201f1e
class V par
class K1,K2 onl
class K3,OK auth
class X1,X2,X3 xŠele tretje preverjanje odpre podatke. Kdor ukrade veljaven certifikat brez zasebnega ključa, obtiči pri podpisu v rokovanju; kdor ukrade certifikat skupaj s ključem, dobi samo to, kar ciljna aplikacija tej identiteti dovoli, in samo do preklica.
Razširjeni scenariji napadov
Naslednji scenariji preverjajo varnostne zaveze glede na napade, ki presegajo kompromitacijo posamezne komponente. Zaveze so opisane na strani Varnostne zaveze.
| Scenarij | Napad | Učinek na zaveze | Protiukrep | Preostalo tveganje |
|---|---|---|---|---|
| Kompromitirana delovna postaja za upravljanje | zlonamerna programska oprema izkoristi prijavo in sejo zaposlenega | S-01 zdrži, dokler ključa za odobritev ni mogoče uporabiti brez potrditve osebe; S-08 samo v okviru pravic te osebe | ključ za odobritev na lastni strojni opremi; pravilo dveh oseb | ponarejen prikaz pri enojni odobritvi |
| Kopirljiva skrivnost za prijavo | kraja osebnega ključa | S-10 zdrži, dokler ni prestrežen tudi drugi faktor | drugi faktor, pravila izvora, potek | lažno predstavljanje v realnem času |
| Ponovitev odobritve | stara odobritev za novo naročilo | brez učinka: odobritev velja za natanko eno zgoščeno vrednost naročila | vezava na zgoščeno vrednost, rok, enkratna izvedba | – |
| Ponovitev naročila | isto naročilo se predloži znova | brez učinka: delavec CA dostavi že izdani certifikat | idempotentnost prek zgoščene vrednosti naročila | – |
| Dogovor dveh odobriteljev | dva odobritelja skupaj odobrita nepooblaščeno naročilo | S-01 kršena | odobritelji iz ločenih organizacijskih enot; dokaz v registru; nadzor izdaj | ostane; omejiti organizacijsko |
| Upravljavec odobri v imenu dobavitelja | zaposleni pri upravljavcu partnerske CA bi bili hkrati odobritelji dobavitelja | upravljavec bi lahko izdajal v imenskem prostoru dobavitelja | odobritelji dobavitelja so samo iz njegove organizacije in odobrijo prek partnerskega portala | dogovor znotraj organizacije dobavitelja |
| Prenos zaupanja | B posreduje povezavo C do A ali izda certifikat za C | C se pri A pojavi največ kot sistem v imenskem prostoru B | brez navzkrižnih certifikatov; A priznava samo sidra, ki jih je sama sprejela v razmerje; omejitev imen | B odgovarja A za sisteme v svojem imenskem prostoru |
| Zamenjava domen zaupanja | preverjevalec poleg TrustBridge zaupa tudi javnim CA in partnerje prepozna po imenu DNS | javno izdan certifikat za l.example bi veljal za partnerja L | pogodba preverjevalca, točka 4: partner samo prek izdajateljske CA; adapter TLS sprejema samo sidra razmerja | preverjevalci brez adapterja TLS, ki tega ne izvajajo |
| Prekrivajoči se imenski prostori | dvema partnerjema se dodelita prekrivajoča se imenska prostora (l.example in obrat.l.example) | S-02 znotraj prekrivanja ne učinkuje | preverjanje prekrivanja pred vsako ceremonijo in pred vsakim novim razmerjem | – |
| Znižanje podpisa | odstranitev alternativnega podpisa, ko je klasični postal ponarejljiv | S-09 zdrži samo pri preverjevalcih z zahtevanim preverjanjem PQ | pogodba preverjevalca, točka 9; politika razmerja zahteva preverjanje PQ; brez tihega umika | preverjevalci brez obveznosti PQ |
| Znižanje dogovora o ključu v TLS | preverjevalec poleg hibridnih sprejema tudi čisto klasične skupine | zaupnost pred poznejšim dešifriranjem bi slonela samo na dodatni skrivnosti | adapter TLS za povezave TrustBridge dovoli samo hibridne skupine | – |
| Zatiranje dodatne skrivnosti | posrednik v sredini odstrani razširitev za zunanji PSK | povezava brez dodatne plasti zaščite | adapter TLS prekine, če razširitev ni potrjena | – |
| Znižanje protokola | zahtevek prek šibkejšega protokola za vpis (na primer SCEP namesto EST) | prvo opremljanje šibkeje overjeno | dovoljeni protokoli za vsak razred profila v pravilniku | – |
| Poseg v vpis | adapter spremeni ime, veljavnost ali razred naročila | delavec CA zavrne, kar nasprotuje razredu profila ali imenskemu prostoru; pri samodejnih razredih atestacija ostane veljavna v dovoljenem okviru | meje samodejnih razredov v pravilniku | izdaja znotraj teh meja |
| Neposreden dostop do HSM | skrbnik gostitelja delavca CA uporabi povezavo z modulom, da podpiše mimo delavca CA | S-01 kršena, tehnično ni preprečeno | usklajevanje števcev podpisov z registrom (zaznavanje); vloge in kvorum v modulu; načelo štirih oči na gostitelju | čas do zaznave |
| Poseg v uro delavca CA | antedatiranje certifikatov ali preklicev | veljavnosti in trenutki preklica so potvorjeni | ura spada v zaupanja vredno osnovo; meja antedatiranja (privzeto 5 minut) | odstopanje znotraj meje |
Pogodba preverjevalca
Vsak preverjevalec, ki preverja certifikate TrustBridge, mora:
- preveriti celotno verigo do sidra zaupanja razmerja;
- preveriti
basicConstraintsinpathLenConstraint; - dejansko uveljaviti
nameConstraintsvseh certifikatov CA; - partnerja identificirati izključno prek izdajateljske CA;
- sistem identificirati izključno prek
dNSName; - preveriti
keyUsageinextendedKeyUsage; - preveriti veljavnost celotne verige;
- ovrednotiti seznam preklicanih certifikatov izdajateljske CA in brez veljavnega seznama zavrniti;
- ob dogovorjeni postkvantni zaščiti dodatno preveriti alternativni podpis ML-DSA vsakega certifikata v verigi in zavrniti verigo brez ustreznega alternativnega podpisa;
- seznam preklicanih certifikatov prenesti znova v ritmu ustvarjanja (6 ur), ne šele ob njegovem poteku.
Adapter TLS v TrustBridge izpolnjuje vseh deset točk. Za preverjevalce brez adapterja TLS TrustBridge zagotovi testne certifikate, med njimi certifikate s prepovedanimi imeni, potečeno verigo, preklicanim stanjem in manjkajočim alternativnim podpisom, ki jih mora pravilno nastavljen preverjevalec zavrniti.
Stranski kanali
Ključi CA se uporabljajo izključno v HSM; TrustBridge sam ne izvaja nobene operacije s tajnimi ključi CA. Zaščita teh ključev pred časovnimi, predpomnilniškimi in tokovnimi stranskimi kanali je lastnost certificiranega modula in merilo za njegovo izbiro. Agenti ključev za ML-KEM in ML-DSA uporabljajo izvedbe s časom izvajanja, neodvisnim od podatkov.
Vzajemno zaupanje v dobavni verigi
| Gradnik | Pomen v TrustBridge |
|---|---|
| Organizacija, najemnik | ločnica med organizacijami; vsaka ima lastne ključe, odobritelje in register |
| Identiteta partnerja | izdajateljska CA z omejitvijo imen, v partnerjevi lastni hierarhiji ali kot partnerska CA v hierarhiji naročnika |
| Identiteta sistema | natanko eno ime DNS v imenskem prostoru partnerja |
| Vzajemna avtentikacija | mTLS s pogodbo preverjevalca na obeh straneh, ki jo uveljavi adapter TLS |
| Razmerje zaupanja | dvostransko, za vsako smer ena politika razmerja, gl. Federacija in dvostransko zaupanje |
| Pooblastilo | stvar ciljne aplikacije; TrustBridge ji zagotovi preverjeno identiteto |
| Vezava na nasprotno stran | vezava dodatne postkvantne skrivnosti na identiteto nasprotne strani, gl. Postkvantna izmenjava ključev za TLS |
Topologija sider zaupanja
TrustBridge pozna dva načina povezave partnerja. Oba vodita do enakega preverjanja v adapterju TLS.
graph TD
subgraph A [Partnerska CA v hierarhiji naročnika]
WA[Korenska CA naročnika] --> CA1[CA partnerja 1<br/>nameConstraints]
WA --> CA2[CA partnerja 2<br/>nameConstraints]
end
subgraph B [Lastna hierarhija, dvostransko priznanje]
W1[Korenska CA organizacije 1] --> CB1[CA organizacije 1]
W2[Korenska CA organizacije 2] --> CB2[CA organizacije 2]
end
CB1 -.->|sidro v razmerju,<br/>omejeno na imenski prostor| CB2
classDef s fill:#f3f2f1,stroke:#605e5c,color:#201f1e
class WA,CA1,CA2,W1,W2,CB1,CB2 s
style A fill:#ffffff,stroke:#8a8886,color:#201f1e
style B fill:#ffffff,stroke:#8a8886,color:#201f1e| Merilo | Partnerska CA v hierarhiji naročnika | Lastna hierarhija, dvostransko priznanje |
|---|---|---|
| Primerno za | partnerje brez lastne PKI | partnerje z lastno namestitvijo TrustBridge ali lastno PKI |
| Kdo ima korensko CA | naročnik | vsaka organizacija svojo |
| Partnerjevi odobritelji | osebe iz partnerja, prek partnerskega portala | osebe iz partnerja, v njegovi lastni namestitvi |
| Uveljavljanje imenskih prostorov | v partnerjevem certifikatu CA | v politiki razmerja in v adapterju TLS |
| Izstop partnerja | korenska CA prekliče njegovo CA | vsaka stran posebej prekliče razmerje |
| Navzkrižni certifikati | ni | ni; priznanje učinkuje samo v razmerju, ne v certifikatnih verigah tretjih |
Partner lahko s prvega načina preide na drugega, ko postavi lastno namestitev; njegovi sistemi tedaj dobijo certifikate iz lastne hierarhije, razmerje pa zamenja sidro.
Prvo opremljanje in atestacija
Preden sistem dobi prvi certifikat, mora TrustBridge prepoznati, da govori s pravim sistemom. Razred profila določa, kateri dokaz se zahteva:
| Dokaz | Uporaba |
|---|---|
| Vnaprej shranjena enkratna vrednost z rokom | osnovna oblika za strežnike in storitve; vrednost se odgovorni osebi za sistem preda po ločeni poti |
| Proizvajalčev certifikat naprave (IEEE 802.1AR) | stroji in naprave, katerih proizvajalec vgradi identiteto naprave |
| Atestacija stanja platforme prek TPM | sistemi s povečano potrebo po zaščiti |
Podpisan programski artefakt sam ne dokazuje varnega stanja med izvajanjem; vsak dokaz ima v pravilniku izrecno pravilo preverjanja.
Česa ta stran ne določa
- Pooblastil. Katero operacijo sme partner izvesti, določi ciljna aplikacija.
- Dokaza o izvoru in stanju partnerjeve programske opreme; to ni naloga PKI.
- Oskrbe kratkoživih delovnih obremenitev v podatkovnem centru z identitetami (na primer SPIFFE); TrustBridge identificira sisteme in storitve med organizacijami.
- Zaščite pri preverjevalcih, ki ne izvajajo pogodbe preverjevalca in ne uporabljajo adapterja TLS.