c-ares is an asynchronous resolver library. When /dev/urandom or RtlGenRandom() are unavailable, c-ares uses rand() to generate random numbers used for DNS query ids. This is not a CSPRNG, and it is also not seeded by srand() so will generate predictable output. Input from the random number generator is fed into a non-compilant RC4 implementation and may not be as strong as the original RC4 implementation. No attempt is made to look for modern OS-provided CSPRNGs like arc4random() that is widely available. This issue has been fixed in version 1.19.1.
History

No history.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published: 2023-05-25T21:55:47.585Z

Updated: 2024-08-02T14:45:25.630Z

Reserved: 2023-04-24T21:44:10.418Z

Link: CVE-2023-31147

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Analyzed

Published: 2023-05-25T22:15:09.833

Modified: 2023-10-31T16:06:05.103

Link: CVE-2023-31147

cve-icon Redhat

Severity : Moderate

Publid Date: 2023-05-22T00:00:00Z

Links: CVE-2023-31147 - Bugzilla