Description
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-degenerate perspective transform, causing billions of region_code() iterations that exhaust CPU in applications decoding attacker-supplied QR images.
Metrics
CVSS 3.1 5.5/10
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:HWeakness enumeration
Affected software
| Vendor | Product | Versions |
|---|---|---|
| dlbeer | quirc | <= 1.2 |
References
- https://github.com/dlbeer/quirc/blob/542848dd6b9b0eaa9587bbf25b9bc67bd8a71fca/lib/identify.c#L578-L636
- https://github.com/dlbeer/quirc/issues/162
- https://github.com/dlbeer/quirc/pull/159
- https://hackmd.io/@haind-pwn/quirc-alignment-pattern-infinite-loop-dos
- https://www.vulncheck.com/advisories/quirc-through-1.2-denial-of-service-via-find-alignment-pattern-spiral-search
Timeline
- Published
- Oct 14, 2026
- Last modified
- Oct 20, 2026
- NVD status
- Deferred