ImageSharpの脆弱性CVE-2026-106113、細工したTIFFでプロセスが終了するおそれ。3.2.0で要るライセンスキーと、2系・.NET Frameworkの扱い

公開 2026-11-01公表 2026-09-15更新 2026-11-01資料確認 2026-11-01.NETの脆弱性 33件のまとめ
対象製品ImageSharp
識別番号CVE-2026-106113
影響範囲2.0.0以上3.2.0未満・4.0.0以上4.1.2未満
修正情報4.1.2・3.2.0(2系は記載なし)

.NETの画像処理ライブラリImageSharpで、細工した32ビット浮動小数点のTIFFにヒストグラム平坦化(HistogramEqualization())をかけると、範囲外のメモリに触れてプロセスが終了するおそれがある脆弱性CVE-2026-106113が、2026年9月15日にSix Laborsから公表されました。修正版は4系が4.1.2、3系が3.2.0です。3.2.0からはビルドにライセンスキーが必要になり、2系と.NET Framework向けには修正版がありません。

2026-11-01更新:一次情報(提供元のアドバイザリ、NVD、NuGetのパッケージ、Six Laborsの文書)と照合し、3.2.0からのライセンスキー、2系・.NET Frameworkの扱い、NVDの説明文と3.2.0の関係を加えて書き直しました。

この記事の要点
  • 対象は、外部から受け取ったTIFFをImage<HalfVector4>として読み込み、HistogramEqualization()をかける処理です。リサイズや形式の変換だけの使い方は、この件の報告の条件に含まれていません。
  • 4系は4.1.2以上(最新は4.1.3)、3系は3.2.0に上げます。2系に修正版は無く、3系は.NET 6以上、4系は.NET 8以上が必要です。
  • 3.2.0と4系は、ImageSharpを直接参照するプロジェクトのReleaseビルドで、Six Laborsのライセンスキーを求めます。更新の前に、キーを用意できるかを確かめます。

01ImageSharpのCVE-2026-106113で起きること

提供元のアドバイザリによると、HistogramEqualization()は、画素の明るさ(輝度)からヒストグラムの位置を計算し、その値を確かめずにメモリ上の位置として使っていました。32ビット浮動小数点のTIFFに「正の無限大」の値を入れると、計算した位置が範囲を外れ、安全でないメモリへのアクセスが起きます。[1]

報告者の再現では、2.0.0・3.1.12・4.0.0・4.1.1でAccessViolationExceptionが起き、プロセスが終了しました。画像を処理するサービスが止まるおそれがあります。深刻度は提供元の評価でCVSS 3.1の7.5(可用性への影響が高)で、NVDも同じ値を載せています。[1][3]

無限大の画素を持つTIFFで、ヒストグラムの位置が範囲を外れ、プロセスが終了する

提供元のアドバイザリにある仕組みを、入口・処理・起きることの順に並べる。

攻撃者が用意したTIFF32ビット浮動小数点の画素に「正の無限大」の値を入れる
Image<HalfVector4>として読み込む

ImageSharpのHistogramEqualization()

輝度から位置を計算画素の明るさから、ヒストグラムの位置を求める
値を確かめずに使う計算した値を、そのままメモリ上の位置として使う
範囲外のメモリにアクセス
AccessViolationExceptionプロセスが終了し、画像を処理するサービスが止まるおそれ
報告者の再現と深刻度
2.0.0・3.1.12・4.0.0・4.1.1報告者の再現で、いずれもプロセスが終了した
CVSS 3.1の7.5可用性への影響が高。提供元の評価で、NVDも同じ値

出典 Six Labors「GHSA-j3p4-wp97-rph4」(2026-09-15)

02ImageSharpの脆弱性の対象になる処理

次の3つがそろう場合が対象です。報告の対象はHistogramEqualizationだけで、適応型のヒストグラム平坦化とAutoLevelは含まれていません。[1]

  • SixLabors.ImageSharpが2.0.0以上3.2.0未満、または4.0.0以上4.1.2未満(TIFFの読み込みは2.0.0から)
  • 攻撃者が用意した32ビット浮動小数点のTIFFを、Image<HalfVector4>として読み込む
  • 読み込んだ画像にHistogramEqualization()をかける

Webの画像の変換に使われるImageSharp.Webの標準の処理(リサイズ、形式、画質、背景色、向きの補正)には、ヒストグラム平坦化は含まれていません(当社がソースで確認)。自分のコードでHistogramEqualizationとHalfVector4を使っているかを探すと、見分けがつきます。[5]

