Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add chrono advisory for chrono#499 (localtime_r) #1082

Merged
merged 1 commit into from
Oct 18, 2021

Conversation

tarcieri
Copy link
Member

This is an advisory similar to RUSTSEC-2020-0071 impacting usages of localtime_r within chrono itself, since the API is used in a cross-thread manner in an unsound way.

This is an advisory similar to `RUSTSEC-2020-0071` impacting usages of
`localtime_r` within `chrono` itself, since the API is used in a
cross-thread manner in an unsound way.
@tarcieri tarcieri merged commit 1d8c7e1 into main Oct 18, 2021
@tarcieri tarcieri deleted the chrono/localtime_r-unsound branch October 18, 2021 16:13
@tarcieri
Copy link
Member Author

Note that there are reports of this impacting real-world code.

@Kixunil
Copy link
Contributor

Kixunil commented Oct 20, 2021

Is it possible to whitelist a crate using chrono as not-vulnerable based on the fact that it does not call localtime_r? This is the case for tiny-http.

@tarcieri
Copy link
Member Author

It's been suggested before but not something we support: #288.

More generally we've wanted to support false positive elimination via call graph analysis: rustsec/rustsec#21

@Kixunil
Copy link
Contributor

Kixunil commented Oct 20, 2021

Thanks for pointers! Call graph analysis sounds useful but not perfect because in some situations there may be multiple factors, so I think #288 is still valuable and probably easier to implement.

alexjg added a commit to alexjg/jsonschema-rs that referenced this pull request Oct 20, 2021
Due to a CVE in chrono[0] we switch to time 0.3.3. Chrono actually
depends on an older, similarly vulnerable version of `time` but newer
versions of `time` seem to offer everything we need to validate dates
and times anyway.

[0] rustsec/advisory-db#1082

Signed-off-by: Alex Good <[email protected]>
alexjg added a commit to alexjg/jsonschema-rs that referenced this pull request Oct 20, 2021
Due to a CVE in chrono[0] we switch to time 0.3.3. Chrono actually
depends on an older, similarly vulnerable version of `time` but newer
versions of `time` seem to offer everything we need to validate dates
and times anyway.

[0] rustsec/advisory-db#1082

Signed-off-by: Alex Good <[email protected]>
alexjg added a commit to alexjg/jsonschema-rs that referenced this pull request Oct 20, 2021
Due to a CVE in chrono[0] we switch to time 0.3.3. Chrono actually
depends on an older, similarly vulnerable version of `time` but newer
versions of `time` seem to offer everything we need to validate dates
and times anyway.

[0] rustsec/advisory-db#1082

Signed-off-by: Alex Good <[email protected]>
Stranger6667 pushed a commit to Stranger6667/jsonschema that referenced this pull request Oct 20, 2021
Due to a CVE in chrono[0] we switch to time 0.3.3. Chrono actually
depends on an older, similarly vulnerable version of `time` but newer
versions of `time` seem to offer everything we need to validate dates
and times anyway.

[0] rustsec/advisory-db#1082

Signed-off-by: Alex Good <[email protected]>
Stranger6667 pushed a commit to Stranger6667/jsonschema that referenced this pull request Oct 21, 2021
Due to a CVE in chrono[0] we switch to time 0.3.3. Chrono actually
depends on an older, similarly vulnerable version of `time` but newer
versions of `time` seem to offer everything we need to validate dates
and times anyway.

[0] rustsec/advisory-db#1082

Signed-off-by: Alex Good <[email protected]>

(cherry picked from commit 625c66e)
@ghost ghost mentioned this pull request Jan 29, 2022
2 tasks
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.

2 participants