GNU patch is vulnerable to a NULL pointer dereference when processing a specially crafted unified-diff patch file. Improper handling of consecutive end-of-file newline markers can corrupt internal hunk (single block of changes in diff) data structures, causing the application to pass a NULL pointer to fwrite() during patch processing. An attacker can trigger this condition with a malicious patch file, causing the utility to crash and resulting in a denial of service.
This issue has been fixed in the commit e6d6a4e021660679d7fc9150f981d4920f722313
The product dereferences a pointer that it expects to be valid but is NULL.
| Name | Vendor | Start Version | End Version |
|---|---|---|---|
| Patch | Gnu | * | 2.8.0 (including) |
| Red Hat Hardened Images | RedHat | patch-main-2.8-4.3.hum1 | * |
| Patch | Ubuntu | devel | * |
| Patch | Ubuntu | esm-infra-legacy/trusty | * |
| Patch | Ubuntu | esm-infra-legacy/xenial | * |
| Patch | Ubuntu | esm-infra/bionic | * |
| Patch | Ubuntu | esm-infra/focal | * |
| Patch | Ubuntu | jammy | * |
| Patch | Ubuntu | noble | * |
| Patch | Ubuntu | questing | * |
| Patch | Ubuntu | resolute | * |
| Patch | Ubuntu | upstream | * |