New in this version of Lightning Terminal (LiT) : lnd v0.21.6-beta, taproot-assets v0.8.8, loop v0.35.2-beta, pool v0.7.2-beta and faraday v0.2.20-alpha
NOTE: There was no v0.17.9 release, as lnd v0.21.6-beta was shipped after v0.17.9 had already been tagged, leading to the decision to go straight to v0.17.10 containing lnd v0.21.6-beta.
⚠️ Security: CVE-2026-98432 (Linux kernel)
CVE-2026-98432 is a use-after-free in the Linux kernel's IPv4 TCP stack. It is not specific to MPTCP, but the demonstrated remote exploit requires an MPTCP listener, which Go 1.24+ enables by default. This release disables MPTCP listeners in lnd by default, which closes the demonstrated exploit path through lnd. It is a mitigation, not a fix: the kernel patch is the only fix.
Linux operators should:
- Upgrade to this release.
- Disable MPTCP on the host (
sudo sysctl -w net.mptcp.enabled=0), since other services on the machine are not covered by this release. - Install a patched kernel as soon as your distribution ships one.
If you cannot upgrade yet, start your existing binary with the environment variable GODEBUG=multipathtcp=0, which turns off Go's default MPTCP listeners. Do not set GODEBUG=multipathtcp=1 to re-enable MPTCP until your kernel is patched. The Go team's discussion of the issue is at golang/go#82717.
See the lnd release notes for the full instructions, including Docker and firewall guidance. Windows and macOS are not affected.
Bundled versions
| Component | Version or source revision |
|---|---|
| LND | v0.21.6-beta |
| Loop | v0.35.2-beta |
| Pool | v0.7.2-beta |
| Faraday | v0.2.20-alpha |
| Taproot Assets | v0.8.8 |
Database Migrations
Users upgrading from v0.16.1 or earlier must review the
v0.17.0 migration notes
before starting LiT. The first startup with a SQL backend requires explicit
confirmation. For noninteractive deployments, set auto-migrate-to-sql=true
in lit.conf or LIT_AUTO_MIGRATE_TO_SQL=true in the environment. To defer
migration, set databasebackend=bbolt before migration runs. Once migration
completes, the old bbolt database is tombstoned, and a downgrade to a version
before v0.17.0-alpha is unsupported.
Verifying the Release
Before publishing this draft, the release manager must sign
manifest-v0.17.10.txt and upload
manifest-roasbeef-v0.17.10.sig. Timestamp both
files with OpenTimestamps and upload their .ots proofs.
Import the release signing key from
https://github.com/lightningnetwork/lnd/blob/master/scripts/keys/ViktorT-11.asc
and verify its fingerprint is
C20A78516A0944900EBFCA29961CC8259AE675D4 . Alternatively, you can
also import ViktorT-11's key from the ubuntu key server:
gpg --keyserver hkps://keyserver.ubuntu.com --recv-keys C20A78516A0944900EBFCA29961CC8259AE675D4
gpg --verify manifest-ViktorT-11-v0.17.10.sig manifest-v0.17.10.txt
shasum -a 256 <downloaded-archive>
git verify-tag v0.17.10
Compare the computed archive hash with its entry in
manifest-v0.17.10.txt. The timestamp proofs
can be verified with:
ots verify manifest-v0.17.10.txt.ots
ots verify manifest-ViktorT-11-v0.17.10.sig.ots
Verifying the Release Binaries
Our release binaries are fully reproducible. Third parties are
able to verify that the release binaries were produced properly
without having to trust the release manager(s).
The release binaries are compiled with go1.27.3,
which is required by verifiers to arrive at the same ones. They
include the following build tags: litd, autopilotrpc,
signrpc, walletrpc, chainrpc, invoicesrpc,
watchtowerrpc, neutrinorpc, monitoring, peersrpc,
kvdb_postgres, kvdb_etcd and kvdb_sqlite. Note that these
are already included in the release script, so they do not need
to be provided.
The make docker-release tag=<tag> command can be used to
rebuild with the same flags used for the release. If one wishes
to build for only a single platform, then
make docker-release tag=<tag> sys=<OS-ARCH> can be used.
Verifying the Docker Images
To verify the litd and litcli binaries inside the docker
images against the reproducible release binaries, the manifest
file can be used: extract the image, compute the SHA-256 hash
of the contained binary with shasum -a 256 <filename> and
compare it with the corresponding entry in
manifest-v0.17.10.txt.
Release Notes
Contributors (Alphabetical Order)
- Viktor Torstensson