Súlyos hibát vétett a kínai tanúsítvány-kibocsátó
Elképesztően súlyos hibát vétett a CNNIC, a kínai tanúsítvány-kibocsátó szervezet. A Google figyelmeztetése szerint egy egyiptomi vállalat a tanúsítványt minden szabályt megszegve tudta felhasználni, ezzel megszemélyesítve a Google szervereit.
A kínai CNNIC (China Internet Network Information Center) által kibocsátott teszttanúsítvánnyal akarta megoldani az alkalmazottai által bonyolított titkosított forgalom megfigyelését az egyiptomi MCS Holdings. A gyakorlat súlyos visszaélésnek számít a tanúsítványok fennálló rendszerében, a cégtől azonnal megvonták a másodlagos tanúsítványok kiadásának jogát, a CNNIC pedig komoly figyelmeztetést kapott a böngészőgyártó hármastól. Az eset jól illusztrálja a tanúsítványok jelenlegi rendszerének problémáját, egy hibázó szereplő ugyanis pillanatok alatt veszélyforrássá tud válni.
Bevett gyakorlat, tiltott eszközzel
A CNNIC által biztosított hivatalos magyarázat szerint a szervezet az MCS Holdingsnak azzal a feltétellel bocsátotta ki a tanúsítványt, hogy az egyiptomi vállalat azt kizárólag az általa regisztrált domének esetében fogja felhasználni. "A cég azonban ezt nem tartotta be, ahelyett, hogy a privát kulcsot a megfelelő HSM-ben (hardware security module) tárolta volna, feltöltötte egy hálózati tűzfalra, amely közbeékelődő (man-in-the-middle) proxy szerepét töltötte be és a rajta keresztül elért weboldalakhoz adott ki megszemélyesítő tanúsítványt." - írja a Google bejegyzése. A tűzfal mögött csak a vállalat dolgozói ültek, a Google-lal kicserélt titkosított forgalomba csak e fel használók esetében nézhetett volna bele az MCS.
Az ilyen MiTM proxy használata nem számít szokatlannak vállalati környezetben, bizonyos szervezetek használnak ilyen rendszert arra, hogy a dolgozók titkosított internetes forgalmát monitorozzák - ezt jellemzően a szabályozói környezet írja elő, például bankok számára. Erre a modern operációs rendszerek lehetőséget adnak, az üzemeltető telepítheti a proxy tanúsítványát a dolgozók gépére, így a gépek megbíznak a proxyban, titkosított kapcsolat működik, a forgalomhoz pedig csak a vállalat férhet hozzá. Az MCS azonban nem a dolgozók gépeire telepítette a proxy tanúsítványát, hanem a proxyt látta el egy publikus CA minden jogosítványával - ami nagyon súlyos visszaélésnek számít.
Ünnepi mix a bértranszparenciától a kódoló vezetőkig Négy IT karrierrel kapcsolatos, érdekes témát csomagoltunk a karácsonyfa alá.
A Google szerint a magyarázat egybevág a cég által ismert tényekkel. Ez azonban nem menti a CNNIC felelősségét, a szervezet ugyanis olyan kritikus jogosultságokat ruházott át az MCS-re, amelyek kezelésére ez utóbbi "nem volt alkalmas". Nem kell nagyon a sorok között olvasni ahhoz, hogy lássuk, a Google ezzel kétségbe vonja a CNNIC alkalmasságát, mint gyökértanúsítvány-kibocsátó, ami nyugodtan értelmezhető súlyos figyelmeztetésként is.
A problémára saját hatáskörben azonnal reagált a Google, egy CRLSet push üzenettel azonnal eltávolította a Chrome által megbízhatónak minősített tanúsítványok közül a kérdéses elemet. A rendszert egyébként pont ilyen helyzetekre tartja fenn a Google, ezen keresztül központilag, azonnali hatállyal visszavonható egy kompromittált tanúsítvány. A Mozilla saját hasonló rendszere még nem állt fel, a OneCRL a Firefox következő, 37-es kiadásában élesedik majd, így az automatikus visszavonásra egyelőre nincs lehetőség. Bejegyzésében ezért a Mozilla a 37-es kiadás béta verziójára való frissítést javasolja, a OneCRL rendszerébe már természetesen bekerült a kérdéses tanúsítvány.
A Microsoft reakciója sem késett, a vállalat frissítette a Certificate Trust Listet és már nem minősíti biztonságosnak az alárendelt kibocsátót (az MCS-t). A CTL nem része a Windows Server 2003-nak, a rendszer rövid tesztelés után soron kívüli frissítésként kapja meg a megbízható CA-k friss listáját.
A CA-rendszer alapvető problémáját pont ez jelenti: ha egy hibásan (jogosulatlanul) kibocsátott tanúsítvány kikerül, akkor abban a nem frissített rendszerek vakon meg fognak bízni. A Google, a Microsoft és a Mozilla rendszere erre igyekszik választ adni a központi tanúsítvány-kezeléssel, ez azonban korlátozott védelmet biztosít csak.
A nagyoknak mindent szabad?
Az eset újra rámutat azokra a problémákra, amelyekkel a széles körben használt chain-of-trust és gyökértanúsítvány-rendszer küzd. A megközelítés lelke, hogy az operációs rendszerek és böngészők által megbízhatónak jelölt entitások (esetünkben a CNNIC) másodlagos tanúsítvány-kibocsátókat minősítenek megbízhatónak. Mivel a megbízhatóság ebben a megközelítésben tranzitív tulajdonság, a böngészők minden tanúsítványt elfogadnak, amelyek a gyökértanúsítványig vissza tudják eredeztetni magukat. A roppant szerteágazó rendszerben azonban nem minden szereplő viselkedik előírásszerűen, és (mint most az MCS) olyan tanúsítványt is kibocsát illetve azt visszaélésszerűen használ fel, amelyre nem lenne lehetősége.
Az üzleti és biztonsági folyamatok bevizsgálása és elfogadása mindig a "megbízható" minősítést kiállító felelőssége - ebben az esetben tehát az MCS visszaéléséért közvetlenül a CNNIC tehető felelőssé. Normális esetben ilyenkor a böngészőgyártók és az operációs rendszerek azonnal megvonják a tanúsítvány megbízható minősítését, ez egyébként az MCS esetében már meg is történt (vagy folyamatban van). A CNNIC kizárása azonban sokkal problémásabb, a szervezet gyökértanúsítványától rengeteg, amúgy jól viselkedő oldal függ. Így felmerül, hogy a rendkívül súlyos hiba ellenére a CNNIC azért tarthatja meg státuszát, mert egyszerűen túl nagy ahhoz, hogy elkaszálható legyen.