This project might be open to known security vulnerabilities, which can be prevented by tightening the version range of affected dependencies. Find detailed information at the bottom.

Crate serde_with

Dependencies

(12 total, 2 possibly insecure)

CrateRequiredLatestStatus
 base64^0.22.10.22.1up to date
 chrono^0.4.200.4.44up to date
 document-features^0.2.70.2.12up to date
 hashbrown^0.16.00.16.1up to date
 hex^0.4.30.4.3up to date
 indexmap^2.02.13.0up to date
 schemars^1.0.21.2.1up to date
 serde_core^1.0.2251.0.228up to date
 serde_json^1.0.1451.0.149up to date
 serde_with_macros=3.17.03.17.0up to date
 smallvec ⚠️^11.15.1maybe insecure
 time ⚠️~0.3.360.3.47maybe insecure

Dev dependencies

(16 total, 1 outdated)

CrateRequiredLatestStatus
 expect-test^1.5.11.5.1up to date
 fnv^1.0.61.0.7up to date
 glob^0.3.30.3.3up to date
 jsonschema^0.33.00.42.1out of date
 mime^0.3.160.3.17up to date
 pretty_assertions^1.4.01.4.1up to date
 regex^1.12.11.12.3up to date
 rmp-serde^1.3.01.3.1up to date
 ron^0.120.12.0up to date
 rustversion^1.0.221.0.22up to date
 schemars^1.0.21.2.1up to date
 serde^1.0.1521.0.228up to date
 serde-xml-rs^0.8.10.8.2up to date
 serde_json^1.0.251.0.149up to date
 serde_test^1.0.1241.0.177up to date
 yaml_serde^0.10.30.10.3up to date

Security Vulnerabilities

smallvec: Buffer overflow in SmallVec::insert_many

RUSTSEC-2021-0003

A bug in the SmallVec::insert_many method caused it to allocate a buffer that was smaller than needed. It then wrote past the end of the buffer, causing a buffer overflow and memory corruption on the heap.

This bug was only triggered if the iterator passed to insert_many yielded more items than the lower bound returned from its size_hint method.

The flaw was corrected in smallvec 0.6.14 and 1.6.1, by ensuring that additional space is always reserved for each item inserted. The fix also simplified the implementation of insert_many to use less unsafe code, so it is easier to verify its correctness.

Thank you to Yechan Bae (@Qwaz) and the Rust group at Georgia Tech’s SSLab for finding and reporting this bug.

time: Denial of Service via Stack Exhaustion

RUSTSEC-2026-0009

Impact

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.

Patches

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.

Workarounds

Limiting the length of user input is the simplest way to avoid stack exhaustion, as the amount of the stack consumed would be at most a factor of the length of the input.