Line 347:
Line 347:
|
|
| ?
| ?
+
|-
+
| Anti-downgrade list did not include all system titles initially
+
| The anti-downgrade list did not include legacy FIRMs until [[11.8.0-41|11.8.0-X]]. Therefore, legacy FIRMs could still be downgraded.
+
| Downgrading legacy FIRMs; allowing to exploit bugs in older legacy FIRMs (of which at least one exists, see below).
+
| [[11.8.0-33|11.8.0]]
+
| [[11.8.0-33|11.8.0]]
+
| ?
+
| Wiki: August 5, 2018
+
| Everyone
+
|-
+
| TWL_FIRM cmd-9 unchecked offset
+
| In [[1.0.0-0|1.0.0-X]]'s TWL_FIRM, cmds 8 and 9 were not stubbed (whereas in the corresponding NATIVE_FIRM, they were).
+
Command 8 does the Process9 initialisation for NTR carts if an NTR cart is inserted (NTR, not TWL, judged by chipid).
+
+
Command 9 takes (u32 offset_read, u32 offset_write, u32 offset_read_end), and basically just copies (offset_read_end - offset_read) bytes starting at (offset_read) of [NTR cart header in arm9mem, NTR secure area in fcram, TWL secure area in fcram], to 0x18001000 + offset_write + offset_read.
+
+
offset_write is not checked at all, thus this leads to ARM9 code execution as long as any NTR cart, including flashcarts that would normally be blocked by TWL_FIRM, is inserted.
+
+
In [[2.0.0-2|2.0.0-X]] TWL_FIRM, those commands were stubbed out.
+
| ARM9 code execution
+
| [[2.0.0-2|2.0.0-X]]
+
| [[2.0.0-2|2.0.0-X]]
+
| January 2018
+
| Wiki: August 5, 2018
+
| [[User:Riley|Riley]]
|-
|-
| FAT FS code null-deref
| FAT FS code null-deref