PHP2Shell: Read our blog on the critical RCE vulnerabilities affecting 70% of the Internet

CVE-2020-26247: 
Ruby vulnerability analysis and mitigation

Overview

Nokogiri, a Rubygem providing HTML, XML, SAX, and Reader parsers with XPath and CSS selector support, was found to contain an XXE vulnerability (CVE-2020-26247) in versions before 1.11.0.rc4. XML Schemas parsed by Nokogiri::XML::Schema were trusted by default, allowing external resources to be accessed over the network. This vulnerability was discovered and disclosed in December 2020, affecting all versions up to and including 1.11.0.rc3 (GitHub Advisory).

Technical details

The vulnerability stems from XML Schemas being trusted by default when parsed by Nokogiri::XML::Schema, which could potentially enable XXE (XML External Entity) or SSRF (Server-Side Request Forgery) attacks. This behavior contradicted Nokogiri's security policy of treating all input as untrusted by default. The issue was evaluated as Low Severity with a CVSS score of 2.6 (GitHub Advisory).

Impact

The vulnerability could allow external resources to be accessed over the network, potentially enabling XXE or SSRF attacks. This could lead to unauthorized access to internal resources, data exfiltration, or service disruption (GitHub Advisory, Debian Advisory).

Exploitability

The vulnerability was independently reported by Eric Thérond and Corin Langosch through HackerOne. While specific exploit details are not publicly available, the risk was assessed as Low Severity due to the specific conditions required for exploitation (GitHub Advisory).

Mitigation and workarounds

The vulnerability was fixed in Nokogiri version 1.11.0.rc4. Users should upgrade to this version or later. For those who need to maintain the previous behavior in v1.11.0.rc4 or later, they can pass an instance of Nokogiri::XML::ParseOptions with the NONET flag turned off to the Schema constructor, but this should only be done with trusted input (GitHub Advisory).

Community reactions

Multiple Linux distributions issued security advisories and patches for this vulnerability, including Debian and Red Hat. Debian classified it as a security update in their LTS announcement (Debian Advisory, Red Hat Advisory).

Additional resources


Source: This report was generated using AI

Related Ruby vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

GHSA-9h43-g84r-c93mHIGH7.4
  • Ruby logoRuby
  • doorkeeper-openid_connect
NoYesOct 21, 2026
GHSA-wgw9-qhqg-8hv5MEDIUM5.3
  • Ruby logoRuby
  • sanitize
NoYesOct 21, 2026
GHSA-pq4g-8rxf-4g29MEDIUM5.3
  • Ruby logoRuby
  • crass
NoYesOct 21, 2026
GHSA-c62j-746x-gfcrMEDIUM4.8
  • Ruby logoRuby
  • doorkeeper
NoYesOct 21, 2026
GHSA-c8r6-23w7-5q9pLOWN/A
  • Ruby logoRuby
  • doorkeeper
NoNoOct 21, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management