Revert "deps(rust): bump time to 0.3.47 to fix CVE-2026-25727"#286
Revert "deps(rust): bump time to 0.3.47 to fix CVE-2026-25727"#286up2wing wants to merge 1 commit into
Conversation
This reverts the time 0.3.47 portion of TencentCloud#267, which is incompatible with the project's hypervisor MSRV. time 0.3.47 transitively depends on time-core 0.1.8 (pinned exactly), which sets edition = "2024" in its Cargo.toml. edition2024 requires Rust >= 1.85.0, but cube-hypervisor declares MSRV 1.77.0 in its Cargo.toml and the hypervisor CI job (.github/workflows/hypervisor- integration.yaml) runs against the cloud-hypervisor:20240507-0 image which ships cargo 1.77.0. With time 0.3.47 in hypervisor/Cargo.lock the CI fails at the manifest-parsing stage: error: failed to parse manifest at .../time-core-0.1.8/Cargo.toml feature `edition2024` is required CVE-2026-25727 is a stack-exhaustion DoS that requires parsing user input with the RFC 2822 well-known format. This codebase only uses time::format_description::well_known::Rfc3339 (in CubeShim/shim/src/log/mod.rs) for outbound timestamp formatting and never invokes Rfc2822 parsing on untrusted input, so the affected attack vector is not reachable. Restore agent/Cargo.toml, agent/Cargo.lock and hypervisor/Cargo.lock to their pre-TencentCloud#267 time entries. The other security fixes from TencentCloud#267 (vmm-sys-util, bytes, env_logger) are unaffected and remain in place. CVE-2026-25727 should be tracked separately and addressed only when the project is ready to raise its MSRV. Assisted-by: CodeBuddy:Claude-Opus-4.7 Signed-off-by: Yi Wang <foxywang@tencent.com>
|
/cubebot review |
|
Claude finished @kinwin-ustc's task in 1m 25s —— View job Review of PR #286: Revert "deps(rust): bump time to 0.3.47 to fix CVE-2026-25727"SummaryThis PR selectively reverts the Root Cause Verified
Severity: 🟢 Correctly identified and cleanly scoped. CVE Risk Assessment
Changes Review1.
|
Summary
The
time 0.3.47portion of #267 brokehypervisor-integrationCI.Revert that single bump while keeping the other security fixes from
#267 (vmm-sys-util, bytes, env_logger).
Why
time 0.3.47pinstime-core =0.1.8, which is the firsttime-corerelease that uses
edition = "2024".edition2024requires Rusthypervisor/Cargo.tomldeclaresrust-version = "1.77.0"hypervisor-integration.yamlrunsdev_cli.sh testsagainstghcr.io/cloud-hypervisor/cloud-hypervisor:20240507-0, which shipscargo 1.77.0So CI fails at the manifest-parsing stage:
error: failed to parse manifest at .../time-core-0.1.8/Cargo.toml feature edition2024 is required
Why It's Safe to Revert the Time Bump
CVE-2026-25727 is a stack-exhaustion DoS that requires parsing
user-controlled input with the RFC 2822 format. This codebase
only uses
time::format_description::well_known::Rfc3339(inCubeShim/shim/src/log/mod.rs) for outbound timestamp formatting,and never invokes Rfc2822 parsing on untrusted input. The vulnerable
attack vector is not reachable here.
Why Not Just Bump CI / MSRV
Raising the MSRV would conflict with downstream constraints: cube-shim
uses
rust-toolchain.toml = "1.77.2"and links the hypervisor cratethrough a path dependency, so the hypervisor library must remain
buildable on the same toolchain.
Verification
cargo metadata --lockedsucceeds inhypervisor/undercloud-hypervisor:20240507-0(cargo 1.77.0).make shimsucceeds end-to-end.agent/Cargo.toml,agent/Cargo.lock,hypervisor/Cargo.lock), restoring exactly the pre-CVE fix #267 state ofthe
timefamily.