- [ X ] bug report -> please search issues before submitting
- [ ] feature request
- [ ] documentation issue or request
- [ ] regression (a behavior that used to work and stopped in a new release)
Minimal steps to reproduce
Start an Azure SGX VM,
generate a quote using the provided application sgx.attest.sample.intel.sdk; and
attempt to attest the quote using the Azure Attestation endpoint sharedeus.eus.attest.azure.net/attest/SgxEnclave?api-version=2022-08-01.
The attestation endpoint returns an error failure.
I can successfully attest and generate a token for the quote Azure-Samples/microsoft-azure-attestation/sgx.attest.sample.intel.sdk/genquotes/out/enclave.info.debug.json provided in this repository, however.
Any log messages given by the failure
Given the quote I generated using my Azure SGX VM:
{
"error": {
"code": "InvalidQuote",
"innererror": {
"code": "InvalidQuote",
"message": "Attestation Enclave operation failed with 65534: oe_verify_evidence failed with quote collateral error 0x1b - OE_MISSING_CERTIFICATE_CHAIN: 0xfffe: 'The specified quote was invalid due to an error in the quote collateral.;\r\nRETURN_IF_ERROR('sgxQuote->Parse(serializedQuote, policyConfiguration)') failed with 0xfffe: 'The specified quote was invalid due to an error in the quote collateral.'\r\nRETURN_IF_ERROR('SgxQuote::Deserialize( _crypto, inputQuote, ignoreQuoteSignatureMismatch, _isOpenEnclaveProcessor, policyConfiguration, sgxQuote)') failed with 0xfffe: 'The specified quote was invalid due to an error in the quote collateral.'\r\nRETURN_IF_ERROR('GetQuoteProcessor(teeKind).DeserializeQuote( this, _pOcl.get(), decodedProof, ignoreQuoteBodySignatureMismatch, policyConfiguration, &pQuote)') failed with 0xfffe: 'The specified quote was invalid due to an error in the quote collateral.'\r\nRETURN_IF_ERROR('InitializeClaimsGeneration( clientApiVersion, teeKind, *decodedProof, *decodedRunTimeData, *decodedInitTimeData, draftPolicy, ignoreQuoteBodySignatureMismatch, "e, &claimsGenerator)') failed with 0xfffe: 'The specified quote was invalid due to an error in the quote collateral.'\r\nRETURN_IF_ERROR('pEnclave->Attest( clientApiVersion, teeKind, proof, runTimeData, teeRunTimeDataType, initTimeData, teeInitTimeDataType, draftPolicy, *pSuppliedClaims, ignoreQuoteSignatureMismatch, nonce, &pArtifactBuffer)') failed with 0xfffe: 'The specified quote was invalid due to an error in the quote collateral.'"
},
"message": "Attestation Enclave operation failed with 65534: oe_verify_evidence failed with quote collateral error 0x1b - OE_MISSING_CERTIFICATE_CHAIN: 0xfffe: 'The specified quote was invalid due to an error in the quote collateral.;\r\nRETURN_IF_ERROR('sgxQuote->Parse(serializedQuote, policyConfiguration)') failed with 0xfffe: 'The specified quote was invalid due to an error in the quote collateral.'\r\nRETURN_IF_ERROR('SgxQuote::Deserialize( _crypto, inputQuote, ignoreQuoteSignatureMismatch, _isOpenEnclaveProcessor, policyConfiguration, sgxQuote)') failed with 0xfffe: 'The specified quote was invalid due to an error in the quote collateral.'\r\nRETURN_IF_ERROR('GetQuoteProcessor(teeKind).DeserializeQuote( this, _pOcl.get(), decodedProof, ignoreQuoteBodySignatureMismatch, policyConfiguration, &pQuote)') failed with 0xfffe: 'The specified quote was invalid due to an error in the quote collateral.'\r\nRETURN_IF_ERROR('InitializeClaimsGeneration( clientApiVersion, teeKind, *decodedProof, *decodedRunTimeData, *decodedInitTimeData, draftPolicy, ignoreQuoteBodySignatureMismatch, "e, &claimsGenerator)') failed with 0xfffe: 'The specified quote was invalid due to an error in the quote collateral.'\r\nRETURN_IF_ERROR('pEnclave->Attest( clientApiVersion, teeKind, proof, runTimeData, teeRunTimeDataType, initTimeData, teeInitTimeDataType, draftPolicy, *pSuppliedClaims, ignoreQuoteSignatureMismatch, nonce, &pArtifactBuffer)') failed with 0xfffe: 'The specified quote was invalid due to an error in the quote collateral.'"
}
}
Expected/desired behavior
I expect the endpoint to return an attestation token. For example, given the quote provided in this repository:
Minimal steps to reproduce
sgx.attest.sample.intel.sdk
; andsharedeus.eus.attest.azure.net/attest/SgxEnclave?api-version=2022-08-01
.I can successfully attest and generate a token for the quote
Azure-Samples/microsoft-azure-attestation/sgx.attest.sample.intel.sdk/genquotes/out/enclave.info.debug.json
provided in this repository, however.Any log messages given by the failure
Given the quote I generated using my Azure SGX VM:
the SgxEnclave endpoint returns
Expected/desired behavior
I expect the endpoint to return an attestation token. For example, given the quote provided in this repository:
the endpoint returns the following response:
OS and Version?
Ubuntu 20.04