Skip to content

Commit dc7a5cf

Browse files
mnm678lukpueh
authored andcommitted
Clarify recovery from ffwd on top-level roles
Clarify what files to delete or untrust in various situations to recover from a fast-forward attack on top-level metadata.
1 parent ad68337 commit dc7a5cf

File tree

1 file changed

+19
-7
lines changed

1 file changed

+19
-7
lines changed

tuf-spec.md

Lines changed: 19 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1116,16 +1116,28 @@ repo](https://github.com/theupdateframework/specification/issues).
11161116
cycle, report the potential freeze attack. On the next update cycle, begin
11171117
at step 0 and version N of the root metadata file.
11181118

1119-
* **1.9**. **If the timestamp and / or snapshot keys have been rotated, then
1120-
delete the trusted timestamp and snapshot metadata files.** This is done in
1121-
order to recover from fast-forward attacks after the repository has been
1122-
compromised and recovered. A _fast-forward attack_ happens when attackers
1123-
arbitrarily increase the version numbers of: (1) the timestamp metadata, (2)
1124-
the snapshot metadata, and / or (3) the targets, or a delegated targets,
1125-
metadata file in the snapshot metadata. Please see [the Mercury
1119+
* **1.9**. **Fast-forward attack recovery** A _fast-forward attack_ happens
1120+
when attackers arbitrarily increase the version numbers in any of the
1121+
timestamp, snapshot, targets, or delegated targets metadata. To recover from
1122+
fast-forward attacks after the repository has been compromised and recovered,
1123+
certain metadata files need to be deleted as specified in this section.
1124+
Please see [the Mercury
11261125
paper](https://ssl.engineering.nyu.edu/papers/kuppusamy-mercury-usenix-2017.pdf)
11271126
for more details.
11281127

1128+
* **1.9.1**. **Targets recovery** If a threshold of targets keys are removed
1129+
from the root metadata, delete the old top-level targets, snapshot, and
1130+
timestamp metadata files.
1131+
1132+
* **1.9.2**. **Snapshot recovery** If a threshold of snapshot keys have
1133+
been removed in the new trusted root metadata compared to the previous
1134+
trusted root metadata, delete the old snapshot and timestamp metadata
1135+
files.
1136+
1137+
* **1.9.3**. **Timestamp recovery** If a threshold of timestamp keys have
1138+
been removed from the new trusted root metadata compared to the previous
1139+
trusted root metadata, delete the old timestamp metadata file.
1140+
11291141
* **1.10**. **Set whether consistent snapshots are used as per the trusted
11301142
root metadata file** (see Section 4.3).
11311143

0 commit comments

Comments
 (0)