Skip to content

Perl

Bug bounty on Sorona perl.org

Accepting reports open-source
Top reward
$1,500
Top severity paid
Critical
Assets in scope
12
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.
Replies within 3 days
As the policy promises.
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
Response
Within 3 days The team commits to an initial response within 72 hours and runs a documented embargo process from there
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.
Hall of fame
Yes The only thing offered is public credit in the release announcement.

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

Scope

12 assets you may test, 6 excluded.

Web 1

  • https://www.perl.org

Products and areas 11

  • sprintf, pack and unpack and the format-string machinery, which parse a specification and then write memory according to it
  • Storable deserialisation and every other core path that reconstructs a Perl data structure from bytes
  • String and buffer handling across the C source, the historical home of this project's heap overflows
  • Taint mode and the checks it is supposed to enforce, plus setuid-adjacent behaviour
  • The build and installation tooling the core ships, ExtUtils::MakeMaker among it
  • The core modules the distribution ships, including Storable, Data::Dumper, File::Spec, IPC::Open3, Socket and the POSIX bindings
  • The interpreter core: the tokenizer, the optree builder, the runtime ops and the reference counting underneath them
  • The regular-expression engine end to end, from pattern compilation through matching, including recursion, backtracking and the Unicode property machinery
  • The security policy asks for any security issue in perl5 privately on the security list and states plainly that there is no money for it. It declares no component boundary, so the perl interpreter and the modules the core distribution ships are the target
  • The XS boundary and the C API that extensions use, where an interpreter invariant can be violated from outside
  • Unicode and encoding handling, covering Encode, UTF-8 validation and the conversions between internal string representations
Out of scope (6)
  • CPAN modules outside the core distribution, which belong to their own authors
  • Distribution packaging and distro-specific patches rather than upstream perl5
  • Perl programs with injection bugs of their own, as distinct from a defect in the interpreter
  • Reports sent anywhere other than the security list, which puts them outside the documented embargo process
  • Resource exhaustion from an input the caller already controls, absent memory corruption or a crossed boundary
  • Running untrusted Perl source deliberately. The language ships no sandbox and claims none

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.
  • Email the address on the policy page , a closed-membership list monitored by the Perl security team. It is the documented channel and the only private one
  • Name the perl version and say whether the build is a distribution package or an upstream build.
  • For a regex finding, give the pattern and the subject string exactly, and say whether the pattern is attacker-controlled in the application you are modelling
  • State whether taint mode or a setuid wrapper is part of the setup, since those change what counts as a boundary crossing
  • CPAN modules outside the core distribution belong to their own authors, so identify the distribution a module ships in before you file
  • Hold the detail until the announcement is out.

