A vulnerability was found in Perl. This security issue occurs while Perl for Windows relies on the system path environment variable to find the shell (cmd.exe
). When running an executable that uses the Windows Perl interpreter, Perl attempts to find and execute cmd.exe
within the operating system. However, due to path search order issues, Perl initially looks for cmd.exe in the current working directory. This flaw allows an attacker with limited privileges to placecmd.exe
in locations with weak permissions, such as C:ProgramData
. By doing so, arbitrary code can be executed when an administrator attempts to use this executable from these compromised locations.
A heap overflow condition is a buffer overflow, where the buffer that can be overwritten is allocated in the heap portion of memory, generally meaning that the buffer was allocated using a routine such as malloc().
Name | Vendor | Start Version | End Version |
---|---|---|---|
Perl | Perl | * | 5.32.1 (excluding) |
Perl | Ubuntu | bionic | * |
Perl | Ubuntu | devel | * |
Perl | Ubuntu | esm-infra-legacy/trusty | * |
Perl | Ubuntu | esm-infra/bionic | * |
Perl | Ubuntu | esm-infra/xenial | * |
Perl | Ubuntu | focal | * |
Perl | Ubuntu | jammy | * |
Perl | Ubuntu | lunar | * |
Perl | Ubuntu | mantic | * |
Perl | Ubuntu | trusty | * |
Perl | Ubuntu | trusty/esm | * |
Perl | Ubuntu | upstream | * |
Perl | Ubuntu | xenial | * |
Perl6 | Ubuntu | bionic | * |
Perl6 | Ubuntu | esm-apps/bionic | * |
Perl6 | Ubuntu | esm-apps/focal | * |
Perl6 | Ubuntu | focal | * |
Perl6 | Ubuntu | trusty | * |
Perl6 | Ubuntu | upstream | * |
Perl6 | Ubuntu | xenial | * |
Raku | Ubuntu | bionic | * |
Raku | Ubuntu | devel | * |
Raku | Ubuntu | lunar | * |
Raku | Ubuntu | mantic | * |
Raku | Ubuntu | trusty | * |
Raku | Ubuntu | upstream | * |
Raku | Ubuntu | xenial | * |