---
id: CVE-2026-110594
title: >-
  BottleCRM 0.43 through 1.14.5 contains a regular expression denial of service
  vulnerability that allows authenticated organization administrators to block
  web workers via unbounded routing rule regex patterns
summary: >-
  BottleCRM 0.43 through 1.14.5 contains a regular expression denial of service
  vulnerability that allows authenticated organization administrators to block
  web workers via unbounded routing rule regex patterns. Attackers can create a
  rout…
severity: medium
cvss: 4.9
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:N/A:H'
cwe:
  - CWE-1333
vendor: MicroPyramid
product: BottleCRM
affected:
  - BottleCRM >= 0.43 <= 1.14.5
published: '2026-10-14'
updated: '2026-10-16'
sourceUpdated: '2026-10-16T12:16:32.757'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-110594'
references:
  - url: >-
      https://github.com/Django-CRM/Django-CRM/blob/v1.14.5/backend/cases/routing.py#L107-L114
    label: disclosure@vulncheck.com
  - url: 'https://github.com/Django-CRM/Django-CRM/issues/830'
    label: disclosure@vulncheck.com
  - url: >-
      https://github.com/aaronamran/CVE-Disclosures/tree/main/CVE-2026/CVE-2026-110594
    label: disclosure@vulncheck.com
  - url: >-
      https://www.vulncheck.com/advisories/bottlecrm-0.43-through-1.14.5-redos-via-case-routing-rule-regex
    label: disclosure@vulncheck.com
  - url: 'https://github.com/Django-CRM/Django-CRM/issues/830'
    label: 134c704f-9b21-4f2e-91b3-4a467353bcc0
tags:
  - nvd
  - cve.org
  - exploit-available
epss: 0.00644
epssPercentile: 0.50684
exploitAvailable: true
ssvc:
  exploitation: poc
  automatable: 'no'
  technicalImpact: partial
  timestamp: '2026-10-14T16:13:21.486834Z'
ingestedAt: '2026-10-14T15:36:14.000Z'
---

## Overview

BottleCRM 0.43 through 1.14.5 contains a regular expression denial of service vulnerability that allows authenticated organization administrators to block web workers via unbounded routing rule regex patterns. Attackers can create a routing rule with a catastrophically backtracking pattern evaluated by _match_condition() during case saves, exhausting workers shared across all tenants.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
