PERL5283DELTA(1)
π perl5283delta β what is new for perl v5.28.3 π
okay bestie, welcome to the tea on perl5283delta, straight outta the Perl Programmers Reference Guide. sit down, hydrate, and let's get into it π«Ά
β¨ NAME β¨
perl5283delta β literally what is new for perl v5.28.3
πΈ DESCRIPTION πΈ
so this doc is giving the glow-up notes between the 5.28.2 release and the 5.28.3 release. that's it. that's the vibe.
and if you're jumping in from something even older, like 5.28.1? no worries babe, but do yourself a favor and read perl5282delta first β that one covers the 5.28.1 β 5.28.2 era. we don't skip chapters here π
π₯ Security π₯
okay so this whole section is the serious part. like, main-character-plot-twist serious. all three of these are CVE-listed, so read them properly, no skimming.
π [CVE-2020-10543] Buffer overflow caused by a crafted regular expression
so there's a signed size_t integer overflow in the storage space calculations for nested regular expression quantifiers. what does that mean for you? it could cause a heap buffer overflow in Perl's regular expression compiler that overwrites memory allocated after the regular expression storage space β with attacker supplied data. yeah. attacker supplied data. π
ngl there's a catch for the attacker though: the target system needs a sufficient amount of memory to allocate partial expansions of the nested quantifiers prior to the overflow occurring. and that requirement is unlikely to be met on 64-bit systems. so, slay for 64-bit I guess.
Discovered by: ManhND of The Tarantula Team, VinCSS (a member of Vingroup).
π [CVE-2020-10878] Integer overflow via malformed bytecode produced by a crafted regular expression
okay so this one is integer overflows in the calculation of offsets between instructions for the regular expression engine. this could cause corruption of the intermediate language state of a compiled regular expression. and then an attacker could abuse this behaviour to insert instructions into the compiled form of a Perl regular expression. not the vibe. not the vibe at all. π
Discovered by: Hugo van der Sanden and Slaven Rezic.
π [CVE-2020-12723] Buffer overflow caused by a crafted regular expression
recursive calls to S_study_chunk() by Perl's regular expression compiler β the ones that optimize the intermediate language representation of a regular expression β could cause corruption of the intermediate language state of a compiled regular expression. that's the whole thing. π«
Discovered by: Sergey Aleynikov.
β Additional Note
important clarification bestie: an application written in Perl would only be vulnerable to any of the above flaws if it evaluates regular expressions supplied by the attacker.
and evaluating regular expressions in that fashion is known to be dangerous, because the regular expression engine does not protect against denial of service attacks in this usage scenario. so like. don't. π
π¦ Incompatible Changes π¦
there are no changes intentionally incompatible with Perl 5.28.2. periodt. π
if any exist? they're bugs, and we request that you submit a report. see "Reporting Bugs" below, babe.
π Modules and Pragmata π
β¨ Updated Modules and Pragmata
Module::CoreListhas been upgraded from version5.20190419to5.20200601_28. that's the whole list. one module. iconic behavior honestly.
π§ Testing π§
tests were added and changed to reflect the other additions and changes in this release. keeping it honest, keeping it covered. β¨
π Acknowledgements π
okay so Perl 5.28.3 represents approximately 13 months of development since Perl 5.28.2, and contains approximately 3,100 lines of changes across 48 files from 16 authors. that's a lot of people caring about a lot of lines. π₯Ή
and excluding auto-generated files, documentation and release tools, there were approximately 1,700 lines of changes to 9 .pm, .t, .c and .h files. like. the way that they just did that. obsessed.
Perl continues to flourish into its fourth decade thanks to a vibrant community of users and developers. the following people are known to have contributed the improvements that became Perl 5.28.3:
- Chris 'BinGOs' Williams
- Dan Book
- Hugo van der Sanden
- James E Keenan
- John Lightsey
- Karen Etheridge
- Karl Williamson
- Matthew Horsfall
- Max Maischein
- Nicolas R.
- Renee Baecker
- Sawyer X
- Steve Hay
- Tom Hukins
- Tony Cook
- Zak B. Elep.
real talk: the list above is almost certainly incomplete, because it's automatically generated from version control history. in particular, it does not include the names of the (very much appreciated) contributors who reported issues to the Perl bug tracker. y'all are seen and loved π«Ά
many of the changes included in this version originated in the CPAN modules included in Perl's core. we're grateful to the entire CPAN community for helping Perl to flourish. π
for a more complete list of all of Perl's historical contributors, please see the AUTHORS file in the Perl source distribution.
π Reporting Bugs π
if you find what you think is a bug, you might check the perl bug database at <https://github.com/Perl/perl5/issues>. there may also be information at <https://www.perl.org/>, the Perl Home Page. lowkey a great place to lurk.
if you believe you have an unreported bug, please open an issue at <https://github.com/Perl/perl5/issues>. and bestie β be sure to trim your bug down to a tiny but sufficient test case. we love a minimal repro. π
if the bug you are reporting has security implications which make it inappropriate to send to a public issue tracker, then see "SECURITY VULNERABILITY CONTACT INFORMATION" in perlsec for details of how to report the issue. do it the right way, okay? π
π Give Thanks π
if you wish to thank the Perl 5 Porters for the work we had done in Perl 5, you can do so by running the perlthanks program:
perlthanks
this will send an email to the Perl 5 Porters list with your show of thanks. go be sweet, it costs nothing and it means everything. π
π SEE ALSO π
- The
Changesfile for an explanation of how to view exhaustive details on what changed. - The
INSTALLfile for how to build Perl. - The
READMEfile for general stuff. - The
ArtisticandCopyingfiles for copyright information.
and that's the whole page, bestie π¦ this was perl5283delta from the Perl Programmers Reference Guide, brought to you by perl v5.42.3 and dated 2026-08-03. mwah. go forth and never eval attacker regexes. πβ¨
π¦ where this page comes from
- fedora 43: perl-doc 5.42.3-524.fc43 Β· (GPL-1.0-or-later OR Artistic-1.0-Perl) AND Unicode-3.0 AND LicenseRef-Fedora-UltraPermissive
- fedora 44: perl-doc 5.42.3-525.fc44 Β· (GPL-1.0-or-later OR Artistic-1.0-Perl) AND Unicode-3.0 AND LicenseRef-Fedora-UltraPermissive
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms