@@ -1218,36 +1218,42 @@ non-volatile storage as FILENAME.EXT.
1218
1218
trusted root metadata file. If the new targets metadata file is not signed
1219
1219
as required, discard it, abort the update cycle, and report the failure.
1220
1220
1221
- * ** 4.3** . ** Check for a freeze attack.** The latest known time should be
1221
+ * ** 4.3** . ** Check for a rollback attack.** The version number of the trusted
1222
+ targets metadata file, if any, MUST be less than or equal to the version
1223
+ number of the new targets metadata file. If the new targets metadata file is
1224
+ older than the trusted targets metadata file, discard it, abort the update
1225
+ cycle, and report the potential rollback attack.
1226
+
1227
+ * ** 4.4** . ** Check for a freeze attack.** The latest known time should be
1222
1228
lower than the expiration timestamp in the new targets metadata file. If so,
1223
1229
the new targets metadata file becomes the trusted targets metadata file. If
1224
1230
the new targets metadata file is expired, discard it, abort the update cycle,
1225
1231
and report the potential freeze attack.
1226
1232
1227
- * ** 4.4 ** . ** Perform a preorder depth-first search for metadata about the
1233
+ * ** 4.5 ** . ** Perform a preorder depth-first search for metadata about the
1228
1234
desired target, beginning with the top-level targets role.** Note: If
1229
- any metadata requested in steps 4.4 .1 - 4.4 .2.3 cannot be downloaded nor
1235
+ any metadata requested in steps 4.5 .1 - 4.5 .2.3 cannot be downloaded nor
1230
1236
validated, end the search and report that the target cannot be found.
1231
1237
1232
- * ** 4.4 .1** . If this role has been visited before, then skip this role (so
1238
+ * ** 4.5 .1** . If this role has been visited before, then skip this role (so
1233
1239
that cycles in the delegation graph are avoided). Otherwise, if an
1234
1240
application-specific maximum number of roles have been visited, then go to
1235
1241
step 5 (so that attackers cannot cause the client to waste excessive
1236
1242
bandwidth or time). Otherwise, if this role contains metadata about the
1237
1243
desired target, then go to step 5.
1238
1244
1239
- * ** 4.4 .2** . Otherwise, recursively search the list of delegations in order
1245
+ * ** 4.5 .2** . Otherwise, recursively search the list of delegations in order
1240
1246
of appearance.
1241
1247
1242
- * ** 4.4 .2.1** . If the current delegation is a multi-role delegation,
1248
+ * ** 4.5 .2.1** . If the current delegation is a multi-role delegation,
1243
1249
recursively visit each role, and check that each has signed exactly the
1244
1250
same non-custom metadata (i.e., length and hashes) about the target (or
1245
1251
the lack of any such metadata).
1246
1252
1247
- * ** 4.4 .2.2** . If the current delegation is a terminating delegation,
1253
+ * ** 4.5 .2.2** . If the current delegation is a terminating delegation,
1248
1254
then jump to step 5.
1249
1255
1250
- * ** 4.4 .2.3** . Otherwise, if the current delegation is a non-terminating
1256
+ * ** 4.5 .2.3** . Otherwise, if the current delegation is a non-terminating
1251
1257
delegation, continue processing the next delegation, if any. Stop the
1252
1258
search, and jump to step 5 as soon as a delegation returns a result.
1253
1259
0 commit comments