{"id":"CVE-2026-110596","title":"quirc through 1.2 contains an excessive-iteration vulnerability in find_alignment_pattern() in lib/identify.c that allows attackers to hang quirc_end() with a crafted image","summary":"quirc through 1.2 contains an excessive-iteration vulnerability in find_alignment_pattern() in lib/identify.c that allows attackers to hang quirc_end() with a crafted image. Attackers can arrange three finder patterns producing a near-de…","severity":"medium","cvss":5.5,"cvssVector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H","cwe":["CWE-834"],"published":"2026-10-14","updated":"2026-10-14","sourceUpdated":"2026-10-14T15:17:10.797","source":"NVD","sourceUrl":"https://nvd.nist.gov/vuln/detail/CVE-2026-110596","references":[{"url":"https://github.com/dlbeer/quirc/blob/542848dd6b9b0eaa9587bbf25b9bc67bd8a71fca/lib/identify.c#L578-L636","label":"disclosure@vulncheck.com"},{"url":"https://github.com/dlbeer/quirc/issues/162","label":"disclosure@vulncheck.com"},{"url":"https://github.com/dlbeer/quirc/pull/159","label":"disclosure@vulncheck.com"},{"url":"https://hackmd.io/@haind-pwn/quirc-alignment-pattern-infinite-loop-dos","label":"disclosure@vulncheck.com"},{"url":"https://www.vulncheck.com/advisories/quirc-through-1.2-denial-of-service-via-find-alignment-pattern-spiral-search","label":"disclosure@vulncheck.com"}],"tags":["nvd"],"ingestedAt":"2026-10-14T15:36:14.000Z","slug":"CVE-2026-110596","body":"## Overview\n\nquirc through 1.2 contains an excessive-iteration vulnerability in find_alignment_pattern() in lib/identify.c that allows attackers to hang quirc_end() with a crafted image. Attackers can arrange three finder patterns producing a near-degenerate perspective transform, causing billions of region_code() iterations that exhaust CPU in applications decoding attacker-supplied QR images.\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.","depth":"sunlit","depthScore":30,"depthScoreParts":{"impact":30.3,"likelihood":0,"exploitation":0,"ransomware":0},"changes":[]}