Security Advisories (2)
CVE-2024-56406 (2025-04-13)

A heap buffer overflow vulnerability was discovered in Perl. When there are non-ASCII bytes in the left-hand-side of the `tr` operator, `S_do_trans_invmap` can overflow the destination pointer `d`.    $ perl -e '$_ = "\x{FF}" x 1000000; tr/\xFF/\x{100}/;'    Segmentation fault (core dumped) It is believed that this vulnerability can enable Denial of Service and possibly Code Execution attacks on platforms that lack sufficient defenses.

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

Net::Time - time and daytime network client interface

SYNOPSIS

use Net::Time qw(inet_time inet_daytime);

print inet_time();          # use default host from Net::Config
print inet_time('localhost');
print inet_time('localhost', 'tcp');

print inet_daytime();       # use default host from Net::Config
print inet_daytime('localhost');
print inet_daytime('localhost', 'tcp');

DESCRIPTION

Net::Time provides subroutines that obtain the time on a remote machine.

Functions

inet_time([$host[, $protocol[, $timeout]]])

Obtain the time on $host, or some default host if $host is not given or not defined, using the protocol as defined in RFC868. The optional argument $protocol should define the protocol to use, either tcp or udp. The result will be a time value in the same units as returned by time() or undef upon failure.

inet_daytime([$host[, $protocol[, $timeout]]])

Obtain the time on $host, or some default host if $host is not given or not defined, using the protocol as defined in RFC867. The optional argument $protocol should define the protocol to use, either tcp or udp. The result will be an ASCII string or undef upon failure.

EXPORTS

The following symbols are, or can be, exported by this module:

Default Exports

None.

Optional Exports

inet_time, inet_daytime.

Export Tags

None.

KNOWN BUGS

None.

AUTHOR

Graham Barr <gbarr@pobox.com>.

Steve Hay <shay@cpan.org> is now maintaining libnet as of version 1.22_02.

COPYRIGHT

Copyright (C) 1995-2004 Graham Barr. All rights reserved.

Copyright (C) 2014, 2020 Steve Hay. All rights reserved.

LICENCE

This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself, i.e. under the terms of either the GNU General Public License or the Artistic License, as specified in the LICENCE file.

VERSION

Version 3.15

DATE

20 March 2023

HISTORY

See the Changes file.