03悪用の状況

2026年11月1日時点で、米国のCISAが公開している「悪用が確認された脆弱性の一覧(KEV)」には載っていません。

今後30日以内に悪用される確率の推定値(EPSS)は0.4%です(2026-11-01時点)。見込みは高くない部類ですが、推定値で、悪用されないことを保証するものではありません。

提供元のアドバイザリには、無限大の画素を持つTIFFを作ってプロセスを終了させるまでの再現用のコード(PoC)とDockerfileが載っています。アドバイザリには「悪用の事例は知られていない」と書かれていて、CISAのコーディネーターがCVEの記録に付けた評価(SSVC)も10月7日時点で悪用「なし」です。当社はPoCを検証していません。[1][3]

4.1.2の翌日に公表、3系の修正版は約4週間後で、悪用は11月1日時点で確認されていない

提供元の公表、修正版の公開、データベースへの登録の日付を並べる(日本時間)。

2026年9月14日

4系の修正版を公開
4.1.24系の修正版

9月15日

Six Laborsがアドバイザリを公表PoCとDockerfileも載せた
7.5提供元の評価(CVSS 3.1)

10月7日

NVDに登録CISAのコーディネーターの評価(SSVC)は悪用「なし」

10月8日

GitHub Advisory Databaseに収録

10月9日

3系の修正版を公開、アドバイザリを更新
3.2.03系の修正版

11月1日

KEVに未掲載アドバイザリは悪用の事例は知られていないと記載
0.4%EPSS(11月1日時点)

出典 Six Labors「GHSA-j3p4-wp97-rph4」(2026-09-15)、NVD「CVE-2026-106113」(2026-10-07)

04ImageSharpの対象の版と推奨する版

系列ごとの対象と修正版は次のとおりです。必要な.NETの版は、NuGetに登録された対応の環境です。[1][2][4]

系列対象推奨する版必要な.NET
4系4.0.0〜4.1.14.1.2以上(9月14日公開、最新は4.1.3).NET 8以上
3系3.0.0〜3.1.123.2.0(10月9日公開).NET 6以上
2系2.0.0以上記載なし(出典で確認).NET Framework 4.7.2・.NET Standard 2.0など

3系の修正版3.2.0は、4系の4.1.2から約4週間後の10月9日に公開され、アドバイザリも同じ日に更新されました。NVDの説明文は11月1日時点でも「4.1.2未満が対象、4.1.2で修正」のままで、これを写した脆弱性データベースでは3.2.0も対象と表示されることがあります。提供元のアドバイザリとNVDの対象の定義(CPE)は、どちらも3.2.0を修正版としています。[1][3]

4系は4.1.2以上、3系は3.2.0に上げ、2系には修正版が無い

系列ごとの対象と推奨する版、必要な.NET、ライセンスを並べる。

4系
対象4.0.0〜4.1.1
推奨する版4.1.2以上9月14日公開、最新は4.1.3
必要な.NET.NET 8以上
ライセンスSix Labors Split License。4.0.0からビルドにキーが要る
3系
対象3.0.0〜3.1.12
推奨する版3.2.010月9日公開
必要な.NET.NET 6以上
ライセンスSix Labors Split License。3.2.0からビルドにキーが要る
2系
対象2.0.0以上
推奨する版記載なし
必要な.NET.NET Framework 4.7.2・.NET Standard 2.0など
ライセンスApache License 2.0
だから 2系と.NET Frameworkのアプリは、.NET 6以降へ移って3.2.0か4系を入れる。

出典 Six Labors「GHSA-j3p4-wp97-rph4」(2026-09-15)、NuGet「SixLabors.ImageSharp」(2026-11-01確認)

05ImageSharpの版を確かめて上げる手順

  1. プロジェクトが参照しているImageSharpの版を、間接的な依存も含めて確かめます。

    ターミナル
    dotnet list package --include-transitive | grep -i imagesharp
  2. NuGetの脆弱性の情報で、対象の版が入っていないかも確かめます。

    ターミナル
    dotnet list package --vulnerable --include-transitive
  3. コードの中で、該当の処理を使っているかを探します。

    ターミナル
    grep -rn -E 'HistogramEqualization|HalfVector4' --include='*.cs' .
  4. 使っている系列の修正版へ上げます(4系か3系の、どちらかの行を実行します)。

    ターミナル
    dotnet add package SixLabors.ImageSharp --version 4.1.3
    dotnet add package SixLabors.ImageSharp --version 3.2.0
  5. ライセンスキーを環境変数から渡す場合は、プロジェクトファイルに次を足し、SIXLABORS_LICENSE_KEYに発行されたライセンスの全文を入れます(Six Laborsの文書の例)。

    csproj
    <PropertyGroup>
      <SixLaborsLicenseKey>$(SIXLABORS_LICENSE_KEY)</SixLaborsLicenseKey>
    </PropertyGroup>
  6. Releaseでビルドできることを確かめ、もう一度版を確かめます。コンテナのイメージなども作り直します。

    ターミナル
    dotnet build -c Release
    dotnet list package --include-transitive | grep -i imagesharp

