Executive brief
Samsung KNOX 1.0, a security platform for mobile devices, uses a flawed method for generating encryption keys to protect stored data. An attacker with local access to the device can exploit this weakness to bypass encryption and access sensitive files, such as application data and SD card contents. This vulnerability effectively allows unauthorized access to private information that the user believes is securely encrypted.
Technical details
Samsung KNOX 1.0 utilizes a weak eCryptFS key generation algorithm that XORs a 32-byte TIMA key with a space-padded user password before Base64 encoding the result. Due to a logic error where the Base64 string is truncated to 32 bytes, only the first 24 bytes of the XORed sequence contribute to the final key. Because passwords shorter than 8 characters result in identical padding for the first 24 bytes, the encryption key remains static regardless of the password chosen, or requires minimal brute-forcing for slightly longer passwords. An attacker with local root or system-level access can retrieve the TIMA key via the ITimaService and decrypt the container data. The issue was addressed in KNOX 2.3.0 by implementing a more robust key generation scheme.
Affected products
- Samsung KNOX 1.0.0
Timeline
- 2015-12-09: disclosed: Vendor contacted by researchers
- 2016-01-16: advisory: Public disclosure via Bugtraq mailing list
- 2017-01-27: advisory: NVD publication date