CVE-2026-25727
Unknown Unknown - Not Provided
Stack Exhaustion DoS in Rust time Crate RFC 2822 Parsing

Publication date: 2026-02-06

Last updated on: 2026-02-24

Assigner: GitHub, Inc.

Description
time provides date and time handling in Rust. From 0.3.6 to before 0.3.47, when user-provided input is provided to any type that parses with the RFC 2822 format, a denial of service attack via stack exhaustion is possible. The attack relies on formally deprecated and rarely-used features that are part of the RFC 2822 format used in a malicious manner. Ordinary, non-malicious input will never encounter this scenario. A limit to the depth of recursion was added in v0.3.47. From this version, an error will be returned rather than exhausting the stack.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2026-02-06
Last Modified
2026-02-24
Generated
2026-05-07
AI Q&A
2026-02-06
EPSS Evaluated
2026-05-05
NVD
EUVD
Affected Vendors & Products
Showing 1 associated CPE
Vendor Product Version / Range
time_project time From 0.3.6 (inc) to 0.3.47 (exc)
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-121 A stack-based buffer overflow condition is a condition where the buffer being overwritten is allocated on the stack (i.e., is a local variable or, rarely, a parameter to a function).
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?

[{'type': 'paragraph', 'content': 'This vulnerability affects the Rust crate "time" versions from 0.3.6 up to but not including 0.3.47. It occurs when user-provided input is parsed using the RFC 2822 date/time format, specifically exploiting deprecated and rarely-used features of this format.'}, {'type': 'paragraph', 'content': 'The issue is caused by unbounded recursion in the parser when handling nested comments within the RFC 2822 formatted strings. Maliciously crafted input with deeply nested comments can cause the parser to recurse excessively, leading to stack exhaustion and a denial of service (DoS) by crashing the application.'}, {'type': 'paragraph', 'content': 'The vulnerability was fixed in version 0.3.47 by introducing a recursion depth limit that stops parsing and returns an error instead of exhausting the stack.'}] [2, 3]


How can this vulnerability impact me? :

[{'type': 'paragraph', 'content': 'This vulnerability can cause a denial of service (DoS) by crashing applications that use the affected versions of the Rust "time" crate to parse RFC 2822 date/time inputs.'}, {'type': 'paragraph', 'content': 'An attacker can exploit this by providing maliciously crafted input with deeply nested comments, causing stack exhaustion through excessive recursion.'}, {'type': 'paragraph', 'content': 'The impact is limited to availability, meaning it disrupts service but does not affect the confidentiality or integrity of data.'}, {'type': 'paragraph', 'content': 'Exploitation requires low privileges and active user interaction, and the attack complexity is high.'}] [3]


How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:

I don't know


How can this vulnerability be detected on my network or system? Can you suggest some commands?

This vulnerability occurs when user-provided input is parsed using the RFC 2822 date/time format in the Rust time crate versions from 0.3.6 to before 0.3.47. Detection involves identifying if your system is using a vulnerable version of the time crate and if it processes RFC 2822 formatted inputs that could trigger excessive recursion.

Since the vulnerability is triggered by maliciously crafted inputs with deeply nested comments, monitoring logs or inputs for unusually complex or deeply nested RFC 2822 date/time strings could help detect attempts to exploit this issue.

There are no specific commands provided in the resources to detect this vulnerability directly on your network or system.


What immediate steps should I take to mitigate this vulnerability?

The primary mitigation is to upgrade the Rust time crate to version 0.3.47 or later, where a recursion depth limit was introduced to prevent stack exhaustion.

As a workaround, you can limit the length of user input that is parsed using the RFC 2822 format to reduce the risk by bounding stack consumption proportional to input size.

Avoid processing untrusted or maliciously crafted RFC 2822 date/time strings that include deprecated or rarely-used features that could trigger excessive recursion.


Ask Our AI Assistant
Need more information? Ask your question to get an AI reply (Powered by our expertise)
0/70
EPSS Chart