Skip to content

Commit 77f11ec

Browse files
JasonVranekManuelBilbaojclapisltitanb
authored
Sigp audit fixes (#438)
Co-authored-by: Manuel Iñaki Bilbao <manuel.bilbao@lambdaclass.com> Co-authored-by: Joe Clapis <jclapis@outlook.com> Co-authored-by: eltitanb <lorenzo@gattaca.com> Co-authored-by: ltitanb <163874448+ltitanb@users.noreply.github.com>
1 parent 2a1d315 commit 77f11ec

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

67 files changed

+6487
-1826
lines changed

.cargo/audit.toml

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# RUSTSEC-2026-0049: CRL revocation checking bug in rustls-webpki 0.101.7.
2+
#
3+
# Background: CRL (Certificate Revocation List) checking is an optional TLS
4+
# feature where a client fetches a list of revoked certificates from URLs
5+
# embedded in the cert itself, to confirm it hasn't been invalidated since
6+
# issuance. This is distinct from normal certificate validation.
7+
#
8+
# The bug: when a cert lists multiple CRL distribution point URLs, only the
9+
# first URL is checked; the rest are silently ignored. This matters only when
10+
# CRL checking is enabled AND the UnknownStatusPolicy is set to Allow (meaning
11+
# "if I can't determine revocation status, accept the cert anyway"). With that
12+
# combination, a revoked certificate from a compromised CA could be accepted.
13+
#
14+
# Why this does not affect Commit-Boost: the vulnerable code path is never
15+
# reached because no code in this codebase enables CRL checking at all.
16+
# TLS is used in four places: (1) relay communication via reqwest with
17+
# rustls-tls uses default CA validation with no CRL configured; (2) the signer
18+
# server presents a TLS certificate but does not check client revocation;
19+
# (3) the signer client pins a single self-signed certificate via
20+
# add_root_certificate — CRL is irrelevant for self-signed certs; (4) the Dirk
21+
# remote signer uses mTLS with a custom CA but again no CRL. In all cases the
22+
# buggy CRL code in rustls-webpki is never invoked.
23+
#
24+
# Blocked on sigp/lighthouse upgrading past v8.0.1 without a compilation
25+
# regression (SseEventSource missing cfg guard in eth2 error.rs).
26+
[advisories]
27+
ignore = ["RUSTSEC-2026-0049"]

.github/workflows/ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ jobs:
2626
- name: Install Rust toolchain
2727
uses: dtolnay/rust-toolchain@master
2828
with:
29-
toolchain: nightly-2025-06-26
29+
toolchain: nightly-2026-01-01
3030
components: clippy, rustfmt
3131

3232
- name: Install protoc

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ targets.json
1616
.idea/
1717
logs
1818
.vscode/
19+
certs/
1920

2021
# Nix
2122
.direnv/

0 commit comments

Comments
 (0)