CVE-2024-56370: Net::Xero 0.044 and earlier for Perl uses insecure rand() function for cryptographic functions
Timothy Legge 05 Apr 2025 18:27 UTC
========================================================================
CVE-2024-56370 CPAN Security Group
========================================================================
CVE ID: CVE-2024-56370
Distribution: Net-Xero
Versions: through 0.44
MetaCPAN: https://metacpan.org/dist/Net-Xero
Net::Xero 0.044 and earlier for Perl uses insecure rand() function for
cryptographic functions
Description
-----------
Net::Xero 0.044 and earlier for Perl uses the rand() function as the
default source of entropy, which is not cryptographically secure, for
cryptographic functions.
Specifically Net::Xero uses the Data::Random library which specifically
states that it is "Useful mostly for test programs". Data::Random uses
the rand() function.
Problem types
-------------
CWE-338 Use of Cryptographically Weak Pseudo-Random Number Generator
(PRNG)
References
----------
https://perldoc.perl.org/functions/rand
https://security.metacpan.org/docs/guides/random-data-for-security.html
https://metacpan.org/release/BAREFOOT/Data-Random-0.13/source/lib/Data/Random.pm#L537
https://metacpan.org/release/ELLIOTT/Net-Xero-0.44/source/lib/Net/Xero.pm#L58
https://metacpan.org/release/ELLIOTT/Net-Xero-0.44/source/lib/Net/Xero.pm#L9
Credits
-------
Robert Rothenberg (RRWO), finder