Not accepted

  • CPAN modules outside the core distribution, which belong to their own authors
  • Distribution packaging and distro-specific patches rather than upstream perl5
  • Perl programs with injection bugs of their own, as distinct from a defect in the interpreter
  • Running untrusted Perl source deliberately. The language ships no sandbox and claims none
  • Resource exhaustion from an input the caller already controls, absent memory corruption or a crossed boundary

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-57432 High 8.4 13 Jul 2026
CVE-2026-13221 Critical 9.1 13 Jul 2026
CVE-2026-14380 High 8.8 7 Jul 2026
CVE-2026-14739 Critical 9.8 7 Jul 2026
CVE-2026-14740 Critical 9.1 7 Jul 2026
CVE-2026-9698 Critical 9.8 9 Jun 2026
CVE-2026-10879 Critical 9.8 5 Jun 2026
CVE-2026-8376 Critical 9.8 26 May 2026
CVE-2026-4176 Critical 9.8 29 Mar 2026
CVE-2024-56406 High 8.4 13 Apr 2025
CVE-2023-47039 High 7.8 2 Jan 2024
CVE-2023-47038 High 7.0 18 Dec 2023
CVE-2022-48522 Critical 9.8 22 Aug 2023
CVE-2023-31484 High 8.1 29 Apr 2023
CVE-2023-31486 High 8.1 29 Apr 2023
CVE-2020-16156 High 7.8 13 Dec 2021
CVE-2021-36770 High 7.8 11 Aug 2021
CVE-2019-20919 Medium 4.7 17 Sep 2020
CVE-2014-10402 Medium 6.1 16 Sep 2020
CVE-2020-14393 High 7.1 16 Sep 2020
CVE-2020-14392 Medium 5.5 16 Sep 2020
CVE-2013-7490 Medium 5.3 11 Sep 2020
CVE-2013-7491 Medium 5.3 11 Sep 2020
CVE-2014-10401 Medium 6.1 11 Sep 2020
CVE-2020-12723 High 7.5 5 Jun 2020
CVE-2020-10878 High 8.6 5 Jun 2020
CVE-2020-10543 High 8.2 5 Jun 2020
CVE-2018-18313 Critical 9.1 7 Dec 2018
CVE-2018-18314 Critical 9.8 7 Dec 2018
CVE-2018-18311 Critical 9.8 7 Dec 2018
CVE-2018-18312 Critical 9.8 5 Dec 2018
CVE-2018-12015 High 7.5 7 Jun 2018
CVE-2018-6797 Critical 9.8 17 Apr 2018
CVE-2018-6798 High 7.5 17 Apr 2018
CVE-2018-6913 Critical 9.8 17 Apr 2018
CVE-2017-12814 Critical 9.8 28 Sep 2017
CVE-2017-12837 High 7.5 19 Sep 2017
CVE-2017-12883 Critical 9.1 19 Sep 2017
CVE-2015-8608 Critical 9.8 7 Feb 2017
CVE-2016-1246 High 7.5 5 Oct 2016
CVE-2016-6185 High 7.8 2 Aug 2016
CVE-2016-1238 High 7.8 2 Aug 2016
CVE-2015-8853 High 7.5 25 May 2016
CVE-2016-2381 High 7.5 8 Apr 2016
CVE-2015-8607 High 7.3 13 Jan 2016
CVE-2013-7422 High 7.5 16 Aug 2015
CVE-2013-7329 Medium 5.0 6 Oct 2014
CVE-2014-4330 Low 2.1 30 Sep 2014
CVE-2010-4777 Medium 4.3 10 Feb 2014
CVE-2013-1667 High 7.5 14 Mar 2013
CVE-2012-6329 High 7.5 4 Jan 2013
CVE-2011-2728 Medium 4.3 21 Dec 2012
CVE-2012-5195 High 7.5 18 Dec 2012
CVE-2011-4363 Low 2.6 7 Oct 2012
CVE-2012-1151 Medium 5.0 9 Sep 2012
CVE-2011-2939 Medium 5.1 13 Jan 2012
CVE-2011-3599 Medium 5.8 10 Oct 2011
CVE-2011-2201 Medium 4.3 14 Sep 2011
CVE-2011-0761 Medium 5.0 13 May 2011
CVE-2011-1487 Medium 5.0 11 Apr 2011

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 4 Last 12 months 56 Lifetime Memory safety 45 % Regex engine 25 % Parsing/validation 20 % Info disclosure 10 % Latest advisories Loading the feed Overview Perl ships as a base OS component on essentially every Linux and BSD distribution and on macOS. Debian's configuration tooling depends on it, debhelper depends on it, and a vast amount of build and sysadmin plumbing depends on it, so it runs on machines nobody thinks of as Perl machines. It is a large C codebase with a long record of heap overflows and regex-engine defects, and the regex engine in particular compiles patterns that real applications let users supply. The security policy carries a section headed 'Bounties for Perl vulnerabilities' whose content is that a non-profit volunteer effort pays nothing. sorona.xyz pays you directly on qualified, reproduced findings. In scope The security policy asks for any security issue in perl5 privately on the security list and states plainly that there is no money for it. It declares no component boundary, so the perl interpreter and the modules the core distribution ships are the target The interpreter core: the tokenizer, the optree builder, the runtime ops and the reference counting underneath them The regular-expression engine end to end, from pattern compilation through matching, including recursion, backtracking and the Unicode property machinery String and buffer handling across the C source, the historical home of this project's heap overflows Unicode and encoding handling, covering Encode , UTF-8 validation and the conversions between internal string representations sprintf , pack and unpack and the format-string machinery, which parse a specification and then write memory according to it Taint mode and the checks it is supposed to enforce, plus setuid-adjacent behaviour The core modules the distribution ships, including Storable , Data::Dumper , File::Spec , IPC::Open3 , Socket and the POSIX bindings The XS boundary and the C API that extensions use, where an interpreter invariant can be violated from outside Storable deserialisation and every other core path that reconstructs a Perl data structure from bytes The build and installation tooling the core ships, ExtUtils::MakeMaker among it Out of scope CPAN modules outside the core distribution, which belong to their own authors Distribution packaging and distro-specific patches rather than upstream perl5 Perl programs with injection bugs of their own, as distinct from a defect in the interpreter Running untrusted Perl source deliberately. The language ships no sandbox and claims none Reports sent anywhere other than the security list, which puts them outside the documented embargo process Resource exhaustion from an input the caller already controls, absent memory corruption or a crossed boundary Most-valued findings Memory corruption in the regex engine, reachable from a pattern or from a subject string. This is the densest part of Perl's CVE history and the part with the most attacker-controlled input in real applications Heap overflows anywhere in the C core, particularly in string, buffer and format handling. On this codebase that is code execution inside whatever daemon or build script embedded the interpreter sprintf , pack and unpack format handling, where a specification string decides how much memory gets written and where Unicode and encoding conversion defects, where a length computed in one representation is applied to a buffer in another Taint-mode bypasses, since taint is the one security boundary the interpreter actually promises to enforce Storable and other core deserialisation reaching code execution, given how much sysadmin tooling passes serialised structures between processes Anything reachable from a perl one-liner inside a build script or a packaging hook, because that is where perl runs on hosts nobody audits 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. Email [email protected] , a closed-membership list monitored by the Perl security team. It is the documented channel and the only private one The team commits to an initial response within 72 hours and runs a documented embargo process from there The only thing offered is public credit in the release announcement. The policy has a dedicated section stating that a non-profit volunteer effort provides no monetary rewards Name the perl version and say whether the build is a distribution package or an upstream build. Distributions carry large patch sets and the difference decides who owns the bug For a regex finding, give the pattern and the subject string exactly, and say whether the pattern is attacker-controlled in the application you are modelling State whether taint mode or a setuid wrapper is part of the setup, since those change what counts as a boundary crossing CPAN modules outside the core distribution belong to their own authors, so identify the distribution a module ships in before you file Disclosure Coordinated on the closed [email protected] list, with an initial response targeted inside 72 hours and a documented embargo that runs to a coordinated release. Distributions rebuild perl in lockstep once the fix lands, so the release date is set by that coordination rather than by a day count you choose. Credit goes in the release announcement. Hold the detail until the announcement is out. 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