Difference between revisions of "8.1.0"
(→Secure Monitor: full diff) |
|||
Line 82: | Line 82: | ||
Updated titles: | Updated titles: | ||
* Sysmodules: | * Sysmodules: | ||
− | ** settings | + | ** settings Rebuild. |
− | ** bus | + | ** bus Identical codebin. |
− | ** bcat | + | ** bcat .text updated. |
− | ** hid | + | ** hid .text updated. |
− | ** audio | + | ** audio Identical codebin. |
− | ** wlan | + | ** wlan .text updated. |
− | ** nvservices | + | ** nvservices Only GNU build hash was updated. |
− | ** nvnflinger | + | ** nvnflinger .text updated. |
− | ** account | + | ** account .text updated. |
− | ** ns | + | ** ns .text updated. |
− | ** am | + | ** am .text updated. |
− | ** ssl | + | ** ssl Rebuild. |
− | ** vi | + | ** vi .text updated. |
− | ** es | + | ** es .text updated. |
− | ** fatal | + | ** fatal .text updated. |
− | ** creport | + | ** creport Identical codebin. |
− | ** ro | + | ** ro Identical codebin. |
− | ** grc | + | ** grc .text updated. |
* ErrorMessage, BrowserDll, [[System_Version_Title]], FIRM, qlaunch, web-applets, and RebootlessSystemUpdateVersion. | * ErrorMessage, BrowserDll, [[System_Version_Title]], FIRM, qlaunch, web-applets, and RebootlessSystemUpdateVersion. | ||
Revision as of 19:27, 18 June 2019
The Switch 8.1.0 system update was released on June 17, 2019. This Switch update was released for the following regions: ALL.
Security flaws fixed: yes.
Change-log
Official ALL change-log:
- General system stability improvements to enhance the user's experience.
FIRM
All files in RomFS were updated.
Package1ldr
package1ldr was updated. The TSEC secureboot firmware was updated.
NX_BOOTLOADER
NX bootloader was updated.
<check back later for diff>
Secure Monitor
The Secure Monitor was updated.
- The SE key read disable function no longer writes zero to AES_KEY_READ_DISABLE/RSA_KEY_READ_DISABLE.
- Functions for locking/checking PMC secure scratch now have additional bitmasks 0x40/0x80 for locking more secure scratch registers.
- NVDEC/TSECB access to the kernel carveout was removed.
- On suspend (SC7 Entry), SWR_USBD_RST is now checked, and AHB arbitration disable is now checked to be COP, ARC, USB, USB2.
- This further mitigates against Deja Vu.
- TZ/SE context save logic has been changed.
- The context save function now first generates 16 random bytes, and securely saves them to scratch (using the usual write-writelock-check-readlock-checklocked pattern).
- It then generates a random aes-256 key, and derives an actual encryption/MAC key by decrypting the random data with that key.
- Previously, it generated a random aes-256 key and used it directly.
- This prevents attacks that might coerce the usage of a specific aes-256 key instead of a random one.
- Calls into the check scratch locked/lock scratch function which previously passed one bitmask at a time now pass multiple
- Accordingly, the lock/check locked functions now support multiple bitmasks instead of single bitmasks at a time.
- The function that initializes the SE/derives keys now sets flag 0x100 on AES keyslots 8-15, and RSA keyslots 0-1.
Kernel
Kernel was not changed.
Warmboot
- The firmware revision magic was changed from 0x129 to 0x14A.
- Security Engine state validation was changed (first six keyslots now expected to read zeroes instead of FFs).
- <check back for more diffs later>
FIRM Sysmodules
FIRM sysmodules were updated. Specific diffs available below:
Boot
Only GNU build hash was updated.
FS
Only GNU build hash was updated.
Loader
- ldr:pm->CreateProcess() now performs additional validation on the NPDM header.
- When the title id is one of certain hardcoded titles, Loader now validates that the version field at NPDM header is non-zero. This prevents selectively downgrading those titles to versions vulnerable to known exploits.
- The titles checked are:
- settings
- bus
- audio
- nvservices
- ns
- ssl
- es
- creport
- ro
NCM
Only GNU build hash was updated.
PM
Only GNU build hash was updated.
SM
SM was not updated.
SPL
SPL was not updated.
System Titles
Updated titles:
- Sysmodules:
- settings Rebuild.
- bus Identical codebin.
- bcat .text updated.
- hid .text updated.
- audio Identical codebin.
- wlan .text updated.
- nvservices Only GNU build hash was updated.
- nvnflinger .text updated.
- account .text updated.
- ns .text updated.
- am .text updated.
- ssl Rebuild.
- vi .text updated.
- es .text updated.
- fatal .text updated.
- creport Identical codebin.
- ro Identical codebin.
- grc .text updated.
- ErrorMessage, BrowserDll, System_Version_Title, FIRM, qlaunch, web-applets, and RebootlessSystemUpdateVersion.
No changes with IPC service commands.
Titles' RomFS changes, besides System_Version_Title:
- ErrorMessage: Error 2124-4517 was updated with actual strings etc. "/2181/4017/common" and "/DatabaseInfo" were updated.
- BrowserDll: the NROs and buildinfo were updated.
- RebootlessSystemUpdateVersion: The "/version" file was updated.
- qlaunch: "/lyt/Notification.szs" was updated.
- Web-applets: "/buildinfo/buildinfo.dat" and "/.nrr/netfront.nrr" were updated.
Keys
Keys were updated.
See Also
System update report(s):