Skip to content

Ruby

Bug bounty on Sorona ruby-lang.org

Accepting reports open-source
Top reward
$1,500
Top severity paid
Critical
Assets in scope
13
Public CVEs
60
Last change
No changes yet

At a glance

What to know before you start testing.

Pays from $1,500
for critical bugs.
Partial safe harbor
Some legal protection; read the terms.
Publish after a fix
Coordinate the timing with the company.

Rewards

What Sorona lists as the payout for each severity.

Severity Reward
Critical $1,500+
High $700+
Medium $300+
Low $100 $100 / 1 month Claude Max
Safe harbor
Partial Sorona will not pursue legal action against you for good-faith research submitted to us in line with this policy. We cannot speak for the upstream project, its vendor, or any third party, and we do not grant authorization on their behalf.

Summarised with AI from the program policy on Sorona, read 12 Nov 2026, and checked word for word against it. Read the original

Scope

13 assets you may test, 6 excluded.

Web 1

  • https://www.ruby-lang.org

Products and areas 12

  • IO, process spawning and every path where a Ruby string becomes a shell command or a filesystem path
  • Marshal and every other core path that reconstructs a Ruby object from bytes
  • Memory management, covering the garbage collector, object allocation and the C API that native extensions use to touch both
  • RubyGems and Bundler as shipped, covering registry communication, gem installation and any build step a gem can declare
  • String, array and hash handling in the C source, and the encoding machinery underneath strings
  • The C extension API and anything a native gem can do to interpreter invariants
  • The default and bundled standard library gems, including net-imap, net-http, uri, resolv, cgi, rexml, psych, openssl and json
  • The dynamic evaluation surface: eval, instance_eval, send and the metaprogramming entry points that turn a string into executing code
  • The interpreter core: the parser, the compiler, the YARV virtual machine and the object system
  • The programme accepts vulnerabilities in the Ruby interpreter through either published channel and states plainly that it carries no money. It declares no component carve-out, so CRuby as shipped, including the gems each release bundles, is the target
  • The Ractor and Fiber concurrency machinery and whatever isolation it is meant to provide
  • The regular-expression engine and the pattern-compilation path, including the behaviour that produces catastrophic backtracking
Out of scope (6)
  • Distribution packaging and distro-specific patches rather than upstream CRuby
  • JRuby, TruffleRuby and other implementations, which are separate projects
  • Rails and other frameworks, each with its own security process
  • Ruby application code with an injection bug of its own, as distinct from an interpreter defect
  • Running untrusted Ruby source deliberately, since the interpreter ships no sandbox
  • Third-party gems that a Ruby release does not bundle

Rules

What the policy asks of you, and the bug types it won't reward, quoted from Sorona's policy. "We" in these lines means Sorona, not this site.

While testing

  • Submit through sorona.xyz. This project runs no bounty of its own; we validate, coordinate disclosure with the maintainers, and pay you directly.
  • Two channels, either is fine: the HackerOne programme at hackerone.com/ruby, or email to the address on the policy page with the published PGP key
  • Name the exact ruby version and say whether the defect is in the interpreter or in a bundled gem.
  • Rails is a separate project with its own security process. A Rails bug is not a Ruby bug
  • Say what the attacker controls: a source file, a string handed to a core method, or a network response parsed by a bundled gem
  • For a memory-safety finding, say whether it reproduces on a distribution build or only on an upstream build, since distributions carry their own patches
  • Hold the detail until the advisory is up.

Not accepted

  • Rails and other frameworks, each with its own security process
  • Third-party gems that a Ruby release does not bundle
  • Distribution packaging and distro-specific patches rather than upstream CRuby
  • Ruby application code with an injection bug of its own, as distinct from an interpreter defect
  • Running untrusted Ruby source deliberately, since the interpreter ships no sandbox
  • JRuby, TruffleRuby and other implementations, which are separate projects

Summarised with AI from the program policy on Sorona, read 12 Nov 2026, and checked word for word against it. Read the original

Changes

Tracked since 11 Nov 2026. Last checked 1 hour ago.

No changes yet. When the rewards or scope move, you will see it here and in the RSS feed.

Public CVEs

Published vulnerabilities in this vendor's products, from the NVD.

