Microsoft Azure Attestatie

Microsoft Azure Attestation is een geïntegreerde oplossing voor het op afstand verifiëren van de betrouwbaarheid van een platform en integriteit van de binaire bestanden die erin worden uitgevoerd. De service ondersteunt het attesteren van platforms die worden ondersteund door Trusted Platform Modules (TPM's), naast de mogelijkheid om de status te attesteren van Trusted Execution Environments (TEE's), zoals Intel® Software Guard Extensions-enclaves (SGX), Virtualization-based Security-enclaves (VBS), Trusted Platform Modules (TPM's), Trusted launch for Azure VMs en Azure confidential VMs.

Attestation is een proces voor het demonstreren dat de software-binaire bestanden op de juiste manier op een vertrouwd platform zijn geïnstantieerd. Externe partijen kunnen er dan zeker van zijn dat alleen de bedoelde software draait op vertrouwde hardware. Azure Attestation is een uniforme klantgerichte dienst en kader voor attestatie.

Met Azure Attestation kunnen geavanceerde beveiligingsparadigma's, zoals Azure Confidential Computing en intelligente randbeveiliging, worden gerealiseerd. De service ontvangt bewijs van rekenentiteiten, zet ze om in een set claims, valideert ze op basis van configureerbaar beleid en produceert cryptografische bewijzen voor toepassingen op basis van claims (bijvoorbeeld relying party's en controleautoriteiten).

Azure Attestation ondersteunt zowel platform- als gast-attestation van op AMD SEV-SNP gebaseerde vertrouwelijke VM's (CVM's). Op Azure Attestation gebaseerde platformattest vindt automatisch plaats tijdens het kritieke opstartpad van CVM's, zonder dat er actie van de klant nodig is. Zie voor meer informatie over gastattestatie Aankondiging van de algemene beschikbaarheid van gastattestatie voor vertrouwelijke VM's.

Gebruiksgevallen

Azure Attestation biedt uitgebreide Attestation-Services voor meerdere omgevingen en aparte use-cases.

AMD SEV-SNP-attestation op vertrouwelijke VM's

Azure Confidential VM (CVM) is gebaseerd op AMD-processors met SEV-SNP-technologie. CVM biedt de optie voor schijfversleuteling van vm-besturingssysteem met door het platform beheerde sleutels of door de klant beheerde sleutels en verbindt de schijfversleutelingssleutels met de TPM van de virtuele machine. Wanneer een CVM wordt opgestart, worden SNP-rapporten met de firmwaremetingen van de gast-VM verzonden naar Azure Attestation. De service valideert de metingen en geeft een attestation-token uit dat wordt gebruikt om sleutels van Managed-HSM of Azure Key Vault vrij te geven. Deze sleutels worden gebruikt om de vTPM-status van de gast-VM te ontsleutelen, de besturingssysteemschijf te ontgrendelen en de CVM te starten. Het attestation- en sleutelreleaseproces wordt automatisch uitgevoerd op elke CVM-opstartbewerking en het proces zorgt ervoor dat de CVM alleen wordt opgestart na een geslaagde attestation van de hardware.

AMD SEV-SNP-attestation voor vertrouwelijke containers

Azure Confidential Containers is gebaseerd op AMD-processors met SEV-SNP-technologie. Vertrouwelijke containers, gehost op Azure Container Instances en op Azure Kubernetes Service (in preview), bieden de mogelijkheid om groepen containers uit te voeren in een SEV-SNP beveiligde vertrouwde uitvoeringsomgeving waarmee die groep containers wordt geïsoleerd van het besturingsvlak voor containerbeheer en andere actieve containers. Attestation in vertrouwelijke containers omvat het rechtstreeks ophalen van het AMD Hardware Attestation-rapport van de processor. U kunt deze taak uitvoeren met de SKR sidecar-container of deze rechtstreeks compileren in uw toepassingslogica. Het hardwarerapport kan vervolgens worden uitgewisseld met Azure Attestation en beheerde HSM of Premium Azure Key Vault (AKV) om geheimen op te halen. U kunt het hardwarerapport ook naar wens aan uw eigen key vault-systeem verstrekken.

Vertrouwde startattestatie