06すぐに上げられないとき

提供元のアドバイザリに回避策の節はありません。次は、公表された成立条件から当社が整理した緩和策で、提供元の推奨ではありません。

  • 外部から受け取った浮動小数点のTIFFに、HistogramEqualization()をかけない
  • 処理の前に、画素に無限大などの有限でない値が含まれていないかを確かめる
  • TIFFを受け付ける必要がなければ、読み込む前に形式を確かめて拒否する

073.2.0と4系は、ビルドにライセンスキーが要る

Six Laborsの文書は、ImageSharpを直接参照するプロジェクトには、3系では3.2.0から、4系では4.0.0から、ビルドの際に有効なライセンスキーが必要だと説明しています。間接的な依存として入る場合は対象外で、提供元は「既存のライセンス条件の適用で、条件の変更ではない」としています。[6]

3.2.0のパッケージにはビルドのときにライセンスを確かめる処理が入っていて、キーが見つからないと、Debugのビルドは続けられますが、Releaseのビルドは失敗します。キーは、sixlabors.licをプロジェクトのフォルダに置くか、SixLaborsLicenseKey・SixLaborsLicenseFileのプロパティで渡します。[6][7]

3系以降のライセンスはSix Labors Split Licenseで、オープンソースのソフトウェアでの利用、非営利の団体、年間の総収入が100万米ドル未満の企業などはApache License 2.0で使え、それ以外は商用ライセンスが必要です。2系はApache License 2.0でした。前者に当たる場合も、キーの申し込みが要ります。[4][7][8]

082系・.NET Frameworkで使っている場合

2系向けの修正版は、アドバイザリに記載がありません。2系の最新は2025年11月の2.1.13で、NuGetはこの版にもこの件を表示しています。2系は.NET Framework 4.7.2や.NET Standard 2.0に対応していますが、3.2.0は.NET 6、4系は.NET 8向けで、.NET Frameworkのアプリには入れられません。[1][4]

その場合は、.NET 6以降へ移って3.2.0か4系を入れるか、移るまでの間、前の節の緩和策で該当の処理を止めます。2系から上げるときは、ライセンスの条件とキーの用意も確かめます。

脆弱性の公表・更新一覧で、.NETの関連情報を調べることもできます。

緊急の場合AI攻撃リスク即点検サービス公開情報と、契約後すぐに用意できるアクセスの記録から先に調べ、被害や狙われやすい構成がないかを早く確かめます。

よくある質問

画像のリサイズにしか使っていません。急いで上げる必要はありますか?

この件の条件には当たりません。ただし同じ3.2.0・4.1.2で、TIFFのCCITT符号化での範囲外の書き込み(CVE-2026-106110)など、他の処理の脆弱性も直っています。外部から受け取った画像を読み込むなら、上げる理由は残ります。[9][10][11]

脆弱性データベースで、3.2.0も対象と表示されます。

NVDの説明文が4系の修正版だけを書いているためです。提供元のアドバイザリは10月9日の更新で3.2.0を修正版としていて、NVDの対象の定義(CPE)も3.2.0未満を対象にしています。[1][3]

他のパッケージの依存で入っているだけでも、ライセンスキーは要りますか?

Six Laborsの説明では、キーが要るのは直接参照するプロジェクトだけです。ただし、間接的に入るImageSharpの版を上げるために自分のプロジェクトにPackageReferenceを足すと、直接の参照になり、キーを求められる場合があります。[6][8]

2系のまま修正版を待てますか?

アドバイザリは3系と4系の修正版だけを示していて、2系の修正版の記載はありません。2系は2025年11月の2.1.13の後、版が出ていません。[1][4]