Search NVD
CVESeverityPublished
CVE-2026-97229 Critical 10.0 13 Oct 2026
CVE-2026-46727 High 8.1 22 May 2026
CVE-2026-42258 Medium 5.8 9 May 2026
CVE-2026-42245 Low 2.3 9 May 2026
CVE-2026-42246 High 7.6 9 May 2026
CVE-2026-42256 Medium 6.0 9 May 2026
CVE-2026-42257 Medium 5.8 9 May 2026
CVE-2026-27820 Low 1.7 16 Apr 2026
CVE-2026-33210 High 8.3 20 Mar 2026
CVE-2025-61594 Low 2.1 30 Dec 2025
CVE-2025-58767 Low 1.2 17 Sep 2025
CVE-2025-6442 Medium 5.9 25 Jun 2025
CVE-2025-43857 Medium 6.0 28 Apr 2025
CVE-2025-27788 High 7.5 12 Mar 2025
CVE-2025-27219 Medium 5.8 4 Mar 2025
CVE-2025-27220 Medium 4.0 4 Mar 2025
CVE-2025-27221 Low 3.2 4 Mar 2025
CVE-2024-49761 Medium 6.6 28 Oct 2024
CVE-2024-43398 Medium 5.9 22 Aug 2024
CVE-2024-41946 Medium 5.3 1 Aug 2024
CVE-2024-41123 Medium 5.3 1 Aug 2024
CVE-2024-39908 Medium 4.3 16 Jul 2024
CVE-2024-35176 Medium 5.3 16 May 2024
CVE-2024-26142 High 7.5 27 Feb 2024
CVE-2023-36617 Medium 5.3 29 Jun 2023
CVE-2023-28755 Medium 5.3 31 Mar 2023
CVE-2023-28756 Medium 5.3 31 Mar 2023
CVE-2023-22795 High 7.5 9 Feb 2023
CVE-2021-33621 High 8.8 18 Nov 2022
CVE-2016-2338 Critical 9.8 29 Sep 2022
CVE-2022-28739 High 7.5 9 May 2022
CVE-2022-28738 Critical 9.8 9 May 2022
CVE-2021-41816 Critical 9.8 6 Feb 2022
CVE-2021-41819 High 7.5 1 Jan 2022
CVE-2021-41817 High 7.5 1 Jan 2022
CVE-2021-32066 High 7.4 1 Aug 2021
CVE-2021-31799 High 7.0 30 Jul 2021
CVE-2021-28966 High 7.5 30 Jul 2021
CVE-2021-31810 Medium 5.8 13 Jul 2021
CVE-2021-28965 High 7.5 21 Apr 2021
CVE-2020-25613 High 7.5 6 Oct 2020
CVE-2020-10933 Medium 5.3 4 May 2020
CVE-2020-10663 High 7.5 28 Apr 2020
CVE-2020-5247 Medium 6.5 28 Feb 2020
CVE-2020-8130 Medium 6.4 24 Feb 2020
CVE-2015-1855 Medium 5.9 29 Nov 2019
CVE-2019-16201 High 7.5 26 Nov 2019
CVE-2019-16254 Medium 5.3 26 Nov 2019
CVE-2019-16255 High 8.1 26 Nov 2019
CVE-2019-15845 Medium 6.5 26 Nov 2019
CVE-2011-4121 Critical 9.8 26 Nov 2019
CVE-2011-3624 Medium 5.3 26 Nov 2019
CVE-2013-1945 Low 3.3 31 Oct 2019
CVE-2019-11879 Medium 5.5 10 May 2019
CVE-2018-16395 Critical 9.8 16 Nov 2018
CVE-2018-16396 High 8.1 16 Nov 2018
CVE-2018-8777 High 7.5 3 Apr 2018
CVE-2018-8778 High 7.5 3 Apr 2018
CVE-2018-8779 High 7.5 3 Apr 2018
CVE-2018-8780 Critical 9.1 3 Apr 2018

Original policy

Copied from sorona.xyz on 12 Nov 2026. The summaries on this page are made from it; the live page may have changed since.

