GitHub Advisoryadvisory · RubyGems

GHSA-qc9p-mjxm-j2wj Asciidoctor Infinite Loop vulnerability

HIGH Published 2022-05-13 Modified 2023-01-24 Official page ↗
Aliases
CVE-2018-18385
Ecosystem
RubyGems
Packages
asciidoctor
Severity
High
CVSS vector
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weaknesses
CWE-835
Reviewed
2023-01-24

Affected packages

• RubyGems asciidoctor: < 1.5.8 → fixed in 1.5.8

Description

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.

Related

Alias · CVE (1)

  • CVE-2018-18385 Asciidoctor in versions < 1.5.8 allows remote attackers to cause a denial of service (infinite loop). vulnerability

Weakness · CWE (1)

  • CWE-835 Loop with Unreachable Exit Condition weakness

References