Switch Userland Flaws: Difference between revisions

No edit summary
Line 1: Line 1:
This page lists vulnerabilities / exploits for Nintendo Switch applications and applets.
This page lists vulnerabilities / exploits for Nintendo Switch applications/applets and SDK.


== Browser userspace ==  
== Browser userspace ==  
Line 38: Line 38:
|  
|  
| Everyone
| Everyone
|}
== NintendoSDK ==
This section documents vulnerabilities for NSOs in NintendoSDK.
=== nnSdk ===
This section documents vulnerabilities for nnSdk (sdknso).
{| class="wikitable" border="1"
|-
!  Summary
!  Description
!  Successful exploitation result
!  Fixed in SDK [[System_Versions|version]]
!  Last SDK version this flaw was checked for
!  Timeframe this was discovered
!  Public disclosure timeframe
!  Discovered by
|-
| [[HID_services|hidbus]] GetJoyPollingReceivedData buffer overflow
| hidbus GetJoyPollingReceivedData doesn't validate the u8 size used for memcpy, when copying the data to the output JoyPollingReceivedData. With 11.x, the size is now clamped to a maximum of 0x2C (regardless of polling-mode). Note that 0x2C is the data-size for JoyButtonOnlyPollingDataAccessor, the other polling-modes have a smaller size.
The hid-sysmodule code which writes data here does handle it properly: size is clamped to a max size, and the data-read uses a fixed-size anyway (hence there's no way to trigger this sdknso vuln with the hid-sysmodule tmem writing code).
This could only be exploited if one directly writes to the tmem when one has previously compromised hid-sysmodule, without using the normal tmem-writing func for this.
There are only a few [[HID_services#ExternalDevices|apps]] which use hidbus.
| Triggering a buffer overflow in an application which uses hidbus GetJoyPollingReceivedData, from a previously compromised hid-sysmodule.
| 11.x.0
| 11.4.0
| March 2020
| December 3, 2020
| [[User:Yellows8|yellows8]]
|}
|}