Vulnerabilities > CVE-2017-3200 - Deserialization of Untrusted Data vulnerability in Graniteds 3.1.1

047910
CVSS 6.8 - MEDIUM
Attack vector
NETWORK
Attack complexity
MEDIUM
Privileges required
NONE
Confidentiality impact
PARTIAL
Integrity impact
PARTIAL
Availability impact
PARTIAL

Summary

The Java implementation of AMF3 deserializers used in GraniteDS, version 3.1.1.G, may allow instantiation of arbitrary classes via their public parameter-less constructor and subsequently call arbitrary Java Beans setter methods. The ability to exploit this vulnerability depends on the availability of classes in the class path that make use of deserialization. A remote attacker with the ability to spoof or control information may be able to send serialized Java objects with pre-set properties that result in arbitrary code execution when deserialized.

Vulnerable Configurations

Part Description Count
Application
Graniteds
1

Common Weakness Enumeration (CWE)

Seebug

bulletinFamilyexploit
descriptionDetails reference: https://codewhitesec.blogspot.kr/2017/04/amf.html Some Java implementations of AMF3 deserializers may allow instantiation of arbitrary classes via their public parameter-less constructor and subsequently call arbitrary Java Beans setter methods. The ability to exploit this vulnerability depends on the availability of classes in the class path that make use of deserialization. A remote attacker with the ability to spoof or control information may be able to send serialized Java objects with pre-set properties that result in arbitrary code execution when deserialized. The reporter has identified the following products and versions as being affected, and CVE IDS have been assigned as follows: \- Flamingo amf-serializer by Exadel, version 2.2.0 - CVE-2017-3202 \- Flex BlazeDS , versions 4.6.0.23207 and 4.7.2 - CVE-2017-5641 \- GraniteDS, version 3.1.1. GA - CVE-2017-3200 Products using these libraries may also be impacted.
idSSV:92914
last seen2017-11-19
modified2017-04-06
published2017-04-06
reporterRoot
titleAMF3 Java implementations Improper Control of Dynamically-Managed Code Resources