Loop with Unreachable Exit Condition ('Infinite Loop') Affecting rubygem-asciidoctor package, versions *


Severity

Recommended
low

Based on Red Hat Enterprise Linux security rating.

Threat Intelligence

EPSS
0.21% (59th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-RHEL7-RUBYGEMASCIIDOCTOR-4458074
  • published26 Mar 2023
  • disclosed26 Sept 2018

Introduced: 26 Sep 2018

CVE-2018-18385  (opens in a new tab)
CWE-835  (opens in a new tab)

How to fix?

There is no fixed version for RHEL:7 rubygem-asciidoctor.

NVD Description

Note: Versions mentioned in the description apply only to the upstream rubygem-asciidoctor package and not the rubygem-asciidoctor package as distributed by RHEL. See How to fix? for RHEL:7 relevant fixed versions and status.

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.