Pillow buffer overflow vulnerability
In _imagingcms.c in Pillow before 10.3.0, a buffer overflow exists because strcpy is used instead of strncpy.
In _imagingcms.c in Pillow before 10.3.0, a buffer overflow exists because strcpy is used instead of strncpy.
Pillow through 10.1.0 allows PIL.ImageMath.eval Arbitrary Code Execution via the environment parameter, a different vulnerability than CVE-2022-22817 (which was about the expression parameter).
An issue was discovered in Pillow before 10.0.0. It is a Denial of Service that uncontrollably allocates memory to process a given task, potentially causing a service to crash by having it run out of memory. This occurs for truetype in ImageFont when textlength in an ImageDraw instance operates on a long text argument.
Pillow versions before v10.0.1 bundled libwebp binaries in wheels that is vulnerable to CVE-2023-5129 (previously CVE-2023-4863). Pillow v10.0.1 upgrades the bundled libwebp binary to v1.3.2.
Heap buffer overflow in libwebp in Google Chrome prior to 116.0.5845.187 and libwebp 1.3.2 allowed a remote attacker to perform an out-of-bounds memory write via a crafted HTML page. (Chromium security severity: Critical)
Pillow before 9.3.0 allows denial of service via SAMPLESPERPIXEL. A large value in the SAMPLESPERPIXEL tag could lead to a memory and runtime DoS in TiffImagePlugin.py when setting up the context for image decoding.
Pillow before 9.2.0 performs Improper Handling of Highly Compressed GIF Data (Data Amplification).
When reading a TGA file with RLE packets that cross scan lines, Pillow reads the information past the end of the first line without deducting that from the length of the remaining file data. This vulnerability was introduced in Pillow 9.1.0, and can cause a heap buffer overflow. Opening an image with a zero or negative height has been found to bypass a decompression bomb check. This will now raise …
Pillow before 9.0.1 allows attackers to delete files because spaces in temporary pathnames are mishandled.
JpegImagePlugin may append an EOF marker to the end of a truncated file, so that the last segment of the data will still be processed by the decoder. If the EOF marker is not detected as such however, this could lead to an infinite loop where JpegImagePlugin keeps trying to end the file.
If the path to the temporary directory on Linux or macOS contained a space, this would break removal of the temporary image file after im.show() (and related actions), and potentially remove an unrelated file. This been present since PIL.
path_getbbox in path.c in Pillow has a buffer over-read during initialization of ImagePath.Path.
path_getbbox in path.c in Pillow improperly initializes ImagePath.Path.
PIL.ImageMath.eval in Pillow allows evaluation of arbitrary expressions, such as ones that use the Python exec method.
The pillow package is vulnerable to Regular Expression Denial of Service (ReDoS) via the getrgb function.
Pillow and PIL (aka Python Imaging Library) allow an attacker to pass controlled parameters directly into a convert function to trigger a buffer overflow in Convert.c.
An issue was discovered in Pillow For EPS data, the readline implementation used in EPSImageFile has to deal with any combination of \r and \n as line endings. It used an accidentally quadratic method of accumulating lines while looking for a line ending. A malicious EPS file could use this to perform a DoS of Pillow in the open phase, before an image was accepted for opening.
An issue was discovered in Pillow PSDImagePlugin.PsdImageFile lacked a sanity check on the number of input layers relative to the size of the data block. This could lead to a DoS on Image.open prior to Image.load.
APillow suffers from an out-of-bounds read in J2kDecode's' j2ku_gray_i.
Pillow suffers from an out-of-bounds read in J2kDecode's j2ku_graya_la.
For FLI data, FliDecode does not properly check that the block advance was non-zero, potentially leading to an infinite loop on load.
An issue was discovered in Pillow For BLP data, BlpImagePlugin did not properly check that reads (after jumping to file offsets) returned data. This could lead to a DoS where the decoder could be run a large number of times on empty data.
Impact Pillow before 8.1.1 allows attackers to cause a denial of service because the reported size of a contained image is not properly checked for a BLP container, and thus an attempted memory allocation can be very large. Patches An issue was discovered in Pillow before 6.2.0. When reading specially crafted invalid image files, the library can either allocate very large amounts of memory or take an extremely long period …
An issue was discovered in Pillow In TiffDecode.c, there is a negative-offset memcpy with an invalid size.
An issue was discovered in Pillow TiffDecode has a heap-based buffer overflow when decoding crafted YCbCr files because of certain interpretation conflicts with LibTIFF in RGBA mode.
An issue was discovered in Pillow In TiffDecode.c, there is an out-of-bounds read in TiffreadRGBATile via invalid tile boundaries.
An issue was discovered in Pillow There is an out-of-bounds read in SGIRleDecode.c.
An issue was discovered in Pillow The PDF parser allows a regular expression DoS (ReDoS) attack via a crafted PDF file because of a catastrophic backtracking regex.
Pillow allows attackers to cause a denial of service (memory consumption) because the reported size of a contained image is not properly checked for a BLP container, and thus an attempted memory allocation can be very large.
Pillow allows attackers to cause a denial of service (memory consumption) because the reported size of a contained image is not properly checked for an ICO container, and thus an attempted memory allocation can be very large.
Pillow allows attackers to cause a denial of service (memory consumption) because the reported size of a contained image is not properly checked for an ICNS container, and thus an attempted memory allocation can be very large.
In Pillow, TiffDecode has a heap-based buffer overflow when decoding crafted YCbCr files because of certain interpretation conflicts with LibTIFF in RGBA mode.
In Pillow, SGIRleDecode has a 4-byte buffer over-read when decoding crafted SGI RLE image files because offsets and length tables are mishandled.
In Pillow, PcxDecode has a buffer over-read when decoding a crafted PCX file because the user-supplied stride value is trusted for buffer calculations.
In libImaging/Jpeg2KDecode.c in Pillow, there are multiple out-of-bounds reads via a crafted JP2 file.
Pillow has multiple out-of-bounds reads in libImaging/FliDecode.c.
In libImaging/PcxDecode.c in Pillow, an out-of-bounds read can occur when reading PCX files where state->shuffle is instructed to read beyond state->buffer.
In libImaging/SgiRleDecode.c in Pillow, a number of out-of-bounds reads exist in the parsing of SGI image files, a different issue than CVE-2020-5311.
In Pillow, there are two Buffer Overflows in libImaging/TiffDecode.c.
There is a DoS vulnerability in Pillow before 6.2.2 caused by FpxImagePlugin.py calling the range function on an unvalidated 32-bit integer if the number of bands is large. On Windows running 32-bit Python, this results in an OverflowError or MemoryError due to the 2 GB limit. However, on Linux running 64-bit Python this results in the process being terminated by the OOM killer.
libImaging/TiffDecode.c in Pillow has a TIFF decoding integer overflow, related to realloc.
libImaging/PcxDecode.c in Pillow has a PCX P mode buffer overflow.
libImaging/SgiRleDecode.c in Pillow has an SGI buffer overflow.
libImaging/FliDecode.c in Pillow has an FLI buffer overflow.
When reading specially crafted invalid image files, the library can either allocate very large amounts of memory or take an extremely long period of time to process the image.
Heap-based buffer overflow in the j2k_encode_entry function in Pillow allows remote attackers to cause a denial of service (memory corruption) via a crafted Jpeg2000 file.
Pillow allows context-dependent attackers to execute arbitrary code by using the "crafted image file" approach, related to an "Insecure Sign Extension" issue affecting the ImagingNew in Storage.c component.
Pillow allows context-dependent attackers to obtain sensitive information by using the "crafted image file" approach, related to an "Integer Overflow" issue affecting the Image.core.map_buffer in map.c component.
Integer overflow in the ImagingResampleHorizontal function in libImaging/Resample.c in Pillow allows remote attackers to have unspecified impact via negative values of the new size, which triggers a heap-based buffer overflow.
Buffer overflow in the ImagingPcdDecode function in PcdDecode.c in Pillow and Python Imaging Library (PIL) allows remote attackers to cause a denial of service (crash) via a crafted PhotoCD file.
Buffer overflow in the ImagingLibTiffDecode function in libImaging/TiffDecode.c allows remote attackers to overwrite memory via a crafted TIFF file.
Buffer overflow in the ImagingFliDecode function in libImaging/FliDecode.c allows remote attackers to cause a denial of service (crash) via a crafted FLI file.
A flaw in PngImagePlugin.py is triggered when handling PNG image decompression. This may allow a remote attacker to cause a denial of service.
There is a flaw that is triggered when handling zero-length block headers. This may allow a remote attacker to crash the program.
Pillow might allow remote attackers to execute arbitrary commands via shell metacharacters in unspecified vectors related to CVE-2014-1932, possibly JpegImagePlugin.py.
In JpegImagePlugin.py, the load_jpeg(self) method generates a temporary file name and sends it to an external process. It is possible to alter the target file before it is read since the command line arguments are not kept secret.
In JpegImagePlugin.py, the load_jpeg(self) method makes an unsafe call to tempfile.mktemp(). It is possible to alter the temporary file between the moment the file is generated and the moment it is used.