TPM 2.0private keys, sealedsealed storage + attestation + measured boot

Trusted Platform Module (TPM)

11 min lukeaTurvallisuus

Nykyaikaiset Windows-asennukset vaativat TPM:n. Nykyaikaisissa Mac M-sarjan siruissa on yksi sisäänrakennettu SoC:hen. Nykyaikaiset palvelimet toimitetaan TPM 2.0 -standardin kanssa. Siru on pieni, sinetöity ja suorittaa salaustoimintoja, joita muu järjestelmä voi pyytää, mutta ei poimia niistä. Sen toiminnan ymmärtäminen osoittaa, miksi levyn salaus, suojattu käynnistys ja etätodistus ovat siitä riippuvaisia.

Artikkelin koko runko on englanniksi alla.

A Trusted Platform Module (TPM) on erillinen salaussiru tietokoneen emolevyllä (tai integroitu CPU:hun nykyaikaisissa järjestelmissä). Se tallentaa kryptografiset avaimet, suorittaa niille toimintoja paljastamatta niitä ja tarjoaa todistettuja mittauksia järjestelmän käynnistystilasta. Nykyinen standardi on TPM 2.0; vanhemmat järjestelmät käyttävät TPM 1.2.

Ydinominaisuudet

  • Avainten luonti ja tallennus. TPM voi luoda RSA-, ECC- ja HMAC-avaimia sisäisesti. Yksityiset avaimet eivät koskaan poistu sirulta – ohjelmisto voi pyytää allekirjoitus-, salaus- tai salauksenpurkutoimia, mutta ei voi purkaa avaimia.
  • Platform Configuration Registers (PCR:t). Hash-pohjaiset rekisterit, jotka tallentavat käynnistysprosessin tilan. Jokainen komponentti (BIOS, käynnistyslatain, ydin) mittaa seuraavan komponentin ja laajentaa PCR:n hashilla. Lopulliset PCR-arvot sormenjäljet ​​koko käynnistysketjusta.
  • Sinetöity tallennustila. Tiettyihin PCR-arvoihin sidottu salaus. TPM purkaa sinetöidyn blobin salauksen vain, jos järjestelmän PCR:t vastaavat niitä, jotka ne olivat, kun tiedot suljettiin. Käynnistysketjun peukalointi → ei voi purkaa tietojen salausta.
  • Testation. TPM voi allekirjoittaa tarjouksen PCR:stään todistusavaimella. Etäpalvelu vastaanottaa allekirjoitetun tarjouksen ja varmistaa, että laite on käynnistetty tunnettuun hyvään tilaan.
  • Satunnaislukujen sukupolvi. Laitteiston RNG, hyödyllinen, kun käyttöjärjestelmässä ei ole tarpeeksi entropiaa.

Mitä rakennuslohkotPLZPPLZ-ominaisuudet ovat3Z2PMXxxx korkeamman tason ominaisuudet:

  • Täyden levyn salaus — BitLocker Windowsissa, LUKS Linuxissa voi sinetöidä levyn salausavaimen TPM:ään. Järjestelmä avaa levyn lukituksen automaattisesti käynnistyksen yhteydessä, jos (ja vain jos) käynnistysketju on ehjä.
  • Secure Boot — Jokainen käynnistysvaihe mitataan. Muokattu käynnistyslatain → eri PCR → suljetut valtuustiedot eivät avaudu.
  • Laitetodistus — Yritykset varmistavat, että hallitut laitteet käyttävät hyväksyttyjä kokoonpanoja ennen kuin ne myöntävät pääsyn resursseihin.
  • Laitteiston tukema Windows-älykortin vaihto-ohjelmisto, FPLZ47XLaitteistotuettu X-tunnistusXX TPM:llä tallennetut avaimet.
  • Vahva avainsuojaus SSH:lle, VPN:lle, koodin allekirjoitukselle – haittaohjelmat eivät voi suodattaa TPM:ssä luotuja avaimia edes järjestelmänvalvojan oikeuksilla.

TPM vs. erottuva:

  • TPM – TCG:n standardoima, useimmissa tietokoneissa ja palvelimissa. Rajoitettu laskentakyky; suunniteltu tietyille kryptografisille primitiiveille.
  • Apple Secure Enclave — Applen TPM-ekvivalentti, integroitu SoC:hen. Sama rooli, eri API, jota käyttävät Touch ID, Face ID, FileVault, Keychain.
  • Hardware Security Module (HSM) – paljon tehokkaampi salauslaite, tyypillisesti PCIe-kortti tai verkkolaite. Varmentajat, maksujen käsittelijät ja pankit käyttävät. Tuhansia dollareita ja enemmän.
  • FIDO-suojausavain (YubiKey jne.) — TPM:n kaltainen avaintallennus kannettavassa muodossa.

BitLocker- ja TPM-integraatioXPLZ77PMX

TLockerin useimmat käyttötapaukset: Windowsissa. Aseman salausavain on suljettu PCR:iin, jotka mittaavat käynnistysketjua. Normaali käynnistys → PCR:t täsmäävät → TPM vapauttaa avaimen → aseman lukitus avautuu → kirjaudut sisään. Jos käynnistysketjua muutetaan (eri käynnistyslatain, BIOS-päivitys ilman asianmukaista käsittelyä), PCR:t eivät täsmää, BitLocker pyytää palautusavainta.

Tästä syystä Secure BIOS -palautus poistetaan käytöstä, BiLoot-päivitys joskus korvataan, tai jopa käynnistyslataus tai laukaisu. kehotteita. TPM tekee juuri sen, mitä sen pitääkin – suojaa levyä luvattomalta käytöltä.

