Due to some data types not being natively representable for the available storage options, sharedpreferencesandroid serializes and deserializes special string prefixes to store these unrepresentable data types. This allows arbitrary classes to be deserialized leading to arbitrary code execution.
As a result, Files containing the preferences can be overwritten with a malicious one with a deserialization payload that triggers as soon as the data is loaded from the disk.
2.3.4
Update to the latest version of sharedpreferencesandroid that contains the changes to address this vulnerability.
TBD
See our community page to find ways to contact the team.
Thank you so much to Oskar Zeino-Mahmalat from sonarsource for finding and reporting this issue!
{ "nvd_published_at": null, "cwe_ids": [ "CWE-502" ], "severity": "LOW", "github_reviewed": true, "github_reviewed_at": "2024-12-06T21:24:30Z" }