Azure-klanten kunnen opstartkit- en rootkit-infecties voorkomen door vertrouwde lancering voor hun virtuele machines (VM's) in te schakelen. Wanneer de virtuele machine met beveiligd opstarten en vTPM is ingeschakeld met de gastattestatie-extensie, worden vTPM-metingen periodiek verzonden naar Azure Attestation voor het bewaken van de opstartintegriteit. Een attestation-fout geeft potentiële malware aan, die via Microsoft Defender voor Cloud aan klanten wordt weergegeven, via waarschuwingen en aanbevelingen.

TPM-attestatie

Attestation op basis van Trusted Platform Modules (TPM) is essentieel om de status van een platform te bewijzen. Een TPM fungeert als de basis van vertrouwen en de coprocessor voor beveiliging om cryptografische geldigheid te bieden aan de metingen (bewijs). Apparaten met een TPM kunnen afhankelijk zijn van attestation om te bewijzen dat opstartintegriteit niet is aangetast en de claims gebruiken om de activering van de functiestatus tijdens het opstarten te detecteren.

Clienttoepassingen kunnen worden ontworpen om gebruik te maken van TPM-attestation door beveiligingsgevoelige taken te delegeren, zodat deze alleen kunnen worden uitgevoerd nadat een platform op veiligheid is gevalideerd. Dergelijke toepassingen kunnen vervolgens gebruik maken van Azure Attestation om regelmatig een vertrouwensrelatie met het platform tot stand te brengen en van de mogelijkheid toegang te krijgen tot gevoelige gegevens.

SGX-enclave-attestatie

Intel® Software Guard Extensions (SGX) verwijst naar isolatie van hardwarekwaliteit, die wordt ondersteund op bepaalde Intel CPU-modellen. SGX maakt het mogelijk code uit te voeren in gezuiverde compartimenten, ook wel SGX-enclaves genoemd. De machtigingen voor toegang en geheugen worden vervolgens beheerd door hardware om een minimaal aanvalsoppervlak met de juiste isolatie te garanderen.

Clienttoepassingen kunnen worden ontworpen om gebruik te maken van SGX-enclaves door beveiligingsgevoelige taken te delegeren in deze enclaves. Dergelijke toepassingen kunnen vervolgens gebruik maken van Azure Attestation om regelmatig een vertrouwensrelatie tot stand te brengen in de enclave en de mogelijkheid om toegang te krijgen tot gevoelige gegevens.

Intel® Xeon® Scalable-processors ondersteunen alleen op ECDSA gebaseerde attestation-oplossingen voor het extern attesteren van SGX-enclaves. Azure Attestation biedt ondersteuning voor validatie van Intel® Xeon® E3-processors en Intel® Xeon® Scalable-serverplatforms op basis van ECDSA.

Notitie

Voor het uitvoeren van attestation van Intel® Xeon® Scalable-serverplatforms op basis van processoren met behulp van Azure Attestation, wordt verwacht dat gebruikers Azure DCAP versie 1.10.0 of hoger installeren.

Open Enclave-attestatie

Open Enclave (OE) is een verzameling van bibliotheken die gericht zijn op het maken van een enkelvoudige enclaving-abstractie voor ontwikkelaars voor het bouwen van op TEE gebaseerde toepassingen. Het biedt een universeel veilig app-model dat platformbijzonderheden minimaliseert. Microsoft beschouwt dit als een essentiële opstap voor democratisering van op hardware gebaseerde enclave-technologieën zoals SGX en het verhogen van hun opname op Azure.

OE standaardiseert specifieke vereisten voor de verificatie van een enclave-bewijs. Hiermee wordt OE gekwalificeerd als een zeer geschikte Azure Attestation-klant.

Azure Attestation wordt uitgevoerd in een TEE

Azure Attestation is essentieel voor vertrouwelijke computerscenario's, omdat het de volgende acties uitvoert:

  • Controleert of de enclave-bewijzen geldig zijn.
  • Evalueert het enclave-bewijs op basis van een door de klant gedefinieerd beleid.
  • Beheert en slaat tenant-specifieke beleidsregels op.
  • Genereert en ondertekent een token dat wordt gebruikt door vertrouwende partijen om te communiceren met de enclave.

Om Microsoft operationeel uit de vertrouwde computingbasis (TCB) te houden, worden kritieke bewerkingen van Azure Attestation, zoals prijsopgavevalidatie, tokengeneratie, beleidsevaluatie en tokenondertekening, verplaatst naar op AMD SEV-SNP gebaseerde vertrouwelijke containers.

Waarom Azure Attestation gebruiken

Azure Attestation is de voorkeurskeuze voor het afleveren van TEEs omdat het de volgende voordelen biedt:

  • Geïntegreerd framework voor het attesteren van meerdere omgevingen, zoals TPM's, SGX-enclaves en VBS-enclaves.
  • Hiermee kunt u aangepaste attestation-providers en configuratie van beleid maken om het genereren van tokens te beperken.
  • Beschermt de gegevens tijdens gebruik met implementatie in een TEE.
  • Maximaal beschikbare service.

Vertrouwensrelatie tot stand brengen met Azure Attestation

  1. Controleer of het attestation-token wordt gegenereerd door Azure Attestation : een attestation-token dat door Azure Attestation wordt gegenereerd, is ondertekend met behulp van een zelfondertekend certificaat. De URL voor handtekeningcertificaten wordt weergegeven via een OpenID-metagegevenseindpunt. Een vertrouwende partij kan het ondertekeningscertificaat ophalen en de handtekeningverificatie van het attestatietoken uitvoeren. Zie codevoorbeelden voor meer informatie.
  2. Controleer of Azure Attestation wordt uitgevoerd in een SEV-SNP container: de certificaten voor tokenondertekening bevatten informatie over de TEE waarin Azure Attestation wordt uitgevoerd. Dit TEE-onderpand is een SEV-SNP rapport. De vertrouwende partij kan controleren of Azure Attestation in een geldige TEE wordt uitgevoerd door het rapport lokaal te valideren. Zie SEV-SNP voor codevoorbeelden.
  3. Valideer de binding van Azure Attestation TEE-rapport met de sleutel die het attestation-token heeft ondertekend: de relying party kan controleren of de hash van de openbare sleutel die het attestation-token heeft ondertekend, overeenkomt met het rapportgegevensveld van het Azure Attestation TEE-rapport. Zie het codevoorbeeld voor meer informatie.
  4. Controleer of azure Attestation-codemetingen overeenkomen met de gepubliceerde Azure-waarden : het TEE-onderpand dat is ingesloten in de attestation-tokenondertekeningscertificaten, bevat TEE-codemetingen van Azure Attestation. Een relying party kan valideren dat het rapport deel uitmaakt van Azure Attestation door specifieke waarden te vergelijken die zijn opgehaald uit het TEE-onderpand in het attestation-tokenondertekeningscertificaat met waarden die door het Azure Attestation team worden geleverd. Voor SEV-SNP moet HOST_DATA worden gevalideerd. Zie het codevoorbeeld voor meer informatie. Als u deze validatie wilt uitvoeren, dient u een aanvraag in op de pagina ondersteuning voor Azure. Het Azure Attestation-team bereikt u wanneer deze specifieke waarden zijn gepland voor rotatie.
  5. Krijg zekerheid in de herkomst van de build: Azure Attestation is geïntegreerd met Microsoft's Signing Transparency (MST). MST registreert codehandtekeningen in een onveranderlijk, manipulatiebestendig grootboek. De MST-service levert cryptografisch verifieerbare, SCITT-compatibele ontvangstbewijzen die duidelijk inzicht bieden in de implementaties van Azure Attestation, waardoor vertrouwen, controlebaarheid en naleving van regelgeving worden versterkt. Meer informatie over MST en hoe u build-artefacten kunt valideren, vindt u in About Microsoft Signing Transparency ledger.

De waarden die geldige Azure Attestation-exemplaren identificeren, worden naar verwachting gewijzigd wanneer certificaten voor ondertekening van code worden geroteerd of wanneer beveiligingsupdates nieuwe beleidsversies vereisen. Het Azure Attestation team volgt dit implementatieschema voor elke geplande rotatie:

  1. Het Azure Attestation-team stelt afnemers op de hoogte van de nieuwe waarden en hanteert daarbij een overgangsperiode van twee maanden om relevante codewijzigingen door te voeren.
  2. Na de respijtperiode van twee maanden gaat Azure Attestation de nieuwe waarden gebruiken.
  3. Drie maanden na de meldingsdatum stopt Azure Attestation met het gebruik van de oude waarden.

Voor niet-geplande rotaties, inclusief de rotaties die zijn vereist voor beveiligingsupdates, communiceert het Azure Attestation-team nieuwe waarden met een respijtperiode van één maand.

Ondersteuning voor bedrijfscontinuïteit en herstel na noodgevallen (BCDR)

Met BCDR (Business Continuity and Disaster Recovery ) voor Azure Attestation kunt u serviceonderbrekingen beperken als gevolg van aanzienlijke beschikbaarheidsproblemen of noodgeval in een regio.

Clusters die in twee regio's zijn geïmplementeerd, werken onafhankelijk van elkaar onder normale omstandigheden. In het geval van een storing of uitval van één regio vindt het volgende plaats:

  • Azure Attestation BCDR biedt naadloze failover waarbij klanten geen extra stap hoeven te zetten om te herstellen.
  • De Azure Traffic Manager voor de regio detecteert dat de statustest is gedegradeerd en schakelt het eindpunt over naar de gekoppelde regio.
  • Bestaande verbindingen werken niet en ontvangen interne serverfouten of time-outproblemen.
  • Alle bewerkingen op het besturingsvlak worden geblokkeerd. Klanten kunnen geen attesteringsproviders aanmaken in de primaire regio.
  • Alle bewerkingen in het gegevensvlak, inclusief attestatie-aanroepen en beleidsconfiguratie, worden afgehandeld door de secundaire regio. Klanten kunnen blijven werken aan gegevensvlakbewerkingen met de oorspronkelijke URI die overeenkomt met de primaire regio.

Volgende stappen