Windows 11:n TPM-vaatimus

Microsoftin vuoden 2021 kiistanalainen päätös vaatia TPM 2.0 Windows 11:lle sulki monet vanhemmat tietokoneet päivityksen ulkopuolelle. Perustelut: TPM-tuetuista ominaisuuksista (BitLocker, Windows Hello, Credential Guard) tulee perustason. Kriitikot huomauttivat, että vaatimus loi sähköisen jätteen painetta. Päätös piti suurelta osin; Windows 11:n käyttöönotto on nyt laajaa, ja useimmat uudet PC:t toimitetaan TPM-käytöllä.

TPM-hyökkäykset

TPM:itä vastaan ​​on osoitettu useita hyökkäyskategorioita:

  • Bus sniffing. CPU:n ja erillisen TPM:n välinen tiedonsiirto kulkee emolevyn väylällä (LPC, SPI tai I2C). Fyysisen pääsyn ansiosta hyökkääjät ovat haistaneet salausavaimia siirron aikana. fTPM (suorittimeen integroitu laiteohjelmiston TPM) välttää tämän hyökkäyksen.
  • Kylmäkäynnistyshyökkäykset. RAM säilyttää tiedot hetken virrankatkon jälkeen; jos levyavain ladattiin RAM-muistiin, se voidaan palauttaa. Nykyaikaiset käyttöjärjestelmät pyyhkivät herkän muistin sammuttamisen yhteydessä, mutta kannettavien tietokoneiden keskeytystilat ovat riskialttiimpia.
  • Sivukanavat. TPM-toimintojen ajoitus ja tehoanalyysi ovat vuotaneet osittaisia ​​keskeisiä tietoja tutkimusasetuksista.
  • Firmware haavoittuvuudet. myös TPPM-ohjelmiston haavoittuvuudet; TPM-laiteohjelmiston haavoittuvuudet voivat vaikuttaa avainten eristämiseen.

Tavallisissa uhkamalleissa (kannettavien tietokoneiden varkaudet, haittaohjelmat) TPM-pohjainen suojaus on erittäin tehokasta. Arvokkaissa kohdistetuissa fyysisissä hyökkäyksissä syvällinen puolustus on tärkeää.

I:t TPM:t "huijaavat" sinua?

A jatkuva myytti: TPM on takaovi tai seuraa käyttäjien toimintaa. TPM on passiivinen kryptografinen siru – se tallentaa avaimet ja mittaa käynnistystilan. Sillä ei ole verkkoyhteyttä, se ei soita kotiin, ei näe tiedostojasi. Käyttäjävirastolle aiheutuva riski on hienovaraisempi: TPM-lukitut DRM- ja todistuksen vaativat palvelut voivat periaatteessa sulkea pois käyttäjät, jotka käyttävät ei-hyväksyttyjä kokoonpanoja. Toistaiseksi valtavirran asennukset käyttävät TPM:ää suojaamiseen eikä ohjaukseen, mutta arkkitehtoninen huolenaihe on perusteltu.

Usein kysytyt kysymykset

Tarvitsenko TPM:n käyttöön?
Jos haluat BitLockerin, suojatun käynnistyksen lukitun Windowsin, laitteistotuetun Windows Hellon tai erilaisia ​​yritysominaisuuksia – kyllä. Jos käytät tavallista Linuxia ilman mitään näistä, voit jättää sen pois käytöstä. Useimmissa nykyaikaisissa järjestelmissä se on oletuksena päällä; sen sammuttaminen on tahallinen valinta.
Mitä eroa on TPM 1.2:lla ja TPM 2.0:lla?
TPM 2.0 tukee nykyaikaisia ​​algoritmeja (ECC, SHA-256), joita 1.2 ei tue, siinä on puhtaampi protokolla, enemmän PCR:itä ja joustavampi valtuutusmalli. Windows 11 vaatii 2.0:n. Vanhat laitteistot, joissa on TPM 1.2, jäävät yhä useammin uusien ohjelmistovaatimusten ulkopuolelle.
Mikä on fTPM ja miksi se on joskus haavoittuvainen?
Firmware TPM – erillisen sirun sijaan TPM-toiminto toimii koodina suorittimen suojatussa enklaavissa (Intel TXT/CSME, AMD PSP). Yleensä turvallisempi kuin erilliset TPM:t, koska ei ole väylää haistella. Tietyt laiteohjelmiston haavoittuvuudet (CVE:t vuonna 2023 AMD fTPM:tä vastaan) ovat heikentäneet tiettyjä toteutuksia; korjaustiedostot julkaistaan ​​BIOS-päivitysten kautta.
Voiko TPM:n nollata?
Kyllä – BIOSissa on selkeä TPM-vaihtoehto, joka pyyhkii kaikki tallennetut avaimet. Tyhjennyksen jälkeen kaikki aiemmin sinetöity (BitLocker, Windows Hello) katoaa pysyvästi, ellei sinulla ole palautusavaimia. Älä tyhjennä ilman sitä varmuuskopiota.
Käyttääkö macOS TPM:ää?
Ei TCG-standardin TPM - Apple käyttää omaa Secure Enclavea, jolla on samanlaiset ominaisuudet. T2-siru (Intel Mac) ja Secure Enclave M-sarjan Maceissa suorittavat vastaavia toimintoja FileVaultille, Touch ID:lle, Apple Paylle ja Keychainille. Arkkitehtuuri on erilainen; turvallisuusominaisuudet ovat vertailukelpoisia.
TPM selitetty: Laitteiston suojaussiru nykyaikaisten tietokoneiden ja palvelimien sisällä