Security Advisories (1)
CVE-2025-40909 (2025-05-30)

Perl threads have a working directory race condition where file operations may target unintended paths. If a directory handle is open at thread creation, the process-wide current working directory is temporarily changed in order to clone that handle for the new thread, which is visible from any third (or more) thread already running. This may lead to unintended operations such as loading code or accessing files from unexpected locations, which a local attacker may be able to exploit. The bug was introduced in commit 11a11ecf4bea72b17d250cfb43c897be1341861e and released in Perl version 5.13.6

NAME

exetype - Change executable subsystem type between "Console" and "Windows"

SYNOPSIS

C:\perl\bin> copy perl.exe guiperl.exe
C:\perl\bin> exetype guiperl.exe windows

DESCRIPTION

This program edits an executable file to indicate which subsystem the operating system must invoke for execution.

You can specify any of the following subsystems:

CONSOLE

The CONSOLE subsystem handles a Win32 character-mode application that use a console supplied by the operating system.

WINDOWS

The WINDOWS subsystem handles an application that does not require a console and creates its own windows, if required.

NATIVE

The NATIVE subsystem handles a Windows NT device driver.

WINDOWSCE

The WINDOWSCE subsystem handles Windows CE consumer electronics applications.

POSIX

The POSIX subsystem handles a POSIX application in Windows NT.

AUTHOR

Jan Dubois <jand@activestate.com>