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 tiny_http

Dependencies

(6 total, 3 outdated, 2 possibly insecure)

CrateRequiredLatestStatus
 ascii^0.81.1.0out of date
 chrono ⚠️^0.40.4.38maybe insecure
 chunked_transfer^0.31.5.0out of date
 log^0.40.4.21up to date
 openssl ⚠️^0.100.10.64maybe insecure
 url^1.72.5.0out of date

Dev dependencies

(2 total, 1 outdated, 1 insecure)

CrateRequiredLatestStatus
 rustc-serialize ⚠️^0.30.3.25insecure
 sha1^0.6.00.10.6out of date

Security Vulnerabilities

chrono: Potential segfault in `localtime_r` invocations

RUSTSEC-2020-0159

Impact

Unix-like operating systems may segfault due to dereferencing a dangling pointer in specific circumstances. This requires an environment variable to be set in a different thread than the affected functions. This may occur without the user's knowledge, notably in a third-party library.

Workarounds

No workarounds are known.

References

rustc-serialize: Stack overflow in rustc_serialize when parsing deeply nested JSON

RUSTSEC-2022-0004

When parsing JSON using json::Json::from_str, there is no limit to the depth of the stack, therefore deeply nested objects can cause a stack overflow, which aborts the process.

Example code that triggers the vulnerability is

fn main() {
    let _ = rustc_serialize::json::Json::from_str(&"[0,[".repeat(10000));
}

serde is recommended as a replacement to rustc_serialize.

openssl: `openssl` `X509VerifyParamRef::set_host` buffer over-read

RUSTSEC-2023-0044

When this function was passed an empty string, openssl would attempt to call strlen on it, reading arbitrary memory until it reached a NUL byte.