Infinite loop in asciidoctor - CVE-2018-18385

 

Infinite loop in asciidoctor - CVE-2018-18385

Published: October 16, 2018 / Updated: July 17, 2020


Vulnerability identifier: #VU31189
CSH Severity: Medium
CVSS v4.0: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:U/U:Green
CVE-ID: CVE-2018-18385
CWE-ID: CWE-835
Exploitation vector: Remote access
Exploit availability: No public exploit available
Vendor: asciidoctor
Affected software:
asciidoctor

Detailed vulnerability description

The vulnerability allows a remote non-authenticated attacker to perform a denial of service (DoS) attack.

Asciidoctor in versions < 1.5.8 allows remote attackers to cause a denial of service (infinite loop). The loop was caused by the fact that Parser.next_block was not exhausting all the lines in the reader as the while loop expected it would. This was happening because the regular expression that detects any list was not agreeing with the regular expression that detects a specific list type. So the line kept getting pushed back onto the reader, hence causing the loop.


How to mitigate CVE-2018-18385

Install update from vendor's website.

Sources