7-ZipのNTFSアーカイブ処理の脆弱性CVE-2026-48095
GitHub Security Labの2026年5月22日のアドバイザリによると、7-Zip 26.00のNTFSアーカイブ処理にヒープバッファオーバーフロー(CVE-2026-48095)があり、任意のコード実行やアプリのクラッシュに悪用されうる[17]。別のアドバイザリは、SquashFS・UDF・UEFI・WIM・Arなどの処理とサンプルアプリの問題8件を挙げた[18]。修正は26.01に含まれている[17、18]。
脆弱性の内容
| CVE | 概要 | 成立条件 | CVSS | 資料 |
|---|---|---|---|---|
| CVE-2026-48095(GHSL-2026-140) | NTFSの処理のヒープバッファオーバーフロー(CWE-787、CWE-190) | 細工したイメージ内の圧縮ファイルの展開・テスト。イメージを開く以外の利用者の操作は要らない | 8.8(GitHub Security Lab、CVE記録) | [8、17] |
| CVE-2026-48092(GHSL-2026-116) | SquashFSの断片オフセットの整数オーバーフローによるヒープメモリの開示(CWE-125) | 32ビット版 | 6.5(GitHub Security Lab)、4.3(CVE記録) | [10、18] |
| CVE-2026-48101(GHSL-2026-117) | UEFIカプセルの未初期化ヒープメモリの開示。最大約1 GiBを展開先のファイルに書き出す(CWE-908) | 切り詰めた.scapファイル | 6.5(GitHub Security Lab、CVE記録) | [11、18] |
| CVE-2026-48102(GHSL-2026-118) | UDFの最大3バイトの境界外読み取り(CWE-125) | - | 3.1(GitHub Security Lab、CVE記録) | [12、18] |
| CVE-2026-48103(GHSL-2026-119) | WIMのセキュリティ記述子のoff-by-oneの境界外読み取り(CWE-125) | - | 3.5(GitHub Security Lab)、4.3(CVE記録) | [13、18] |
| CVE-2026-48104(GHSL-2026-120) | SquashFSの未初期化ヒープの読み取り(CWE-908、CWE-125) | - | 4.2(GitHub Security Lab、CVE記録) | [14、18] |
| CVE-2026-48111(GHSL-2026-121) | UEFIの依存式のoff-by-oneの境界外読み取り(CWE-125) | - | 3.5(GitHub Security Lab)、4.3(CVE記録) | [15、18] |
| CVE-2026-48112(GHSL-2026-122) | ArのBSD SYMDEFの解析の4バイトの境界外読み取り(CWE-190、CWE-125) | - | 3.5(GitHub Security Lab)、6.5(CVE記録) | [16、18] |
NTFS処理のバッファの過小確保
GitHub Security LabのGHSL-2026-140によると、CInStreamのGetCuSize()は圧縮単位のバッファの大きさを32ビットのシフトで求めている[17]。NTFSのブートセクタの解析が受け付けるクラスタサイズは、2の30乗バイトまでである[17]。細工したNTFSイメージがClusterSizeLogを28以上にし、圧縮データの属性のCompressionUnitを4にすると、シフト量が32に達する[17]。これはC++では未定義動作である[17]。
GitHub Security Labの説明では、LZNT1圧縮を使うNTFSで、_inBufはディスクから読んだ圧縮データを、_outBufは展開後のデータを持つ[17]。どちらも圧縮単位1つ分の大きさであるべきところ、x86とx64のどちらでも、未定義動作によって_inBufは1バイトしか確保されない[17]。続くReadStream_FALSEが、攻撃者の制御する256 MBのデータをこのバッファに書き込み、最初の読み込みで溢れる[17]。
リリース版と同じコード生成の/O1ビルドをデバッガで解析した結果では、ストリームのオブジェクト(CInStream)が_inBufの304バイト後ろに確保されていた[17]。1回目のRead()がvtableのポインタを上書きし、2回目のRead()は壊れたvtableを通じて呼び出される[17]。GitHub Security Labは、これをvtableの乗っ取りとした[17]。
- x86とx64の両方のビルドが影響を受ける[17]。
- 32ビット版では
_inBufと_outBufがともに小さく確保され、ヒープのオーバーフローに必ず至る[17]。 - 64ビット版は
_outBufに8 GBを確保しようとし、確保が成功する環境(16 GB以上のRAMを持つ現在の一般的なシステム)でオーバーフローに至る[17]。 - GitHub Security Labは、64ビット版での確保の成功を64 GBの機械で確かめた[17]。
- メモリの少ない環境では確保に失敗し、影響がサービス拒否に限られることがある[17]。
- NTFSの処理は標準の
7z.dllで有効で、拡張子.ntfsと.imgに登録されている[17]。 - 拡張子に合う処理が開けなかったファイルは署名による判定でNTFSの処理に回り、.7z・.zip・.rarを含むどの拡張子でも開かれる[17]。
- Windowsでは、書き込み先の範囲に未割り当てのページかガードページがあると
ReadFileが失敗するため、攻撃者はヒープの配置を整える必要がありうる[17]。
サンプルの展開ツールと他の形式
GitHub Security LabのGHSL-2026-115〜122のアドバイザリによると、GHSL-2026-115はLZMA SDKのサンプル展開ツール7zDec(C/Util/7z/7zMain.c)のパストラバーサルである[18]。任意のファイル書き込みと、リモートでのコード実行に至りうる[18]。
GitHub Security Labは、xモードが展開先のパスを検証せず、eモードは影響を受けないと説明した[18]。CVEの欄には、番号の代わりに「Sample app」と書かれている[18]。7-Zip本体のC++の展開処理には、IsSafePathなどの保護がある[18]。
GHSL-2026-117で書き出される未初期化のヒープについて、GitHub Security Labは、長く動くGUIのセッションでは以前に処理したアーカイブの断片やファイルパス、展開した内容が含まれうるとした[18]。暗号化アーカイブのパスワードも、含まれうるものに挙げた[18]。
時系列
| 日付 | 主体 | 内容 | 資料 |
|---|---|---|---|
| 2026年 | GitHub Security Lab | GHSL-2026-115〜122をSourceForgeの非公開のissueで報告した | [18] |
| 2026年 | GitHub Security Lab | GHSL-2026-140をSourceForgeの非公開のissueで報告した | [17] |
| 2026年 | 7-Zip | 修正を含む26.01を公開した | [2、17、18] |
| 2026年 | GitHub(CNA) | CVE-2026-48095を予約した | [8] |
| 2026年 | GitHub Security Lab | GHSL-2026-140とGHSL-2026-115〜122のアドバイザリを公表した | [17、18] |
| 2026年 | GitHub(CNA) | CVE 8件の記録を公開した | [8、10、11、12、13、14、15、16] |
| 2026年 | NIST(NVD) | CVE-2026-48095の記録を公開した | [9] |
| 2026年 | CISA(ADP) | CVE-2026-48095の記録にSSVCの評価を加えた | [8] |
| 2026年 | Amazon Web Services | Amazon Linux 2023の7zipをALAS2023-2026-1820で修正した | [7] |
| 2026年 | SUSE | SUSE-SU-2026:22347-1を公開した | [6] |
| 2026年 | SUSE | SUSE-SU-2026:2696-1を公開した | [6] |
対象の製品と版
7-Zipは、NTFS・SquashFS・UDF・UEFI・ARなどを、展開だけに対応する形式として扱う[21]。GitHub Security Labは、GetCuSize()の計算がNTFSの圧縮ストリームへの対応を入れたときからあるとした[17]。
| 製品 | 影響を受ける版 | 修正版 | 資料 |
|---|---|---|---|
| 7-Zip(CVE-2026-48095) | 26.00以下 | 26.01 | [8、17] |
| 7-Zip(CVE-2026-48102) | 9.11以上26.01未満 | 26.01 | [12] |
| 7-Zip(CVE-2026-48104、CVE-2026-48111〔注2〕) | 9.18以上26.01未満 | 26.01 | [14、15] |
| 7-Zip(CVE-2026-48101) | 9.21以上26.01未満 | 26.01 | [11] |
| 7-Zip(CVE-2026-48092) | 9.34以上26.01未満。GitHub Security Labは9.18以降の32ビット版とし、64ビット版は影響を受けないとした | 26.01 | [10、18] |
| 7-Zip(CVE-2026-48103、CVE-2026-48112〔注3〕) | 9.34以上26.01未満 | 26.01 | [13、16] |
NVDは、CVE-2026-48095を26.01より前の7-Zipに当て、CVSSはGitHubの評価を「Secondary」として載せた[9]。
| 配布元 | 状態 | 修正版・アドバイザリ | 資料 |
|---|---|---|---|
| Debian(7zip、bookworm) | fixed | 22.01+really26.01+dfsg-0+deb12u1 | [3] |
| Debian(7zip、forky・sid) | fixed | 26.05+dfsg-1 | [3] |
| Debian(7zip、trixie) | vulnerable(no-dsa、Minor issue) | 25.01+dfsg-1~deb13u2が脆弱 | [3] |
| Debian(p7zip、bullseye) | fixed | 16.02+really26.01+dfsg-0+deb11u1(DLA-4681-1) | [3、4] |
| Ubuntu(7zip、22.04 LTS〜26.10) | Needs evaluation | - | [5] |
| SUSE(7zip) | 修正パッケージあり | 7zip >= 26.01-150400.9.6.1(SUSE-SU-2026:22347-1、SUSE-SU-2026:2696-1) | [6] |
| Amazon Linux(7zip、Amazon Linux 2023) | Fixed | ALAS2023-2026-1820 | [7] |
| Amazon Linux(p7zip、Amazon Linux 2 Extra) | No Fix Planned | - | [7] |
Ubuntuの優先度はMediumである[5]。SUSEは重要度をimportant、Amazon LinuxはImportantとし、CVSSをそれぞれ独自に評価した〔注1〕[6、7]。
悪用の状況
GHSL-2026-140は、512 MBの疎なNTFSイメージを作るPoC生成スクリプトgen_ntfs_sparse.pyと、UBSanでの検証結果を載せた[17]。@ITは、既存のNTFSフォーマットツールが64KB超のクラスタサイズに対応していないため、PoCはMFT構造などを個別に生成したと報じた[20]。
CISAのADP(Vulnrichment)は、CVE-2026-48095をSSVCで評価した[8]。悪用(Exploitation)は「poc」、自動化(Automatable)は「no」、技術的な影響(Technical Impact)は「total」である[8]。
修正と回避策
開発元の更新履歴は、26.01の項に「Some bugs and vulnerabilities were fixed.」と書き、CVE番号ごとに問題の処理と種類を記している[1]。SourceForgeのフォーラムでの26.01の告知は、変更点としてLinux版の巨大ページへの対応、-spoスイッチの追加、「some bugs were fixed」を挙げた[2]。
窓の杜は、7-Zipには自動更新機能がないと報じた[19]。7-Zipの最新版は、11月6日の26.06である[21]。
未公表の事項
- 開発元が26.01で加えた修正の内容(コードの変更点)
- CVE-2026-48095が攻撃に使われた事例の有無
7z.dllを同梱する他社製品の対応
注
出典
当事者
- [1]Igor Pavlov『HISTORY of the 7-Zip』(2026年4月27日公開、2026年11月6日更新)
- [2]Igor Pavlov『7-Zip / Discussion / Open Discussion: 7-Zip 26.01』(2026年4月27日公開)
関係組織
- [3]Debian Project『CVE-2026-48095 - Security Bug Tracker』(公開日不明、2026年11月7日閲覧)
- [4]Debian Project『DLA-4681-1 p7zip - security update』(公開日不明、2026年11月7日閲覧)
- [5]Canonical Ltd.『CVE-2026-48095』(2026年6月5日公開、2026年6月18日更新)
- [6]SUSE LLC『CVE-2026-48095 Common Vulnerabilities and Exposures』(公開日不明、2026年11月7日閲覧)
- [7]Amazon Web Services, Inc.『CVE-2026-48095』(2026年5月29日公開、2026年9月11日更新)
公的機関
- [8]CVE Program『CVE-2026-48095』(2026年6月5日公開、2026年6月8日更新)
- [9]National Institute of Standards and Technology『CVE-2026-48095』(2026年6月5日公開、2026年6月17日更新)
- [10]CVE Program『CVE-2026-48092』(2026年6月5日公開、2026年6月8日更新)
- [11]CVE Program『CVE-2026-48101』(2026年6月5日公開)
- [12]CVE Program『CVE-2026-48102』(2026年6月5日公開、2026年6月9日更新)
- [13]CVE Program『CVE-2026-48103』(2026年6月5日公開、2026年6月8日更新)
- [14]CVE Program『CVE-2026-48104』(2026年6月5日公開)
- [15]CVE Program『CVE-2026-48111』(2026年6月5日公開、2026年6月8日更新)
- [16]CVE Program『CVE-2026-48112』(2026年6月5日公開)
調査・観測
- [17]GitHub, Inc.『GHSL-2026-140: Heap Buffer Write Overflow in 7-Zip』(2026年5月22日公開)
- [18]GitHub, Inc.『GHSL-2026-115–GHSL-2026-122: Various memory access violations in 7-Zip』(2026年5月22日公開)
報道機関
- [19]株式会社インプレス『「7-Zip」にヒープバッファーオーバーフローの脆弱性、最新版への更新を』(2026年5月26日公開)
- [20]アイティメディア株式会社『7-Zipにヒープ破壊を引き起こす深刻な脆弱性 急ぎ対処を』(2026年5月28日公開、閲覧に会員登録が必要)
背景資料
- [21]Igor Pavlov『7-Zip』(公開日不明、2026年11月7日閲覧)
更新記録
- 2026年5月27日:公開した。
- 2026年5月28日:@ITの5月28日の記事(出典20)が伝えたPoCの作り方を「悪用の状況」に加えた。
- 2026年5月29日:Amazon Linuxの5月29日公開のページ(出典7)を加え、Amazon Linuxの評価を「対象の製品と版」と注に記した。
- 2026年6月5日:6月5日に公開されたCVE 8件の記録(出典8、10〜16)とNVDの記録(出典9)、Ubuntuのページ(出典5)を加え、「脆弱性の内容」の表1、「時系列」「対象の製品と版」と注を改めた。
- 2026年6月8日:CISAがCVE-2026-48095の記録に加えたSSVCの評価(出典8)を「悪用の状況」に、ALAS2023-2026-1820(出典7)を「時系列」と「対象の製品と版」に加え、CVE-2026-48092・48103・48111の記録の6月8日の更新版(出典10、13、15)に表1と表2を合わせた。
- 2026年6月9日:CVE-2026-48102の記録の6月9日の更新版(出典12)に表1と表2を合わせた。
- 2026年6月17日:NVDの記録の6月17日の更新版(出典9)に「対象の製品と版」の記述を合わせた。
- 2026年6月18日:Ubuntuのページの6月18日の更新版(出典5)に表3のUbuntuの行を合わせた。
- 2026年6月23日:SUSEのSUSE-SU-2026:22347-1(出典6)を「時系列」と表3に加えた。
- 2026年6月30日:SUSEのSUSE-SU-2026:2696-1(出典6)を「時系列」と表3に加えた。
- 2026年9月11日:Amazon Linuxのページの9月11日の更新版(出典7)に表3のAmazon Linuxの行を合わせた。
- 2026年11月6日:開発元の更新履歴の11月6日の版(出典1)と、最新版26.06を示す7-Zipのトップページ(出典21)を「対象の製品と版」と「修正と回避策」に加えた。
