Skip to content

Add advisory for time#2626

Merged
djc merged 1 commit intorustsec:mainfrom
jhpratt:main
Feb 6, 2026
Merged

Add advisory for time#2626
djc merged 1 commit intorustsec:mainfrom
jhpratt:main

Conversation

@jhpratt
Copy link
Contributor

@jhpratt jhpratt commented Feb 5, 2026

No description provided.

@djc
Copy link
Member

djc commented Feb 5, 2026

Would be nice to add a little prose here.

(I'll see if I can fix that the linting error has no details.)

@jhpratt
Copy link
Contributor Author

jhpratt commented Feb 5, 2026

I was just doing that — copying over the advisory text specifically

@jhpratt
Copy link
Contributor Author

jhpratt commented Feb 5, 2026

Fixed an obvious syntax error in the toml bit, so now I'm not sure what's failing the linter 🙂

@tnull
Copy link

tnull commented Feb 5, 2026

So this fixed one patch release after bumping MSRV on the prior patch release, leaving downstream users that can't arbitrarily upgrade rustc vulnerable? Cool cool.

@jhpratt
Copy link
Contributor Author

jhpratt commented Feb 5, 2026

@tnull Be respectful. I patched this on short notice while dealing with a less-than-great event. This is absolutely not the place to discuss MSRV policy. You've already opened an issue in the time-rs/time repo and had it addressed.

If you want to harass me, you will be blocked and reported to GitHub.


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,
Copy link

@tnull tnull Feb 5, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It would be good to clarify exactly which features these are, so users can check whether they are affected or not.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If someone is handling user input without further verification (which is expected), they are affected. It's not an optional feature — it's a core part of the specification. There truly is zero chance that someone would encounter this by accident; it would have to be malicious.

While I'm being vague, that's because it hasn't been exploited to my knowledge. Obviously it can be inferred from the recent patch, but I at least want it to take nonzero effort to exploit. I was provided with a proof of concept that was trivially verified.

@djc
Copy link
Member

djc commented Feb 5, 2026

Fixed an obvious syntax error in the toml bit, so now I'm not sure what's failing the linter 🙂

It's "Expected # header after TOML front matter". Fixing the linter output in

@jhpratt
Copy link
Contributor Author

jhpratt commented Feb 6, 2026

Ah, it didn't like the ### I used. I've changed the headers to all be H1, in addition to adding the now-issued CVE ID.

@djc djc merged commit c5d3ba4 into rustsec:main Feb 6, 2026
1 check passed
unaffected = ["< 0.3.6"]
```

# Impact

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry for the late feedback, but this header is used to describe the vulnerability here: https://rustsec.org/packages/time.html

Maybe it can be improved to something more descriptive?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would be nice -- the fastest way to get that done would be if you can submit a PR.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, go for it. I went for "Stack exhaustion denial of service attack" as the advisory title on GitHub.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants