11 月 4 日、Debian(DSA-6607-1)と Ubuntu(USN-8996-1)は、パッケージマネージャー APT 自体の脆弱性 CVE-2026-109518 を修正しました。発見者は Max Justicz 氏です。Debian のアドバイザリーによると、HTTP リダイレクトによって 2 つの異なるパッケージのダウンロードが同じ URI になると、APT はそれらを 1 つにまとめてしまい、HTTP ダウンロードの再開時のファイル処理が不適切なため、中間者攻撃者が検証後にパッケージを差し替え、root として任意のコードを実行できます。Ubuntu の評価は CVSS v4 で 7.7 です。
影響を受けるのは
- 攻撃者は APT とアーカイブの間の HTTP 通信を改ざんできる必要があり、NVD の説明には悪意のあるミラーやプロキシも明記されています。Debian と Ubuntu の公式アーカイブは既定で HTTP を使い、署名とハッシュで改ざんを防いでいますが、この脆弱性はまさに検証の後の段階を突くものです。
- 悪用には APT がリダイレクトをたどってダウンロードを再試行すること、つまり
Acquire::Retriesが 0 でないことが必要です。この値は Debian 12 と Ubuntu 22.04 から既定で 3 なので、これらのリリース以降の既定構成は影響を受けます。それより古いリリースは既定では影響を受けませんが、スクリプトで再試行を設定している場合は同じく修正が必要です。 - 同じ Debian の更新では、境界外アクセスの問題もいくつか修正されています。
修正版と更新方法
- Ubuntu:22.04 は apt
2.4.15ubuntu0.1、24.04 は2.8.4ubuntu0.1、26.04 は3.2.1ubuntu0.1、26.10 は3.3.3ubuntu0.1。20.04 以前は Ubuntu Pro の ESM で提供されます。 - Debian:13(trixie)は
3.0.4、12(bookworm)は2.6.2(DLA-4880-1)。 - インストール済みのバージョンは
apt-cache policy aptで確認できます。apt の更新そのものは古い apt で行われます。このアドバイザリーを oss-security メーリングリストに転送した研究者は、更新するまでAcquire::Retriesを 0 にすれば緩和できる可能性があると述べているので、慎重を期すならsudo apt -o Acquire::Retries=0 updateに続けてsudo apt -o Acquire::Retries=0 install --only-upgrade aptを実行します。
ついでにやっておきたい 2 つのこと
1 つ目は、ソースの設定に見覚えのないサードパーティーのミラーやプロキシがないか確認し、使えるところでは HTTPS のソースを使うことです。2 つ目は、「パッケージを入れたら毒を盛られる」ようなサプライチェーンのリスクは APT に限らないということで、9 月の npm の ChainDrop ワームもその一形態でした。こちらの記事で取り上げています。ディストリビューションの選び方とサポート中のリリースについてはVPS の OS の選び方とUbuntu 22.04 のサポート期限を、すでに誰かにいじられていないか心配なら侵入の調査を参照してください。