diff options
author | Matthew Miller <matthew@millerti.me> | 2022-11-19 23:29:42 -0800 |
---|---|---|
committer | Matthew Miller <matthew@millerti.me> | 2022-11-19 23:29:42 -0800 |
commit | 2740f81eb2b7e31610b2250baf59591da9828ea3 (patch) | |
tree | ef5eedc2fc9035c9d0f1becf9991cac49782bafb /packages/server/src | |
parent | 0c4c1e846ca4ae40786021b32ec25bcc210f1786 (diff) |
Restore registration error case detection
Diffstat (limited to 'packages/server/src')
-rw-r--r-- | packages/server/src/helpers/decodeAttestationObject.ts | 2 | ||||
-rw-r--r-- | packages/server/src/registration/verifyRegistrationResponse.ts | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/packages/server/src/helpers/decodeAttestationObject.ts b/packages/server/src/helpers/decodeAttestationObject.ts index 8eabf4a..afdd7a4 100644 --- a/packages/server/src/helpers/decodeAttestationObject.ts +++ b/packages/server/src/helpers/decodeAttestationObject.ts @@ -36,4 +36,6 @@ export type AttestationStatement = { get(key: 'ver'): string | undefined; get(key: 'certInfo'): Uint8Array | undefined; get(key: 'pubArea'): Uint8Array | undefined; + // `Map` properties + get size(): number; }; diff --git a/packages/server/src/registration/verifyRegistrationResponse.ts b/packages/server/src/registration/verifyRegistrationResponse.ts index dad5b56..c937bee 100644 --- a/packages/server/src/registration/verifyRegistrationResponse.ts +++ b/packages/server/src/registration/verifyRegistrationResponse.ts @@ -219,7 +219,7 @@ export async function verifyRegistrationResponse( } else if (fmt === 'apple') { verified = await verifyAttestationApple(verifierOpts); } else if (fmt === 'none') { - if (Object.keys(attStmt).length > 0) { + if (attStmt.size > 0) { throw new Error('None attestation had unexpected attestation statement'); } // This is the weaker of the attestations, so there's nothing else to really check |