Nibabel
Monthly
Loading a malformed neuroimaging file in NiBabel (nipy nibabel through 5.4.2) can exhaust process memory: array_from_file in nibabel/volumeutils.py allocates a buffer sized from the header-declared array shape before it verifies how many bytes the file actually contains, so a tiny file whose header claims a 2^60-byte array forces an enormous allocation instead of an early error. Impact is availability-only - memory exhaustion and process crash, with no data disclosure, integrity impact, or code execution - and requires the victim to parse an attacker-supplied, uncompressed file. Remote reach therefore depends on a network-facing service that accepts neuroimaging uploads rather than on the library in isolation; no public exploit code and no confirmed active exploitation were identified, and the upstream fix exists only as pull request #1587, which awaits acceptance.
Loading a malformed neuroimaging file in NiBabel (nipy nibabel through 5.4.2) can exhaust process memory: array_from_file in nibabel/volumeutils.py allocates a buffer sized from the header-declared array shape before it verifies how many bytes the file actually contains, so a tiny file whose header claims a 2^60-byte array forces an enormous allocation instead of an early error. Impact is availability-only - memory exhaustion and process crash, with no data disclosure, integrity impact, or code execution - and requires the victim to parse an attacker-supplied, uncompressed file. Remote reach therefore depends on a network-facing service that accepts neuroimaging uploads rather than on the library in isolation; no public exploit code and no confirmed active exploitation were identified, and the upstream fix exists only as pull request #1587, which awaits acceptance.