CVE-2024-52322: WebService::Xero 0.11 for Perl uses insecure rand() function for cryptographic functions
Timothy Legge 05 Apr 2025 16:20 UTC
========================================================================
CVE-2024-52322 CPAN Security Group
========================================================================
CVE ID: CVE-2024-52322
Distribution: WebService-Xero
Versions: through 0.11
MetaCPAN: https://metacpan.org/dist/WebService-Xero
WebService::Xero 0.11 for Perl uses insecure rand() function for
cryptographic functions
Description
-----------
WebService::Xero 0.11 and earlier for Perl uses the rand() function as
the default source of entropy, which is not cryptographically secure,
for cryptographic functions.
Specifically WebService::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/LOCALSHOP/WebService-Xero-0.11/source/lib/WebService/Xero/Agent.pm#L17
https://metacpan.org/release/LOCALSHOP/WebService-Xero-0.11/source/lib/WebService/Xero/Agent.pm#L178
https://metacpan.org/release/LOCALSHOP/WebService-Xero-0.11/source/lib/WebService/Xero/Agent/PublicApplication.pm#L13
https://metacpan.org/release/LOCALSHOP/WebService-Xero-0.11/source/lib/WebService/Xero/Agent/PublicApplication.pm#L93
Credits
-------
Robert Rothenberg (RRWO), finder