Skip to content
vetkitChecksChangelogDocumentation

vetkit.ruby.deserialization.yaml-load-request

Request data is parsed with YAML.load / Psych.load. Before Psych 4 (Ruby < 3.1) this instantiates arbitrary Ruby objects and can lead to remote code execution.

Last updated:

Suite: Security

ruby

Request data is parsed with YAML.load / Psych.load. Before Psych 4 (Ruby < 3.1) this instantiates arbitrary Ruby objects and can lead to remote code execution.

Category: SECURITY · Engine rule severity: WARNING

How to fix it

Use YAML.safe_load (with an explicit permitted_classes list) for any data that is not fully trusted.

References

Source: packages/engine/rules/sast/ruby.yml.

Generated from shipped rule definitions at build time. Matching is a review signal, not proof of exploitability. “generic” denotes text matching, not complete language or framework coverage. Runtime configuration and available tools affect whether a rule runs.