圧縮ライブラリzlibが1.4に更新、メモリ破壊の欠陥を修正

圧縮ライブラリ zlib の
脆弱性の概要
- 対象
- 圧縮ライブラリ
- 悪用
- 確認されていない
- 影響
- 細工した入力で停止やコード実行のおそれ
- 修正版
- 修正版あり
- 公表元
- zlib / Debian / Ubuntu
| 製品 | 対象のバージョン | 修正版 |
|---|---|---|
| zlib(CVE-2026-76844) | 1.2.11〜1.3.2 | 1.4 |
| zlib(CVE-2026-85091) | 1.3.1.2〜1.3.2 | 1.4 |
| Debian 13(trixie) | 修正版より前 | 1:1.3.dfsg+really1.3.1-1+deb13u1 |
| Debian 12(bookworm) | 1:1.2.13.dfsg-1 | 修正版の案内なし |
| Ubuntu 26.04 LTS(CVE-2026-85091) | 修正版より前 | 1:1.3.dfsg+really1.3.1-1ubuntu3.2 |
| Ubuntu 24.04 LTS(CVE-2026-85091) | 修正版より前 | 1:1.3.dfsg-3.1ubuntu2.3 |
製品の履歴:Ubuntuの脆弱性一覧Debianの脆弱性一覧Linuxの脆弱性一覧公表されたらすぐ通知を受け取る
やること
zlib(データを圧縮・展開する部品)を、修正版へ更新してください。
- 公式の配布物は 1.4 です。開発者のサイトでは11月4日付で公開されています
- Debian 13 は11月7日の DSA-6613-1 で修正版が出ました。Debian のトラッカーでは、Debian 12 は「脆弱」と表示され、修正版の記載がありません(11月9日時点)
- Ubuntu は10月22日の USN-8954-1 で CVE-2026-85091 を修正済みです。対象は 24.04 LTS、26.04 LTS、26.10 です
Debian と Ubuntu は 1.4 へ上げずに今のバージョンへ修正だけを取り込みます。Debian 13 のパッケージが 1.3.1 の名前のままなのはこのためです。バージョン番号だけで判断せず、パッケージのバージョンを上の表と比べてください。同じ仕組みは curlに24件の脆弱性、HTTP/2の欠陥はHigh評価 でも説明しています。
zlib は多くのプログラムが読み込む共有ライブラリです。更新したあとも、動き続けているプログラムは再起動するまで古いものを使います。
何が危ないのか
1.4 で直った欠陥のうち CVE 番号があるものは、gzip 形式のファイルを書く関数の不具合です。
- CVE-2026-76844:下の層の書き込み(
write())が失敗すると、内部の位置の情報が古いまま残ります。次に書き込むと、確保した領域の外へ書いてしまいます。パイプの切断(EPIPE)のような失敗でも起きます。1.3.1.2 より前では失敗のあとにgzclearerr()を呼んだ場合に限ります - CVE-2026-85091:止まらずに処理を返す書き込み(非ブロッキング)で書き込みが詰まったあと、
gzprintf()かgzvprintf()を呼ぶと、内部の領域の外へ書いてしまいます
どちらも CVSS は 7.4(v3.1)で、認証なしにネットワークから攻撃できるという評価ですが、攻撃の複雑さは「高」です。Red Hat は悪用には特定のタイミングの条件が要ると説明しています。CVE 記録の CISA の評価では、攻撃を実証するコードがある段階(poc)で、攻撃を自動で広げる形は想定されていません。悪用の確認は公表されていません。Debian は、細工した入力を処理すると、停止や、場合によってはコードの実行につながると説明しています。
CVE 番号のない修正もあり、開発者は inflateGetDictionary() が呼び出し側の 32K の領域を最大 8MB 超えて書けた不具合を挙げています。窓の大きさが不正な zlib のヘッダーのあとに inflateReset() か inflateSync() を呼ぶと起き、1.3.1 と 1.3.2 が対象です。ZIP を扱う付属の部品 minizip では、展開のコマンド miniunz が展開先の外にフォルダーを作れた不具合を直しました。Windows ではどこにでもファイルを書けたとしています。
対象
CVE-2026-76844 は 1.2.11 から 1.3.2、CVE-2026-85091 は 1.3.1.2 から 1.3.2 が対象です。ただし Ubuntu は 1.3.0 でも検証用のコードで異常終了したと記しています。Ubuntu の CVE-2026-85091 のページでは、22.04 LTS から 16.04 LTS の zlib は対象外です。一方で、rsync、klibc、zsync という別のパッケージが、一部のリリースで「脆弱」と表示されています。
Debian の DSA-6613-1 には、CPU を使い続けてしまう欠陥 CVE-2026-27171 も含まれます。この欠陥は2月の 1.3.2 で直っており、CVSS は 2.9 です。
CVE 記録が公開されたのは8月から9月です。今回新しく出たのは、開発元の正式な修正版と Debian の修正版です。
1.4 には互換性の変更もあり、Windows で 1.3.2 のヘッダーを使って作ったアプリは作り直すよう求められています。MSVC で作る場合のライブラリのファイル名も変わりました。アプリの開発元が 1.4 を取り込む際の確認事項になります。
中小企業が学べること
zlib は OS の部品としてだけでなく、アプリの中にも入っています。圧縮の部品の欠陥は 圧縮形式Brotliに外からコード実行の脆弱性、悪用を確認 でも取り上げました。次の2つを手順にしておくと、更新を取りこぼしにくくなります。
- サーバーごとに、
dpkg -l zlib1gなどで入っているパッケージのバージョンを控えておく。告知の表とすぐに比べられる - 業務アプリやバックアップのソフトについて、同梱している部品の一覧(SBOM)を提供元に求めておく。zlib のように広く使われる部品の欠陥が出たとき、問い合わせる先がすぐに分かる
自社でプログラムを作っている場合は、gzwrite や gzprintf で gzip のファイルを書く処理がないかを、担当者や委託先に確かめてもらってください。
自社で確かめること
- OS の zlib を更新するDebian 13 は DSA-6613-1、Ubuntu 24.04 LTS と 26.04 LTS は USN-8954-1 の修正版が出ています。dpkg -l zlib1g でパッケージのバージョンを上の表と比べてください。
- zlib を同梱したソフトを洗い出すzlib を自分の中に持っているソフトは、OS を更新しても直りません。業務アプリやバックアップのソフトの提供元に、同梱している zlib のバージョンと更新の予定を聞いてください。
- gz 関数を使う自社のプログラムを伝えるgzwrite や gzprintf を使って gzip 形式のファイルを書くプログラムがあれば、開発の担当者や委託先に今回の修正を伝えてください。
出典
- zlib Home Site
- Releases · madler/zlib
- oss-security「zlib 1.4 released with security fixes」
- Debian「[SECURITY] [DSA 6613-1] zlib security update」
- Debian Security Tracker「CVE-2026-85091」
- Debian Security Tracker「CVE-2026-76844」
- Ubuntu「USN-8954-1: zlib vulnerability」
- Ubuntu「CVE-2026-85091」
- Red Hat「CVE-2026-85091」
- CVE 記録「CVE-2026-85091」
- CVE 記録「CVE-2026-76844」



コメント 0
まだコメントはありません。