Skip to content

fix(deps): bump ctutils to 0.4.4 (RUSTSEC-2026-0385) - #31

Merged
doublegate merged 1 commit into
mainfrom
fix/rustsec-2026-0385
Oct 23, 2026
Merged

doublegate merged 1 commit into
mainfrom
fix/rustsec-2026-0385

Conversation

@doublegate

@doublegate doublegate commented Oct 23, 2026 •

Copy link
Copy Markdown
Owner

Summary

  • ctutils 0.4.3 to 0.4.4 in Cargo.lock (RUSTSEC-2026-0385: non-constant-time mask generation and u128 comparisons). It reaches the kernel through ml-dsa, the package signature verifier.
  • CHANGELOG [Unreleased] entry.

The advisory was published 2026-10-23 and fails the Security Audit job on every branch, including PR #30.

Checks

  • cargo audit: clean apart from the allowed yanked spin 0.9.8 warning.
  • scripts/dev/gate.sh --boot --rootfs on this tree: exit 0.

🤖 Generated with Claude Code


Note

Low Risk
Lockfile-only patch bump for a known crypto timing advisory; no application logic changes.

Overview
Bumps the transitive dependency ctutils from 0.4.3 to 0.4.4 in Cargo.lock to address RUSTSEC-2026-0385 (non-constant-time mask generation and u128 comparisons in the prior release). That crate is pulled in via ml-dsa, which backs package signature verification in the kernel.

Documents the fix under [Unreleased] → Fixed in CHANGELOG.md so the security audit job can pass on branches that were failing on the advisory.

Reviewed by Cursor Bugbot for commit 6501a5e. Bugbot is set up for automated code reviews on this repo. Configure here.

ctutils 0.4.3 generates masks and compares u128 values in non-constant
time. It reaches the kernel through ml-dsa, the package signature
verifier. The advisory was published today and fails the Security Audit
job on every branch.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 23, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-23T11:59:45.714774Z 6501a5e PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@coderabbitai

coderabbitai Bot commented Oct 23, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: ASSERTIVE
  • Plan: Advanced
  • Run ID: 32c9958a-9e1b-4a43-8878-d798282ce6e0
📥 Commits

Reviewing files that changed from the base of the PR and between 0aa4394 and 6501a5e.

⛔ Files ignored due to path filters: 1
  • Cargo.lock is excluded by !**/*.lock
📒 Files selected for processing: 1
  • CHANGELOG.md

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 9 remain after this review.

📝 Summary

Summary by CodeRabbit

  • Documentation
    • Updated the unreleased changelog to record the cryptographic utility update to version 0.4.4.
    • The notes document timing-safety concerns in version 0.4.3, including mask generation and 128-bit comparisons, and indicate that the utility is used during signature verification.

The Unreleased changelog records a ctutils 0.4.4 update, describes timing-related issues in version 0.4.3, and identifies ml-dsa and the package signature verifier as the path into the kernel.

Changes: ctutils changelog note

Layer / File(s) Summary
Record ctutils update
CHANGELOG.md
The changelog records ctutils 0.4.4 and notes timing-related issues in 0.4.3. It identifies ml-dsa and the package signature verifier as the path into the kernel.

Priority: ➖ Normal

Estimated code review effort: 1 (Trivial) | ~2 minutes

Change: Other

Merge Risk: ⚪ Minimal · up to 6501a

This documentation-only change introduces no identified merge-blocking risk.

Architecture risk: 🔵 Low · up to 6501a

The change affects 1 system.

Changed systems: CHANGELOG.md

Architecture concerns
No architecture-level concerns identified.

Review details

Systems and components

  • observed — CHANGELOG.md (service) was modified; 1 changed file maps to changed impact.

Before / after behavior

  • observed — Modified behavior in CHANGELOG.md: Adds a changelog entry for ctutils 0.4.4, replacing the previously empty spot. It records the 0.4.3 timing-related issues and names ml-dsa and the package signature verifier as the path into the kernel.
Pre-merge checks: Passed 4 · Failed 1

Failed Failed checks: 1 warning

Check name Status Explanation Resolution
Description check Warning The description explains the dependency update, security impact, changelog change, and reported checks. However, it does not follow the repository template: it omits the required Type of Change, Relat… Update the description to use the repository template. Add the required headings and complete the Type of Change, Related Issues, Changes Made, Testing and Test Configuration, Checklist, Breaking Changes, Performance Impact, and Security Co…
Passed Passed checks: 4 passed
Check name Status Explanation
Title check Passed The title clearly and concisely identifies the dependency bump and the security advisory addressed.
Docstring Coverage Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage

Explanation

No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0 files. (1 skipped: 1 unsupported.)

Full details: Description check

Explanation

The description explains the dependency update, security impact, changelog change, and reported checks. However, it does not follow the repository template: it omits the required Type of Change, Related Issues, Changes Made, Checklist, Test Configuration, and other template sections.

Resolution

Update the description to use the repository template. Add the required headings and complete the Type of Change, Related Issues, Changes Made, Testing and Test Configuration, Checklist, Breaking Changes, Performance Impact, and Security Considerations sections. Mark applicable checklist items explicitly.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@github-actions

Copy link
Copy Markdown

Antigravity review (Gemini via Ultra)

Updates the transitive ctutils dependency in Cargo.lock from 0.4.3 to 0.4.4 to address RUSTSEC-2026-0385 and records the fix in CHANGELOG.md; this is a trivial lockfile and changelog update.

Blocking issues

None found.

Suggestions

None.

Nitpicks

None.

Automated first-pass review by agy on a self-hosted runner -- not a human review.

@codecov

codecov Bot commented Oct 23, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@doublegate
doublegate merged commit 0e7f770 into main Oct 23, 2026
31 checks passed
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.

1 participant