Pillowは、Pythonの画像処理ライブラリです。バージョン2.0.0から13.0.0までのPillowには、_tiffWriteProcにおいて、libtiffを使用して圧縮されたTIFFデータを、BytesIOのようなファイルディスクリプタが利用できないターゲットに保存する際に、ヒープバッファオーバーフローと、古いヒープデータの情報漏洩が発生する問題があります。この問題は、コールバック関数が、現在の書き込み位置ではなく、以前のバッファサイズに基づいてメモリを割り当ててしまうために発生します。これにより、攻撃者が制御するTIFFタグや、保持されているICCプロファイルが、libtiffが前方へシークした後、割り当てられたメモリ領域を超えてコピーされる可能性があります。このオーバーフローは、プロセスをクラッシュさせ、コードの実行を可能にする可能性があります。また、圧縮されたTIFF出力において、64 KiBを超える未書き込みのアライメントギャップが存在する場合、特定のタグがなくても、古いヒープデータが漏洩する可能性があります。ファイルパスや、実際のファイルディスクリプタを持つターゲットには影響ありません。この問題は、バージョン13.0.0で修正されています。
CVSS 4.0: 9.2 (重大) (CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X)