{
  "threat_severity" : "Critical",
  "public_date" : "2023-10-27T00:00:00Z",
  "bugzilla" : {
    "description" : "activemq-openwire: OpenWire Module: Unbounded deserialization causes ActiveMQ to be vulnerable to a remote code execution (RCE) attack",
    "id" : "2246645",
    "url" : "https://bugzilla.redhat.com/show_bug.cgi?id=2246645"
  },
  "cvss3" : {
    "cvss3_base_score" : "9.8",
    "cvss3_scoring_vector" : "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
    "status" : "verified"
  },
  "cwe" : "CWE-502",
  "details" : [ "The Java OpenWire protocol marshaller is vulnerable to Remote Code \nExecution. This vulnerability may allow a remote attacker with network \naccess to either a Java-based OpenWire broker or client to run arbitrary\nshell commands by manipulating serialized class types in the OpenWire \nprotocol to cause either the client or the broker (respectively) to \ninstantiate any class on the classpath.\nUsers are recommended to upgrade\nboth brokers and clients to version 5.15.16, 5.16.7, 5.17.6, or 5.18.3 \nwhich fixes this issue.", "A flaw was found in Apache ActiveMQ, specifically the OpenWire Module. This flaw may allow a remote malicious user to run arbitrary shell commands by manipulating serialized class types in the OpenWire protocol, causing the broker to instantiate any class on the classpath. This issue happens when OpenWire commands are unmarshalled, without validating the provided throwable class type, which could allow an attacker to jeopardize the entire server." ],
  "statement" : "If the openwire protocol IS NOT in use, system operators can disable the OpenWire protocol which removes most risk of this vulnerability being exploited. If OpenWire IS being used, see the Mitigations section for potential options to reduce your attack surface.\n* How to determine if an AMQ 7 system is affected:\nCheck in the broker.xml configuration file. Notice the presence of **OPENWIRE** in the following snippet which indicates a vulnerable configuration. \n~~~\n<acceptor name=\"artemis\">tcp://localhost:####?tcpSendBufferSize=1048576;tcpReceiveBufferSize=1048576;protocols=CORE,AMQP,STOMP,HORNETQ,MQTT,**OPENWIRE**;useEpoll=true;amqpCredits=1000;amqpLowCredits=300;anycastPrefix=jms.queue.;multicastPrefix=jms.topic.</acceptor>\n~~~\n* How to determine if an AMQ 7 for OpenShift system is affected:\nGet the `ActivemqArtemis` CR yaml and review the acceptor protocol and see if the following entry is present: `(default, all, Openwire)` which indicates the system is vulnerable.\n* How to determine if a Fuse 6 system is affected:\nBy default Fuse 6 includes and enables ActiveMQ Broker. So unless this has been manually disabled, every Fuse 6 system is affected by this vulnerability.\n* How to determine if a Fuse 7 system is affected:\nFuse 7 itself is not vulnerable. By default it ships the vulnerable activemq-client jar, however it does not instantiate an ActiveMQ broker. If this feature (connect to an external ActiveMQ Broker) were manually configured, it would make it vulnerable.\n* How to determine if a Fuse Online system is affected:\nSyndesis,  an Integration Platform As A Service part of Fuse Online which runs on top of Openshift, does not use activemq code. Also, it doesn't instantiate a broker with Openwire protocol enabled, which makes it not vulnerable to this CVE.",
  "affected_release" : [ {
    "product_name" : "AMQ 6.3 openshift container image",
    "release_date" : "2023-11-09T00:00:00Z",
    "advisory" : "RHSA-2023:6877",
    "cpe" : "cpe:/a:redhat:jboss_amq:6.3"
  }, {
    "product_name" : "AMQ Broker 7.10.5",
    "release_date" : "2023-11-09T00:00:00Z",
    "advisory" : "RHSA-2023:6878",
    "cpe" : "cpe:/a:redhat:amq_broker:7.10"
  }, {
    "product_name" : "AMQ Broker 7.11.4",
    "release_date" : "2023-11-09T00:00:00Z",
    "advisory" : "RHSA-2023:6879",
    "cpe" : "cpe:/a:redhat:amq_broker:7.11",
    "package" : "activemq-openwire"
  }, {
    "product_name" : "Red Hat Fuse 7.12.1",
    "release_date" : "2023-11-15T00:00:00Z",
    "advisory" : "RHSA-2023:7247",
    "cpe" : "cpe:/a:redhat:jboss_fuse:7",
    "package" : "activemq-openwire"
  }, {
    "product_name" : "Red Hat Fuse/AMQ 6.3.20",
    "release_date" : "2023-11-09T00:00:00Z",
    "advisory" : "RHSA-2023:6849",
    "cpe" : "cpe:/a:redhat:jboss_fuse:6.3",
    "package" : "activemq-openwire"
  }, {
    "product_name" : "RHEL-7 based Middleware Containers",
    "release_date" : "2023-11-09T00:00:00Z",
    "advisory" : "RHSA-2023:6866",
    "cpe" : "cpe:/a:redhat:rhosemc:1.0::el7",
    "package" : "jboss-amq-6/amq63-openshift:1.4-50"
  } ],
  "package_state" : [ {
    "product_name" : "Red Hat JBoss Fuse Service Works 6",
    "fix_state" : "Out of support scope",
    "package_name" : "activemq-openwire",
    "cpe" : "cpe:/a:redhat:jboss_fuse_service_works:6"
  } ],
  "references" : [ "https://www.cve.org/CVERecord?id=CVE-2023-46604\nhttps://nvd.nist.gov/vuln/detail/CVE-2023-46604\nhttps://activemq.apache.org/security-advisories.data/CVE-2023-46604-announcement.txt\nhttps://lists.apache.org/thread/y1ztwb3gktny47mj9sdv2sbw49nkgsgp\nhttps://www.cisa.gov/known-exploited-vulnerabilities-catalog" ],
  "csaw" : true,
  "name" : "CVE-2023-46604",
  "mitigation" : {
    "value" : "In affected systems, it may be possible to mitigate some of the risks from this vulnerability. However this mitigation cannot eliminate all risks; the only complete resolution is to apply software updates. On systems where the broker is exposed to the public network, use firewall rules to restrict the transport ports and enable SSL to protect this \"Transport\".",
    "lang" : "en:us"
  }
}