@@ -1320,14 +1320,14 @@ it in the next step.
13201320
1321132111 . ** Fast-forward attack recovery** A _ fast-forward attack_ happens
13221322 when attackers arbitrarily increase the version numbers in any of the
1323- timestamp, snapshot, targets, or delegated targets metadata. The attacker goal
1323+ timestamp, snapshot, targets, or delegated targets metadata. The attacker's goal
13241324 is to cause clients to refuse to update the metadata later because the attacker's
13251325 listed metadata version number (possibly MAX_INT) is greater than the new valid
1326- version. To recover from
1327- fast-forward attacks after the repository has been compromised and recovered,
1328- certain metadata files need to be deleted as specified in this section.
1329- Please see [ the Mercury
1330- paper] ( https://ssl.engineering.nyu.edu/papers/kuppusamy-mercury-usenix-2017.pdf )
1326+ version. To recover from a fast-forward attacks after the repository has been
1327+ compromised and recovered, certain metadata files need to be deleted as
1328+ specified in this section. If a delegated targets file is subjected to a
1329+ fast-forward attack, the snapshot role's keys should be replaced. Please see
1330+ [ the Mercury paper] ( https://ssl.engineering.nyu.edu/papers/kuppusamy-mercury-usenix-2017.pdf )
13311331 for more details on fast-forward attacks.
13321332
13331333 1. **Targets recovery** If a threshold of targets keys have been
@@ -1489,18 +1489,13 @@ it in the next step.
14891489 1 . Let DELEGATEE denote the current target role TARGETS is
14901490 delegating to.
14911491
1492- 2 . ** Fast-forward attack recovery.** If a threshold of
1493- delegated targets keys for the current delegation are removed from the
1494- TARGETS metadata, delete the trusted DELEGATEE metadata, if any, and the
1495- previously trusted snapshot metadata.
1496-
1497- 3 . ** Check for a rollback attack via snapshot.** The version number of the
1492+ 2 . ** Check for a rollback attack via snapshot.** The version number of the
14981493 DELEGATEE metadata in the previous trusted snapshot metadata, if any, MUST
14991494 be less than or equal to its version number in the new trusted snapshot
15001495 metadata. If this is not the case, abort the update cycle, and report the
15011496 potential rollback attack.
15021497
1503- 4 . ** Download the DELEGATEE targets metadata file** , up to either
1498+ 3 . ** Download the DELEGATEE targets metadata file** , up to either
15041499 the number of bytes specified in the snapshot metadata file, or some Z
15051500 number of bytes. The value for Z is set by the authors of the application
15061501 using TUF. For example, Z may be tens of kilobytes. IF DELEGATEE cannot be
@@ -1513,40 +1508,40 @@ it in the next step.
15131508 in the snapshot metadata file. In either case, the client MUST write the
15141509 file to non-volatile storage as FILENAME.EXT.
15151510
1516- 5 . ** Check against snapshot metadata.** The hashes (if any), and
1511+ 4 . ** Check against snapshot metadata.** The hashes (if any), and
15171512 version number of the new DELEGATEE metadata file MUST match the trusted
15181513 snapshot metadata, if any. This is done, in part, to prevent a mix-and-match
15191514 attack by man-in-the-middle attackers. If the new DELEGATEE metadata file
15201515 does not match, abort the update cycle, and report the failure.
15211516
1522- 6 . ** Check for an arbitrary software attack.** The new DELEGATEE
1517+ 5 . ** Check for an arbitrary software attack.** The new DELEGATEE
15231518 metadata file MUST have been signed by a threshold of keys specified in the
15241519 TARGETS metadata file. If the new DELEGATEE metadata file is not signed
15251520 as required, abort the update cycle, and report the failure.
15261521
1527- 7 . ** Check for a rollback attack on the DELEGATEE metadata.**
1522+ 6 . ** Check for a rollback attack on the DELEGATEE metadata.**
15281523 The version number of the trusted DELEGATEE metadata file, if any, MUST be
15291524 less than or equal to the version number of the new DELEGATE metadata
15301525 file. If the new DELEGATEE metadata file is older than the trusted
15311526 DELEGATEE metadata file abort the update cycle, and report the potential
15321527 rollback attack.
15331528
1534- 8 . ** Check for a freeze attack.** The latest known time
1529+ 7 . ** Check for a freeze attack.** The latest known time
15351530 should be lower than the expiration timestamp in the new DELEGATEE
15361531 metadata file. If so, the new DELEGATEE file becomes the trusted DELEGATEE
15371532 file. If the new DELEGATEE metadata file is expired, abort the update
15381533 cycle, and report the potential freeze attack.
15391534
1540- 9 . If the current delegation is a multi-role delegation,
1535+ 8 . If the current delegation is a multi-role delegation,
15411536 recursively visit each role, and check that each has signed exactly the
15421537 same non-custom metadata (i.e., length and hashes) about the target (or
15431538 the lack of any such metadata). Otherwise, abort the update cycle, and
15441539 report the failure.
15451540
1546- 10 . If the current delegation is a terminating delegation,
1541+ 9 . If the current delegation is a terminating delegation,
15471542 then jump to step [[ #fetch-target]] .
15481543
1549- 11 . Otherwise, if the current delegation is a non-terminating
1544+ 10 . Otherwise, if the current delegation is a non-terminating
15501545 delegation, continue processing the next delegation, if any, by repeating
15511546 the preorder depth-first search with DELEGATEE as the current TARGET role.
15521547 Stop the search, and jump to step [[ #fetch-target]] . as soon as a
0 commit comments