{"id":"CVE-2026-110592","state":"PUBLISHED","title":"BottleCRM 0.30 through 1.14.5 HTML Injection via Custom Invoice PDF Template","description":"BottleCRM 0.30 through 1.14.5 contains an HTML injection vulnerability in render_invoice_template() that allows authenticated organization members to inject markup into custom-template invoice PDFs. Attackers can place HTML and CSS in notes, terms, client name or address fields to overlay totals, payee and payment instructions in PDFs served via download, public links and emails.","publishedAt":"2026-10-14T14:16:37.199Z","updatedAt":"2026-10-16T11:38:58.882Z","severity":{"score":5.1,"label":"Medium","version":"4.0","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N","source":"VulnCheck"},"assigner":"VulnCheck","products":["MicroPyramid BottleCRM"],"affected":[{"vendor":"MicroPyramid","product":"BottleCRM","packageURL":"pkg:pypi/django-crm","defaultStatus":"unaffected","versions":[{"version":"0.30","status":"affected","lessThanOrEqual":"1.14.5","versionType":"custom"}],"collectionURL":"https://pypi.org","repo":"https://github.com/Django-CRM/Django-CRM"}],"references":["https://github.com/Django-CRM/Django-CRM/issues/825","https://github.com/Django-CRM/Django-CRM/blob/v1.14.5/backend/invoices/pdf.py#L660-L712","https://github.com/aaronamran/CVE-Disclosures/tree/main/CVE-2026/CVE-2026-110592","https://www.vulncheck.com/advisories/bottlecrm-0.30-through-1.14.5-html-injection-via-custom-invoice-pdf-template"],"weaknesses":["CWE-116"],"ingestedAt":"2026-10-29T20:10:33.477Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/110xxx/CVE-2026-110592.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-110592","state":"PUBLISHED","datePublished":"2026-10-14T14:16:37.199Z","dateUpdated":"2026-10-16T11:38:58.882Z","assignerShortName":"VulnCheck","assignerOrgId":"83251b91-4cc7-4094-a5c7-464a1b83ea10","dateReserved":"2026-10-14T13:07:17.607Z"},"containers":{"cna":{"title":"BottleCRM 0.30 through 1.14.5 HTML Injection via Custom Invoice PDF Template","descriptions":[{"lang":"en","value":"BottleCRM 0.30 through 1.14.5 contains an HTML injection vulnerability in render_invoice_template() that allows authenticated organization members to inject markup into custom-template invoice PDFs. Attackers can place HTML and CSS in notes, terms, client name or address fields to overlay totals, payee and payment instructions in PDFs served via download, public links and emails."}],"affected":[{"vendor":"MicroPyramid","product":"BottleCRM","packageURL":"pkg:pypi/django-crm","defaultStatus":"unaffected","versions":[{"version":"0.30","status":"affected","lessThanOrEqual":"1.14.5","versionType":"custom"}],"collectionURL":"https://pypi.org","repo":"https://github.com/Django-CRM/Django-CRM"}],"references":[{"url":"https://github.com/Django-CRM/Django-CRM/issues/825","tags":["issue-tracking"]},{"url":"https://github.com/Django-CRM/Django-CRM/blob/v1.14.5/backend/invoices/pdf.py#L660-L712","tags":["technical-description"]},{"url":"https://github.com/aaronamran/CVE-Disclosures/tree/main/CVE-2026/CVE-2026-110592","name":"Researcher Disclosure","tags":["technical-description","exploit"]},{"url":"https://www.vulncheck.com/advisories/bottlecrm-0.30-through-1.14.5-html-injection-via-custom-invoice-pdf-template","name":"VulnCheck Advisory: BottleCRM 0.30 through 1.14.5 HTML Injection via Custom Invoice PDF Template","tags":["third-party-advisory"]}],"metrics":[{"format":"CVSS","cvssV4_0":{"version":"4.0","vectorString":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N","attackVector":"NETWORK","attackComplexity":"LOW","attackRequirements":"NONE","privilegesRequired":"LOW","userInteraction":"PASSIVE","vulnConfidentialityImpact":"NONE","vulnIntegrityImpact":"LOW","vulnAvailabilityImpact":"NONE","subConfidentialityImpact":"NONE","subIntegrityImpact":"NONE","subAvailabilityImpact":"NONE","baseScore":5.1,"baseSeverity":"MEDIUM"}},{"format":"CVSS","cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:L/A:N","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"LOW","userInteraction":"REQUIRED","scope":"UNCHANGED","confidentialityImpact":"NONE","integrityImpact":"LOW","availabilityImpact":"NONE","baseScore":3.5,"baseSeverity":"LOW"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-116","lang":"en","description":"Improper Encoding or Escaping of Output","type":"CWE"}]}],"providerMetadata":{"shortName":"VulnCheck","orgId":"83251b91-4cc7-4094-a5c7-464a1b83ea10","dateUpdated":"2026-10-16T11:38:58.882Z"},"datePublic":"2026-10-14T00:00:00.000Z","cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:a:micropyramid:django_crm:*:*:*:*:*:*:*:*","versionStartIncluding":"0.30","versionEndIncluding":"1.14.5"}]}]}],"credits":[{"lang":"en","value":"Aaron Amran Bin Amiruddin (@aaronamran)","type":"finder"}],"x_generator":{"engine":"vulncheck-endgame"}},"adp":[{"title":"CISA ADP Vulnrichment","references":[{"url":"https://github.com/Django-CRM/Django-CRM/issues/825","tags":["exploit"]}],"metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-10-14T17:49:14.623415Z","id":"CVE-2026-110592","options":[{"Exploitation":"poc"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-10-14T17:49:40.091Z"}}]}}}