Skip to content What this pays This project runs no bounty of its own. sorona.xyz pays you directly on qualified, reproduced findings. Severity │ sorona.xyz pays Critical │ $1,500+ High │ $700+ Medium │ $300+ Low │ $100 / 1 month Claude Max Submit a vulnerability CVE history 11 Last 12 months Memory safety 35 % Parsing/validation 30 % Denial of service 20 % Info disclosure 15 % Latest advisories Loading the feed Overview Ruby's reference interpreter is the runtime under Rails, GitLab, Metasploit, Homebrew, Vagrant, Discourse and Jekyll, and it ships in most Linux distributions and on macOS. Eleven CVEs came out of it across 2025 and 2026, published on ruby-lang.org rather than as GitHub advisories, so the record is easy to miss if you only watch GHSA feeds. Intake is hosted on HackerOne, and the programme page states in writing that it is a disclosure programme without monetary rewards. The email channel to the security team is equivalent and equally unpaid. sorona.xyz pays you directly on qualified, reproduced findings. In scope The programme accepts vulnerabilities in the Ruby interpreter through either published channel and states plainly that it carries no money. It declares no component carve-out, so CRuby as shipped, including the gems each release bundles, is the target The interpreter core: the parser, the compiler, the YARV virtual machine and the object system Memory management, covering the garbage collector, object allocation and the C API that native extensions use to touch both String, array and hash handling in the C source, and the encoding machinery underneath strings The regular-expression engine and the pattern-compilation path, including the behaviour that produces catastrophic backtracking Marshal and every other core path that reconstructs a Ruby object from bytes The default and bundled standard library gems, including net-imap , net-http , uri , resolv , cgi , rexml , psych , openssl and json The C extension API and anything a native gem can do to interpreter invariants RubyGems and Bundler as shipped, covering registry communication, gem installation and any build step a gem can declare The dynamic evaluation surface: eval , instance_eval , send and the metaprogramming entry points that turn a string into executing code IO, process spawning and every path where a Ruby string becomes a shell command or a filesystem path The Ractor and Fiber concurrency machinery and whatever isolation it is meant to provide Out of scope Rails and other frameworks, each with its own security process Third-party gems that a Ruby release does not bundle Distribution packaging and distro-specific patches rather than upstream CRuby Ruby application code with an injection bug of its own, as distinct from an interpreter defect Running untrusted Ruby source deliberately, since the interpreter ships no sandbox JRuby, TruffleRuby and other implementations, which are separate projects Most-valued findings Memory corruption in the C interpreter reachable from ordinary Ruby. On a Rails host that is remote code execution inside the application process Defects in the bundled network gems. net-imap , net-http , resolv and uri all parse responses from servers the application did not write, and they ship with every interpreter Marshal and deserialisation reaching object instantiation or method dispatch, the highest-severity shape this language produces Regular-expression handling that turns a user-supplied pattern or subject into unbounded CPU, since Ruby web applications routinely match against request data Parser and encoding defects where a length or an offset computed under one encoding is applied to a buffer in another RubyGems and Bundler supply-chain defects: install-time code execution, resolution confusion or verification that can be bypassed Anything that escapes the intended boundary of eval and the metaprogramming surface, given how much production Ruby passes strings into it Defects in rexml , psych and json , the bundled parsers that applications point at untrusted documents Program rules Submit through sorona.xyz. This project runs no bounty of its own; we validate, coordinate disclosure with the maintainers, and pay you directly. Two channels, either is fine: the HackerOne programme at hackerone.com/ruby, or email to [email protected] with the published PGP key The programme page states that this is a disclosure programme without monetary rewards. Ignore any bounty figure the platform's own metadata shows, because it is a stale default the written policy overrides Advisories are published on ruby-lang.org/en/security rather than as GitHub advisories on ruby/ruby , so track the fix there Name the exact ruby version and say whether the defect is in the interpreter or in a bundled gem. Bundled gems are versioned and released separately from the interpreter Rails is a separate project with its own security process. A Rails bug is not a Ruby bug Say what the attacker controls: a source file, a string handed to a core method, or a network response parsed by a bundled gem For a memory-safety finding, say whether it reproduces on a distribution build or only on an upstream build, since distributions carry their own patches Disclosure Coordinated either through HackerOne or the security mailing address, and published as an advisory on ruby-lang.org alongside patched releases across the supported version lines. The 2025 and 2026 record runs to eleven advisories through that channel. Distributions rebuild quickly once the release lands, so the embargo runs to the coordinated release date. Hold the detail until the advisory is up. Safe harbor Sorona will not pursue legal action against you for good-faith research submitted to us in line with this policy. We cannot speak for the upstream project, its vendor, or any third party, and we do not grant authorization on their behalf. You are responsible for understanding and following the laws that apply to you, wherever you are, and for staying within any scope the project has defined. Submit a vulnerability