All vulnerabilities
CVE-2026-31233GHSA-r6hf-g5x6-7pv9PYSEC-2026-347

guardrails-ai: Guardrails AI contains a code injection vulnerability in its Hub package installation mechanism

n/a guardrails-aipipLibraries & packages
CVSS
9.8Critical
ExploitationNo known exploitationNot in CISA KEV, which does not prove it is unexploitedCISA KEV
Exploit odds (EPSS)0.64%Chance of exploitation activity in the next 30 days, higher than 50% of CVEs. Scored 27 Oct 2026FIRST EPSS
Fixed inNone listedNo source names a fixed version. Check the vendor advisory below
Published12 May 2026Updated 27 Oct 2026CVE List

What fixes it

No source in this snapshot names a fixed version. The vendor advisories under References are the place to check.

Description

Guardrails AI thru 0.6.7 contains a code injection vulnerability (CWE-94) in its Hub package installation mechanism. When installing validator packages via guardrails hub install, the system retrieves a manifest from the Guardrails Hub and dynamically executes a script specified in the post_install field. The script path is constructed from untrusted manifest data and executed without proper validation or sanitization, allowing remote code execution. An attacker who can publish malicious packages to the Hub can inject arbitrary code that will be executed on any system where a victim installs the malicious package.

Text from CVE List

Affected versions 53

  • guardrails-ai, pip<= 0.6.7GitHub
  • n/aaffected: n/aCVE List
  • guardrails-ai, PyPIfrom first release, through 0.6.7OSV
  • guardrails-ai, PyPI0.1.0OSV
  • guardrails-ai, PyPI0.1.0rc1OSV
  • guardrails-ai, PyPI0.1.0rc2OSV
  • guardrails-ai, PyPI0.1.0rc3OSV
  • guardrails-ai, PyPI0.1.1OSV
  • guardrails-ai, PyPI0.1.2OSV
  • guardrails-ai, PyPI0.1.3OSV
  • guardrails-ai, PyPI0.1.4OSV
  • guardrails-ai, PyPI0.1.5OSV
  • guardrails-ai, PyPI0.1.6OSV
  • guardrails-ai, PyPI0.1.7OSV
  • guardrails-ai, PyPI0.1.8OSV
  • guardrails-ai, PyPI0.1.9OSV
  • guardrails-ai, PyPI0.2.0OSV
  • guardrails-ai, PyPI0.2.0a1OSV
  • guardrails-ai, PyPI0.2.0a2OSV
  • guardrails-ai, PyPI0.2.0a3OSV
  • guardrails-ai, PyPI0.2.0a4OSV
  • guardrails-ai, PyPI0.2.0a5OSV
  • guardrails-ai, PyPI0.2.0a6OSV
  • guardrails-ai, PyPI0.2.1OSV
  • guardrails-ai, PyPI0.2.1a0OSV
  • guardrails-ai, PyPI0.2.2OSV
  • guardrails-ai, PyPI0.2.3OSV
  • guardrails-ai, PyPI0.2.3a1OSV
  • guardrails-ai, PyPI0.2.4OSV
  • guardrails-ai, PyPI0.2.4a1OSV
  • guardrails-ai, PyPI0.2.5OSV
  • guardrails-ai, PyPI0.2.6OSV
  • guardrails-ai, PyPI0.2.7OSV
  • guardrails-ai, PyPI0.2.8OSV
  • guardrails-ai, PyPI0.2.9OSV
  • guardrails-ai, PyPI0.3.0OSV
  • guardrails-ai, PyPI0.3.1OSV
  • guardrails-ai, PyPI0.3.2OSV
  • guardrails-ai, PyPI0.3.3OSV
  • guardrails-ai, PyPI0.4.0OSV
  • guardrails-ai, PyPI0.4.1OSV
  • guardrails-ai, PyPI0.4.2OSV
  • guardrails-ai, PyPI0.4.3OSV
  • guardrails-ai, PyPI0.4.4OSV
  • guardrails-ai, PyPI0.4.5OSV
  • guardrails-ai, PyPI0.5.0OSV
  • guardrails-ai, PyPI0.5.0a0OSV
  • guardrails-ai, PyPI0.5.0a1OSV
  • guardrails-ai, PyPI0.5.0a10OSV
  • guardrails-ai, PyPI0.5.0a11OSV
  • guardrails-ai, PyPI0.5.0a12OSV
  • guardrails-ai, PyPI0.5.0a13OSV
  • guardrails-ai, PyPI0.5.0a2OSV

References 6