Skip to content

Commit 39c80de

Browse files
authored
Merge pull request #106 from erickt/rollback
Timestamp rollback check should also check for snapshot rollback
2 parents 9794b92 + c6ec4fc commit 39c80de

File tree

1 file changed

+17
-14
lines changed

1 file changed

+17
-14
lines changed

tuf-spec.md

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# <p align="center">The Update Framework Specification
22

3-
Last modified: **9 June 2020**
3+
Last modified: **26 August 2020**
44

5-
Version: **1.0.4**
5+
Version: **1.0.5**
66

77
We strive to make the specification easy to implement, so if you come across
88
any inconsistencies or experience any difficulty, do let us know by sending an
@@ -1158,11 +1158,18 @@ as FILENAME.EXT.
11581158
file. If the new timestamp metadata file is not properly signed, discard it,
11591159
abort the update cycle, and report the signature failure.
11601160

1161-
* **2.2**. **Check for a rollback attack.** The version number of the trusted
1162-
timestamp metadata file, if any, must be less than or equal to the version
1163-
number of the new timestamp metadata file. If the new timestamp metadata
1164-
file is older than the trusted timestamp metadata file, discard it, abort the
1165-
update cycle, and report the potential rollback attack.
1161+
* **2.2**. **Check for a rollback attack.**
1162+
1163+
* **2.2.1**. The version number of the trusted timestamp metadata file, if
1164+
any, must be less than or equal to the version number of the new timestamp
1165+
metadata file. If the new timestamp metadata file is older than the
1166+
trusted timestamp metadata file, discard it, abort the update cycle, and
1167+
report the potential rollback attack.
1168+
1169+
* **2.2.2**. The version number of the snapshot metadata file in the
1170+
trusted timestamp metadata file, if any, MUST be less than or equal to its
1171+
version number in the new timestamp metadata file. If not, discard the new
1172+
timestamp metadadata file, abort the update cycle, and report the failure.
11661173

11671174
* **2.3**. **Check for a freeze attack.** The latest known time should be
11681175
lower than the expiration timestamp in the new timestamp metadata file. If
@@ -1194,23 +1201,19 @@ non-volatile storage as FILENAME.EXT.
11941201

11951202
* **3.3**. **Check for a rollback attack.**
11961203

1197-
* **3.3.1**. Note that the trusted snapshot metadata file may be checked
1198-
for authenticity, but its expiration does not matter for the following
1199-
purposes.
1200-
1201-
* **3.3.2**. The version number of the trusted snapshot metadata file, if
1204+
* **3.3.1**. The version number of the trusted snapshot metadata file, if
12021205
any, MUST be less than or equal to the version number of the new snapshot
12031206
metadata file. If the new snapshot metadata file is older than the trusted
12041207
metadata file, discard it, abort the update cycle, and report the potential
12051208
rollback attack.
12061209

1207-
* **3.3.3**. The version number of the targets metadata file, and all
1210+
* **3.3.2**. The version number of the targets metadata file, and all
12081211
delegated targets metadata files (if any), in the trusted snapshot metadata
12091212
file, if any, MUST be less than or equal to its version number in the new
12101213
snapshot metadata file. Furthermore, any targets metadata filename that was
12111214
listed in the trusted snapshot metadata file, if any, MUST continue to be
12121215
listed in the new snapshot metadata file. If any of these conditions are
1213-
not met, discard the new snaphot metadadata file, abort the update cycle,
1216+
not met, discard the new snapshot metadadata file, abort the update cycle,
12141217
and report the failure.
12151218

12161219
* **3.4**. **Check for a freeze attack.** The latest known time should be

0 commit comments

Comments
 (0)