Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-21045_and_CVE-2026-21048 — 細工されたTIFF/DNGファイルを生成し、Samsungのlibimagecodec.quram.soにおける領域外書き込みを誘発します。バイナリ解析と再現手順を含みます。 | Kitploit
ツール/GitHubGitHub/pealeap/cve-2026-21045_and_cve-2026-21048
Androidセキュリティ脆弱性分析エクスプロイトリバースエンジニアリングモバイルセキュリティバイナリ解析学習と教育バイナリエクスプロイト

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
GitHub
pealeap/cve-2026-21045_and_cve-2026-21048

CVE-2026-21045_and_CVE-2026-21048

細工されたTIFF/DNGファイルを生成し、Samsungのlibimagecodec.quram.soにおける領域外書き込みを誘発します。バイナリ解析と再現手順を含みます。

リポジトリを見る
11ヶ月前未レビュー

CVE-2026-21045 & CVE-2026-21048 — Samsung libimagecodec.quram.so OOB書き込みPoC

概要

このリポジトリには、Samsung Androidデバイスで使用されるQuramsoftイメージコーデックライブラリ (libimagecodec.quram.so) における境界外 (OOB) 書き込みの脆弱性を示す概念的なProof-of-Concept (PoC) ファイルが含まれています。

CVE形式タイプ重大度CVSS 4.0パッチ適用リリース
CVE-2026-21045TIFF境界外書き込み (CWE-787)重大8.4SMR Jul-2026 Release 1
CVE-2026-21048DNG境界外書き込み (CWE-787)高—SMR Jul-2026 Release 1

影響を受けるデバイス

  • Android 14、15、16を搭載したSamsung Galaxyデバイス
  • 具体的には: Galaxy Z Fold 7、Flip 7、Sシリーズ、Aシリーズ (例: A17)
  • セキュリティパッチがSMR Jul-2026 Release 1より前のデバイス
  • ライブラリ: /system/lib64/libimagecodec.quram.so

脆弱性のメカニズム

根本原因

この脆弱性は、IFD (Image File Directory) タグ解析関数 WINKJ_ReadExifField (64ビットバイナリ内オフセット 0x13a0a8) に存在します。この関数は、それぞれが12バイトの構造体である個々のTIFF/EXIF IFDエントリを処理します:

root@kitploit:~
Offset  Size  Field
------  ----  -----
0       2     Tag ID
2       2     Data Type (1=BYTE, 2=ASCII, 3=SHORT, 4=LONG, 5=RATIONAL, etc.)
4       4     Count (number of values)
8       4     Value / Offset to data

count * element_size > 4 の場合、4バイトのValueフィールドはファイルオフセット (実際のデータが存在する場所を指す) として扱われます。その後、コードはアドレス 0x13a258 で境界チェックを実行します:

root@kitploit:~
add w8, w6, w7    ; w8 = value_offset + (count * element_size)  [32-bit]
cmp w8, w5        ; compare against remaining buffer size
b.ls ok           ; if w8 <= buffer_size, proceed

整数オーバーフローによるバイパス

この脆弱性は、加算における32ビット符号なし整数オーバーフローです。攻撃者が value_offset と count * element_size の合計が小さな値にラップアラウンドするように細工すると、base + value_offset での実際のメモリアクセスが境界外であるにもかかわらず、チェックが通過します。

例 (UNDEFINEDタイプ、element_size = 1):

32ビット加算 0x17FFF + 0xFFFF0001 = 0x10008000 は 0x8000 に切り詰められ、これは buffer_size と等しくなります。チェックは通過しますが、実際のデータポインタ (base + 0x17FFF) は割り当てられたバッファの終端を0x7FFFバイト超えた位置にあります。

脆弱なコードパス

root@kitploit:~
TIFFReadDirectory / WINKJ_ReadTiffInfo
  └─> WINKJ_ReadTiffIFDInfo   (allocates IFD buffer)
       └─> for each IFD entry:
            └─> WINKJ_ReadExifField   (parses entry, reads value data)
                 └─> Switch on Data Type (jump table at 0x13a15c)
                      ├─ Type 0 (BYTE/ASCII/UNDEFINED):  handler at 0x13a15c
                      ├─ Type 3/8 (SHORT/SSHORT):       handler at 0x13a1d0
                      ├─ Type 4/9/11 (LONG/SLONG/FLOAT): handler at 0x13a17c
                      └─ Type 5/10/12 (RATIONAL/SRATIONAL/DOUBLE): handler at 0x13a1ac
                      Each handler -> reads data at offset -> bounds check at 0x13a258

PoCファイル

ファイル説明
cve-2026-21045_tiff_oob_poc.pypoc_crash.tif を生成 — 細工されたcount/offsetを持つASCIIタグを介してOOB書き込みを引き起こす不正なTIFF
cve-2026-21048_dng_oob_poc.pypoc_crash.dng を生成 — 細工されたcount/offsetを持つUNDEFINEDタグを介してOOB書き込みを引き起こす不正なDNG

使用方法

root@kitploit:~
# Generate TIFF PoC
python3 cve-2026-21045_tiff_oob_poc.py -o payload.tif

