chore(deps): update dependency tuf to v3.1.1 [security] #109
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
==3.1.0→==3.1.1Warning
Some dependencies could not be looked up. Check the warning logs for more information.
tuf's Metadata API: Targets.get_delegated_role() is missing input validation
CGA-2hj4-64c8-5mwp / GHSA-77hh-43cm-v8j6
More information
Details
The security of both a TUF client and repository implementations depend on the concept of trusted Metadata objects verifying the signatures over other Metadata that it delegates to. This verification process uses
Targets.get_delegated_role(delegated_role: str)to find the delegation information.tuf.api.metadata.Targets.get_delegated_role()should ensure that the givendelegated_rolenameis actually a name of a role that is delegated by that Targets, but in the case of "succinct delegation" this does not happen.tuf.ngclientusers are not impacted but direct users oftuf.api.metadatacould be impacted.Impact
If an attacker can make a Metadata API user run
Targets.get_delegated_role()so thatTargetsuses succinct delegationdelegated_roleargument is not actually delegated by theTargetsthe result will be incorrect.
This also means that if an attacker can make a Metadata API user run
Targets.verify_delegate()orTargets.get_verification_result()so thatTargetsuses a succinct delegationdelegated_roleargument is the name of some unrelated Metadatathe result would be a successful verification even though the
Targetsin question does not actually delegate todelegated_role.The impact is estimated to be low for following reasons:
tuf.api.metadatain this way.All users of
tuf.ngclientare specifically not impacted. Users oftuf.api.metadatacould be impacted if they use succinct delegations in a way described above.Patches
A fix is available in python-tuf 3.1.1 as commit 77cb66bc and in later releases as commit eb4834d9._
Workarounds
tuf.api.metadatausers should only callTargets.get_delegated_role(),Targets.verify_delegate()orTargets.get_verification_result()withdelegated_roleargument that is known to be delegated by theTargetsin question.Severity
Low
References
This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).
Release Notes
theupdateframework/python-tuf (tuf)
v3.1.1Compare Source
This is a security fix release to address advisory GHSA-77hh-43cm-v8j6. The issue does not affect
tuf.ngclientusers, but could affecttuf.api.metadatausers.Changed
Configuration
📅 Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Renovate Bot.