CVE Vulnerabilities

CVE-2017-1000148

Deserialization of Untrusted Data

Published: Nov 03, 2017 | Modified: Apr 20, 2025
CVSS 3.x
8.8
HIGH
Source:
NVD
CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS 2.x
6.5 MEDIUM
AV:N/AC:L/Au:S/C:P/I:P/A:P
RedHat/V2
RedHat/V3
Ubuntu

Mahara 15.04 before 15.04.8 and 15.10 before 15.10.4 and 16.04 before 16.04.2 are vulnerable to PHP code execution as Mahara would pass portions of the XML through the PHP unserialize() function when importing a skin from an XML file.

Weakness

The product deserializes untrusted data without sufficiently ensuring that the resulting data will be valid.

Affected Software

Name Vendor Start Version End Version
Mahara Mahara 15.04-rc1 (including) 15.04-rc1 (including)
Mahara Mahara 15.04-rc2 (including) 15.04-rc2 (including)
Mahara Mahara 15.04.0 (including) 15.04.0 (including)
Mahara Mahara 15.04.1 (including) 15.04.1 (including)
Mahara Mahara 15.04.2 (including) 15.04.2 (including)
Mahara Mahara 15.04.3 (including) 15.04.3 (including)
Mahara Mahara 15.04.4 (including) 15.04.4 (including)
Mahara Mahara 15.04.5 (including) 15.04.5 (including)
Mahara Mahara 15.04.6 (including) 15.04.6 (including)
Mahara Mahara 15.04.7 (including) 15.04.7 (including)

Potential Mitigations

  • Make fields transient to protect them from deserialization.
  • An attempt to serialize and then deserialize a class containing transient fields will result in NULLs where the transient data should be. This is an excellent way to prevent time, environment-based, or sensitive variables from being carried over and used improperly.

References