Skip to content

Commit 00a630f

Browse files
authored
Merge pull request #748 from openid/647-security-dcql-json
Security considerations on untrusted input
2 parents ce27409 + fbedab8 commit 00a630f

1 file changed

Lines changed: 11 additions & 1 deletion

File tree

1.1/openid-4-verifiable-presentations-1_1.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1832,7 +1832,7 @@ While breaking changes to the specifications referenced in this specification ar
18321832

18331833
The security properties of the OpenID for Verifiable Credentials family of specifications have been formally analyzed, see [@secanalysis.openid4vc].
18341834

1835-
## Preventing Replay of Verifiable Presentations {#preventing-replay}
1835+
## Preventing Replay of Verifiable Presentations {#preventing-replay}
18361836

18371837
An attacker could try to inject Presentations obtained from (for example) a previous Authorization Response into another Authorization Response, thus impersonating the End-User that originally presented the respective Verifiable Presentation. Holder Binding aims to prevent such attacks.
18381838

@@ -1983,6 +1983,15 @@ these constraints. The Wallet is not controlled by the Verifier and the Verifier
19831983
MUST perform its own security checks on the returned Credentials and
19841984
Presentations.
19851985

1986+
## Parsing of untrusted inputs
1987+
1988+
Wallets MUST treat all incoming requests as untrusted input. To mitigate injection and resource exhaustion attacks, Wallets MUST implement input validation on the Authorization Request and its enclosed DCQL query.
1989+
1990+
Wallets SHOULD implement the following steps:
1991+
1992+
* Enforce input validation: Verify that the Authorization Request and DCQL query contain no malformed properties. Unknown parameters MUST be ignored.
1993+
* Apply resource limits: Enforce maximum length restrictions on strings, maximum depths for nested objects, and maximum item counts for arrays within the query.
1994+
19861995
# Privacy Considerations {#privacy-considerations}
19871996

19881997
Many privacy considerations are specific to the Credential format and associated proof type used in a particular Presentation.
@@ -3679,3 +3688,4 @@ The technology described in this specification was made available from contribut
36793688
* Clarified that Multi-RP-sig section means Verifier Info instead of attestations
36803689
* Updated origin examples to remove trailing slash
36813690
* Clarified that request_uri_method is a case-sensitive string
3691+
* add security considerations on untrusted input

0 commit comments

Comments
 (0)