Loop with Unreachable Exit Condition ('Infinite Loop')
CVE-2024-44337
Summary
The package `github.com/gomarkdown/markdown` is a Go library for parsing Markdown text and rendering as HTML. Prior to pseudo version `v0.0.0-20240729232818-a2a9c4f`, which corresponds with commit `a2a9c4f76ef5a5c32108e36f7c47f8d310322252`, there was a logical problem in the "paragraph" function of the "parser/block.go" file, which allowed a remote attacker to cause a Denial of Service (DoS) condition by providing a "tailor-made" input that caused an infinite loop, causing the program to hang and consume resources indefinitely. Submit `a2a9c4f76ef5a5c32108e36f7c47f8d310322252` contains fixes to this problem.
- LOW
- LOCAL
- LOW
- UNCHANGED
- NONE
- NONE
- NONE
- LOW
CWE-835 - Loop with Unreachable Exit Condition
Loops with multiple exits and flags detract from the quality of an application. They tend to make control structures difficult to understand, and introduce the risk of non-termination and other structural problems. The vulnerability “loop with unreachable exit condition” enables attackers to exploit this flaw, leading to denial of service.
References
Advisory Timeline
- Published