# Generate DNG PoC
python3 cve-2026-21048_dng_oob_poc.py -o payload.dng

# Transfer to device and trigger (e.g., via Gallery/MMS)
adb push payload.tif /sdcard/Download/
adb shell am start -a android.intent.action.VIEW -d file:///sdcard/Download/payload.tif -t image/tiff

期待される動作

パッチ未適用デバイス (セキュリティパッチ < 2026年7月) では、Samsung Gallery (またはQuramデコーダを使用する任意のアプリ) で細工されたTIFF/DNGファイルを開くと、ヒープメモリ破損が発生し、以下の結果につながる可能性があります:

  • アプリケーションのクラッシュ (SIGSEGV/SIGABRT)
  • ヒープへの境界外書き込み
  • 特定のヒープレイアウト下では: 潜在的な任意のコード実行

パッチ適用済みデバイス (SMR Jul-2026+) では、画像は無効として拒否されるか、安全に処理されるべきです。完全にパッチ適用済みのデバイスでのクラッシュは、別の未パッチの問題を示している可能性があります。

バイナリ解析の詳細

ライブラリ情報

root@kitploit:~
File:   libimagecodec.quram.so (64-bit)
SHA256: (verify against your copy)
NDK:    r23c (Android 21)
Built:  2021-12-31 (placeholder date)
Soname: libimagecodec.quram.so

主要関数

ディスパッチテーブル (タグタイプ → ハンドラ)

WINKJ_ReadExifField から抽出:

element_size = 1 のすべてのタイプ (BYTE、ASCII、UNDEFINED) は同じハンドラを共有し、整数オーバーフローによるバイパスに対して同様に脆弱です。

関連CVE

免責事項

これらのProof of Conceptは、教育およびセキュリティ研究目的のみで提供されています。これらは脆弱性のメカニズムを示し、ユーザーと開発者がリスクを理解するのに役立ちます。所有していない、またはテストする明示的な許可を得ていないシステムに対して、これらを使用しないでください。

参考リンク

  • https://nvd.nist.gov/vuln/detail/CVE-2026-21045
  • https://nvd.nist.gov/vuln/detail/CVE-2026-21048
  • https://security.samsungmobile.com/securityUpdate.smsb
  • https://gitlab.com/libtiff/libtiff/-/releases/v4.6.0
ツールをダウンロード
フィールド値 (16進数)10進数
count0xFFFF00014,294,901,761
element_size11
count * element_size0xFFFF0001 ≡ -65535 (mod 2³²)4,294,901,761
value_offset0x00017FFF98,303
value_offset + count*size0x00008000 (オーバーフロー!)32,768
buffer_size0x0000800032,768
チェック結果: 0x8000 <= 0x8000✅ PASS—
実際のメモリアクセス: base + 0x17FFFバッファを0x7FFFバイト超過❌ OOB
関数アドレス (64ビット)サイズ目的
WINKJ_ReadExifField0x13a0a8912個々のIFDエントリを解析 (脆弱)
WINKJ_ReadTiffIFDInfo0x139d28896すべてのIFDエントリを読み取る
WINKJ_ReadTiffInfo0x139ad4596高レベルTIFF情報パーサー
WINKJ_GetTiffInfo0x1393fc1752メインのTIFF解析エントリポイント
decodeTIFF0x1a2adc580libtiffを介してTIFF画像をデコード
getTIFFImageInfo0x1a2d20508TIFF画像のメタデータを取得
copySubImageBuffer0x0b2824324サブイメージ領域をコピー
TIFFReadDirectory0x1aac785896libtiff 4.6.0 ディレクトリリーダー
_TIFFMultiply320x1a2f1c56安全な32ビット乗算チェック
_TIFFMultiply640x1a2f5848安全な64ビット乗算チェック
タイプ名前要素サイズハンドラアドレス
1BYTE10x13a15c
2ASCII10x13a15c
3SHORT20x13a1d0
4LONG40x13a17c
5RATIONAL80x13a1ac
6SBYTE10x13a15c
7UNDEFINED10x13a15c
8SSHORT20x13a1d0
9SLONG40x13a17c
10SRATIONAL80x13a1ac
11FLOAT40x13a17c
12DOUBLE80x13a1ac
CVE説明ステータス
CVE-2025-58477libimagecodec.quram.so のIFDタグ解析におけるOOB書き込み (SMR Dec-2025)✅ パッチ適用済み
CVE-2026-20973libimagecodec.quram.so におけるOOB読み取り (SMR Jan-2026)✅ パッチ適用済み
CVE-2026-21045libimagecodec.media.quram.so のTIFF解析におけるOOB書き込み (SMR Jul-2026)⚠️ 私の環境では未パッチ
CVE-2026-21048libimagecodec.media.quram.so のDNG解析におけるOOB書き込み (SMR Jul-2026)⚠️ 私の環境では未パッチ
CVE-2026-4775libtiff 4.6.0 putcontig8bitYCbCr44tile における符号付き整数オーバーフロー⚠️ 私の環境では未パッチ
CVE-2024-7006libtiff tif_dirinfo.c におけるNULLポインタ参照✅ 4.6.1で修正済み