Anti-Downgrade
Unter Anti-Downgrade werden Maßnahmen verstanden, die das Zurückstufen auf eine frühere Firmware-Version unmöglich machen, bspw. da in diesen kritische Sicherheitslücken enthalten sind, die das Ausführen von Homebrew ermöglichen.
Nintendo 3DS
Ab der 3DS-Firmware 11.0.0-33 prüft Process9 beim Installieren eines Titels die TitleID und die Version des zu installierenden Titels mit einer hardcodierten Liste gegen.[1] Dadurch können die Systemeinstellungen, das HOME-Menü, der Internetbrowser, ErrDisp und einige Systemmodule nicht mehr gedowngradet werden.[2] Dies betrifft nur das Downgrade über einen ARM11-Kernel-Exploit, da per ARM9-Exploit diese Schranke einfach umgangen werden kann.
Nintendo Switch
Die Nintendo Switch benutzt eFUSEs, um Downgrades zu verhindern.[3] Der Bootloader prüft dabei die erwartete Anzahl an Fuses mit der tatsächlichen Anzahl gegen. Sind zu viele Fuses gebrannt, wird nicht gebootet, sind zu wenige gebrannt (nach einem Firmware-Update) aktiviert der Bootloader das Programmieren der Fuses. Der Fuse-Check wird üblicherweise bei Custom Bootloadern umgangen, daher ist das Booten einer älteren Firmware per Custom Firmware immer möglich, unabhängig von der Anzahl der gebrannten Fuses.
Diese Tabelle listet die erwartete Anzahl an Fuses für jede Firmware auf:
Firmware-Version | Erwartete Anzahl an gebrannten Fuses (Retail) | Erwartete Anzahl an gebrannten Fuses (Nicht-Retail) |
---|---|---|
1.0.0 | 1 | 0 |
2.0.0 - 2.3.0 | 2 | 0 |
3.0.0 | 3 | 1 |
3.0.1 - 3.0.2 | 4 | 1 |
4.0.0 - 4.1.0 | 5 | 1 |
5.0.0 - 5.1.0 | 6 | 1 |
6.0.0 - 6.1.0 | 7 | 1 |
6.2.0 | 8 | 1 |
7.0.0 - 8.0.1 | 9 | 1 |
8.1.0 | 10 | 1 |
8.1.1 | 10 oder 11 | 1 |
9.0.0 - 9.0.1 | 11 | 1 |
9.1.0 - 9.2.0 | 12 | 1 |
10.0.0 - 10.2.0 | 13 | 1 |
11.0.0 - 12.0.1 | 14 | 1 |
12.0.2 - 13.2.0 | 15 | 1 |
13.2.1 - 14.1.2 | 16 | 1 |
15.0.0 - 15.0.1 | 17 | 1 |
16.0.0 - 16.0.1 | 18 | 1 |
16.0.2 - 16.0.3 | ? | ? |
Einzelnachweise