出典・参考資料

  1. Six Labors:GHSA-j3p4-wp97-rph4(提供元のアドバイザリ)2026-09-15公表・10-09更新(日本時間) / 仕組み、対象(2.0.0以上3.2.0未満・4.0.0以上4.1.2未満)、修正版、再現の結果、PoC、悪用の事例は知られていないこと、CVSS 3.1 7.5
  2. GitHub Advisory Database:GHSA-j3p4-wp97-rph42026-10-08収録・10-26更新(日本時間) / 収録日、CVE-2026-106113との対応
  3. NVD:CVE-2026-1061132026-10-07登録(日本時間) / 説明文の記載、対象の定義(CPE)、CVSS 3.1 7.5、CISAのSSVC(悪用なし)
  4. NuGet:SixLabors.ImageSharp2026-11-01確認 / 各版の公開日(4.1.2は9月14日、3.2.0・4.1.3は10月9日)、対応の環境、2.1.13のライセンスと脆弱性の表示
  5. Six Labors:ImageSharp.Webの処理(src/ImageSharp.Web/Processors)2026-11-01確認 / 標準の処理がリサイズ・形式・画質・背景色・向きの補正であること
  6. Six Labors:ImageSharpの文書(License・How to use the license file)2026-10-09更新 / 3.2.0・4.0.0からビルドにライセンスキーが要ること、直接の参照だけが対象、キーの渡し方
  7. NuGet:SixLabors.ImageSharp 3.2.0のパッケージ(build/SixLabors.ImageSharp.targets・LICENSE)2026-10-09 / ビルドのときのライセンスの確認、Debugは続きReleaseは失敗すること、Six Labors Split Licenseの条件
  8. Six Labors:License Enforcement Changes and a New Subscription Tier2025-09-04 / ビルド時のライセンスキーの導入、直接の依存だけが対象、申し込みの対象
  9. Six Labors:GHSA-j9gm-c75j-xc9q(CVE-2026-106110)2026-09-15(日本時間) / TIFFのCCITT T4符号化での範囲外の書き込み、3.2.0・4.1.2で修正
  10. Six Labors:ImageSharp v3.2.0のリリースノート(PR #3208)2026-10-09 / 4系の脆弱性の修正とライセンスの確認を3系に取り込んだこと
  11. Six Labors:ImageSharp v4.1.2のリリースノート(PR #3187)2026-09-14 / 入力の検証の強化
  12. 修正のプルリクエスト:github.com/SixLabors/ImageSharp/pull/3187GitHub Advisoryの参考リンク / 修正の内容・経緯
  13. 修正のコミット:github.com/SixLabors/ImageSharp/commit/c4c4bf292298c026df470db1a17ff826515fd95dGitHub Advisoryの参考リンク / 修正の内容・経緯
  14. 修正のプルリクエスト:github.com/SixLabors/ImageSharp/pull/3208GitHub Advisoryの参考リンク / 修正の内容・経緯
  15. 修正のコミット:github.com/SixLabors/ImageSharp/commit/baa37cd19077b2a2a0c5667535111cf31d48c019GitHub Advisoryの参考リンク / 修正の内容・経緯

あわせて読みたい記事

PHP公表 2026-10-26

PHPのWindows版のBrotliの脆弱性、8.5.12-1などへの入れ替えとcURL・Guzzleの確かめ方(CVE-2026-111497)

PHPのWindows版に同梱のBrotliの脆弱性CVE-2026-111497は、米CISAが悪用を確認しています。10月21日の版も対象のままである理由、GuzzleやWordPressで自動展開が有効になる条件、8.5.12-1などへの入れ替えと確かめ方を説明します。

Python公表 2026-10-22

Brotliの脆弱性の確認方法、PythonとNode.jsで対象かを確かめて直す(CVE-2026-111497、コード実行のおそれ)

圧縮形式Brotliの展開処理の脆弱性CVE-2026-111497(HTTP2Shell)は、米CISAが悪用を確認しています。Pythonのbrotli・brotlicffi、Node.jsの同梱版などで、自分の版と構成が対象かを確かめる方法と修正版を、言語ごとに説明します。

Python公表 2026-05-22

Starletteの脆弱性BadHost、Hostヘッダーでパスによる認証の確認を回避されるおそれ。FastAPIを上げても古い版が残る場合の確かめ方

Starletteの脆弱性CVE-2026-48710(BadHost)は、細工したHostヘッダーでrequest.url.pathを偽り、パスで判定するアクセスの確認を回避されるおそれがあります。9月2日にKEVに追加されました。FastAPI・vLLM・LiteLLMの下で古いStarletteが残る例と、間接依存の確かめ方を説明します。