============================================================================================================================================= | # Title : Improper Bounds Validation in VMDK Grain Marker Handling Leading to Potential Out-of-Bounds Read | | # Author : indoushka | | # Tested on : windows 11 Fr(Pro) / browser : Mozilla firefox 147.0.4 (64 bits) | | # Vendor : No standalone download available | ============================================================================================================================================= [+] Summary : A flaw may exist in the handling of compressed grain markers within the VMDK monolithicSparse format. If the size field in a grain marker is not properly validated against the remaining cluster boundary (excluding the marker header size), the decompression routine may process more data than safely available. This can potentially result in an out-of-bounds read condition due to improper bounds checking. The issue stems from failing to ensure that the declared compressed data size does not exceed the actual buffer space after accounting for the marker structure. Proper validation of marker size, boundary checks, and strict decompression limits are required to prevent memory safety violations. [+] POC : import struct def create_malicious_vmdk(filename): magic = b"KDMV" version = struct.pack("