CVE-2021-41098 Improper Restriction of XML External Entity Reference (XXE) in Nokogiri on JRuby

High 7.5 Published Updated

An attacker can exploit an XML External Entity vulnerability in Nokogiri on JRuby to read files or cause denial of service.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2021-41098?

CVE-2021-41098 is a high-severity vulnerability in sparklemotion nokogiri, published on 27 Sep 2021. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

Nokogiri is a Rubygem providing HTML, XML, SAX, and Reader parsers with XPath and CSS selector support. In Nokogiri v1.12.4 and earlier, on JRuby only, the SAX parser resolves external entities by default. Users of Nokogiri on JRuby who parse untrusted documents using any of these classes are affected: Nokogiri::XML::SAX::Parse, Nokogiri::HTML4::SAX::Parser or its alias Nokogiri::HTML::SAX::Parser, Nokogiri::XML::SAX::PushParser, and Nokogiri::HTML4::SAX::PushParser or its alias Nokogiri::HTML::SAX::PushParser. JRuby users should upgrade to Nokogiri v1.12.5 or later to receive a patch for this issue. There are no workarounds available for v1.12.4 or earlier. CRuby users are not affected.

Weakness: CWE-611

Which versions are affected by CVE-2021-41098?

2 open source packages ship an affected version, including nokogiri. It affects 1 product.

PackageAffectedFixed in
nokogiri RubyGemsAll versions1.12.5
nokogiri RubyGemsAll versions1.12.5
Linux distribution packages (1)
rubygem-nokogiri openSUSE:TumbleweedAll versions1.12.5-1.1

Products include Nokogiri Nokogiri.

How do I fix CVE-2021-41098?

Upgrade nokogiri to 1.12.5 or later.

Is CVE-2021-41098 being exploited?

There is no known exploitation of CVE-2021-41098 in the wild and no public exploit code.

Sources

Also known as GHSA-2rr5-8q37-2w7h, OESA-2021-1396, openSUSE-SU-2024:11577-1.

Is CVE-2021-41098 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free