Pillowは、Pythonの画像処理ライブラリです。バージョン13.0.0以前のPillowでは、JPEGデコーダが、要求された縮小スケールに合わせてサイズが設定されたバッファに、フル幅の走査線を書き込むことができました。ImagingJpegDecodeは、縮小が要求された後、libjpegの実際の出力幅やコンポーネント数を検証していません。また、libjpeg-turbo 3.xにリンクされたビルドで処理された8ビットの非可逆的なSOF3 JPEGの場合、要求された縮小のパラメータが無視される可能性があります。攻撃者は、draft()またはthumbnail()関数を使用して縮小を要求するアプリケーションに、そのようなJPEGファイルを供給することができます。これにより、ヒープメモリが破損したり、プロセスがクラッシュしたり、最悪の場合、コードの実行が可能になる可能性があります。古いバージョンのlibjpeg-turbo 2.xやIJGのビルドでは、SOF3形式の入力が拒否されます。この問題は、バージョン13.0.0で修正されました。

CVSS 4.0: 9.2 (重大) (CVSS:4.0/AV:N/AC:H/AT:N/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)