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