CVE-2018-18385

rubygem-asciidoctor: Infinite loop in the #next_block method

Published Oct 16, 2018 CVSS 3.0 · 7.5 High EPSS 2.2% KEV · Not listed
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.

Remediation

No solution or workaround provided in the CVE record

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
EUVD EUVD EUVD-2022-4946 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.
Github GHSA Github GHSA GHSA-qc9p-mjxm-j2wj Asciidoctor Infinite Loop vulnerability
History

No history.

Weaknesses

Sources

Status
PUBLISHED
Assigner
mitre
Published
Updated
Aug 5, 2024, 11:08 AM
Reserved
Oct 16, 2018, 12:00 AM
Status
Modified
Published
Oct 16, 2018, 4:50 PM
Modified
Jun 17, 2026, 1:47 AM
Severity
Moderate
Public date
Sep 26, 2018, 12:00 AM