Skip to content
OpenAdvisories
Critical · 9.1 Public exploit CVE-2025-27407 EUVD-2025-7224GHSA-q92j-grw3-h492

Remote code execution when loading a crafted GraphQL schema

Published Mar 12, 2025 · Updated Nov 3, 2025 · Assigned by GitHub_M

Description

graphql-ruby is a Ruby implementation of GraphQL. Starting in version 1.11.5 and prior to versions 1.11.8, 1.12.25, 1.13.24, 2.0.32, 2.1.14, 2.2.17, and 2.3.21, loading a malicious schema definition in `GraphQL::Schema.from_introspection` (or `GraphQL::Schema::Loader.load`) can result in remote code execution. Any system which loads a schema by JSON from an untrusted source is vulnerable, including those that use GraphQL::Client to load external schemas via GraphQL introspection. Versions 1.11.8, 1.12.25, 1.13.24, 2.0.32, 2.1.14, 2.2.17, and 2.3.21 contain a patch for the issue.

Affected products

VendorProductAffectedFixed
rmosolgo graphql-ruby >= 1.11.5, < 1.11.8, >= 1.12.0, < 1.12.25, >= 1.13.0, < 1.13.24, >= 2.0.0, < 2.0.32, >= 2.1.0, < 2.1.14, >= 2.2.0, < 2.2.17, >= 2.3.0, < 2.3.21 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 ruby-graphql 2.2.17-1 —
Debian 13 ruby-graphql 2.2.17-1 —
Debian 12 ruby-graphql No fix yet —
Debian 11 ruby-graphql 1.11.12-0+deb11u1 DLA-4263-1
ReleasePackageFixed inAdvisory
Ubuntu 26.04 LTS ruby-graphql No fix yet —
Ubuntu 25.10 ruby-graphql No fix yet —
Ubuntu 24.04 LTS ruby-graphql No fix yet —
Ubuntu 22.04 LTS ruby-graphql No fix yet —
Ubuntu 20.04 LTS ruby-graphql No fix yet —
ReleasePackageFixed inAdvisory
Red Hat Satellite Capsule 6 python-django +1 4.2.19-1.el9pc RHSA-2025:4576
Red Hat Satellite Capsule 6 python-jinja2 +1 3.1.5-1.el8pc RHSA-2025:4576, RHSA-2025:3491
Red Hat Satellite Capsule 6 rubygem-rack 2.2.13-1.el8sat RHSA-2025:4576, RHSA-2025:3492, RHSA-2025:3491
Red Hat Satellite 6 python-django +1 4.2.19-1.el9pc RHSA-2025:4576
Red Hat Satellite 6 python-jinja2 +1 3.1.5-1.el8pc RHSA-2025:4576, RHSA-2025:3491
Red Hat Satellite 6 rubygem-graphql 1.13.24-1.el8sat RHSA-2025:4576, RHSA-2025:3492, RHSA-2025:3491
Red Hat Satellite 6 rubygem-rack 2.2.13-1.el8sat RHSA-2025:4576, RHSA-2025:3492, RHSA-2025:3491

Public exploits

Exploit or proof-of-concept code for this vulnerability is publicly available, which lowers the bar for attackers. Treat it as a reason to patch sooner.

Third-party code, not reviewed by us. Public PoCs are sometimes fake or contain malware. Read the code first and run it only in an isolated lab, against systems you are authorised to test.

GitHub 1 repository

Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.

Affected packages

EcosystemPackageAffectedFixedRecord
RubyGems graphql >= 2.4.0, < 2.4.13 2.4.13 GHSA-q92j-grw3-h492
RubyGems graphql >= 2.3.0, < 2.3.21 2.3.21 GHSA-q92j-grw3-h492
RubyGems graphql >= 2.2.0, < 2.2.17 2.2.17 GHSA-q92j-grw3-h492
RubyGems graphql >= 2.1.0, < 2.1.15 2.1.15 GHSA-q92j-grw3-h492
RubyGems graphql >= 2.0.0, < 2.0.32 2.0.32 GHSA-q92j-grw3-h492
RubyGems graphql >= 1.13.0, < 1.13.24 1.13.24 GHSA-q92j-grw3-h492
RubyGems graphql >= 1.12.0, < 1.12.25 1.12.25 GHSA-q92j-grw3-h492
RubyGems graphql >= 1.11.5, < 1.11.11 1.11.11 GHSA-q92j-grw3-h492

Advisories 8

References