Skip to content

Add vpatch-CVE-2023-38646 rule and test#1759

Open
crowdsec-automation wants to merge 4 commits intomasterfrom
1775654540-vpatch-CVE-2023-38646
Open

Add vpatch-CVE-2023-38646 rule and test#1759
crowdsec-automation wants to merge 4 commits intomasterfrom
1775654540-vpatch-CVE-2023-38646

Conversation

@crowdsec-automation
Copy link
Copy Markdown
Contributor

This rule targets the Metabase pre-auth RCE vulnerability (CVE-2023-38646) by detecting POST requests to the /api/setup/validate endpoint with a malicious H2 database subname parameter. The attack leverages the TRACE_LEVEL_SYSTEM_OUT=3;INIT=RUNSCRIPT sequence to trigger code execution via the H2 JDBC driver.

  • The first rule condition matches the exact endpoint /api/setup/validate using a case-insensitive comparison.
  • The second rule condition inspects the raw request body for the lowercased string trace_level_system_out=3;init=runscript, which is a reliable indicator of the exploit attempt, regardless of JSON structure or whitespace.
  • The use of RAW_BODY ensures detection even if the JSON structure varies or is nested.
  • The labels section includes the correct CVE, ATT&CK, and CWE references, and the label follows the required format.

All value: fields are lowercase, lowercase transform is applied, and contains is used for pattern matching to minimize false positives and negatives. No regex or capital letters are present in match values.

@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 8, 2026

Hello @crowdsec-automation and thank you for your contribution!

❗ It seems that the following scenarios are not part of the 'crowdsecurity/appsec-virtual-patching' collection:

🔴 crowdsecurity/vpatch-CVE-2023-38646 🔴

@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 8, 2026

Hello @crowdsec-automation and thank you for your contribution!

I'm a bot that helps maintainers to validate scenarios and ensure they include all the required information.
I've found some errors in your scenarios, please fix them and re-submit your PR, or ask for help if you need it.

The following items have errors:

crowdsecurity/crs-exclusion-plugin-cpanel:

  • labels not found

crowdsecurity/crs-exclusion-plugin-dokuwiki:

  • labels not found

crowdsecurity/crs-exclusion-plugin-drupal:

  • labels not found

crowdsecurity/crs-exclusion-plugin-nextcloud:

  • labels not found

crowdsecurity/crs-exclusion-plugin-phpbb:

  • labels not found

crowdsecurity/crs-exclusion-plugin-phpmyadmin:

  • labels not found

crowdsecurity/crs-exclusion-plugin-wordpress:

  • labels not found

crowdsecurity/crs-exclusion-plugin-xenforo:

  • labels not found

Mitre ATT&CK

Information about mitre attack can be found here.
As an example, some common mitre attack techniques:

  • T1110 for bruteforce attacks
  • T1595 and T1190 for exploitation of public vulnerabilities
  • T1595 for generic scanning of exposed applications

Expected format is (where XXXX is the technique ID):

labels:
  classification:
    - attack.TXXXX

CVEs

If your scenario covers a specific CVE (Common Vulnerabilities and Exposures), please add it.

Expected format is (where CVE-XXX-XXX is the CVE ID):

labels:
  classification:
    - cve.CVE-XXX-XXX

Behaviors

Please identify the behavior(s) your scenario is targeting. You can find the list of available behaviors here.

Expected format is (where <behavior> is the behavior you want to target):

labels:
  behavior: <behavior>

See the labels documentation for more information.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants