---
id: CVE-2022-50466
title: 'fs/binfmt_elf: Fix memory leak in load_elf_binary()'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  fs/binfmt_elf: Fix memory leak in load_elf_binary()

  There is a memory leak reported by kmemleak:

    unreferenced object 0xffff88817104ef80 (size 224):
      comm "xfs_ad…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 0693ffebcfe5ac7b31f63ad54587007f7d96fb7b <
    706215300411d48db6b51a5832b872632a84bbc1
  - >-
    Linux >= 0693ffebcfe5ac7b31f63ad54587007f7d96fb7b <
    265b6fb780f57d10449a40e94219b28fa52479cc
  - >-
    Linux >= 0693ffebcfe5ac7b31f63ad54587007f7d96fb7b <
    acd9b4914f1c5928c7ae8ebc623d6291eb1a573a
  - >-
    Linux >= 0693ffebcfe5ac7b31f63ad54587007f7d96fb7b <
    594d2a14f2168c09b13b114c3d457aa939403e52
  - Linux 5.7
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: partial
  timestamp: '2026-11-05T20:11:34.610378Z'
published: '2025-10-01'
updated: '2026-11-05'
sourceUpdated: '2026-11-05T20:20:47.222Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2022-50466'
references:
  - url: 'https://git.kernel.org/stable/c/706215300411d48db6b51a5832b872632a84bbc1'
  - url: 'https://git.kernel.org/stable/c/265b6fb780f57d10449a40e94219b28fa52479cc'
  - url: 'https://git.kernel.org/stable/c/acd9b4914f1c5928c7ae8ebc623d6291eb1a573a'
  - url: 'https://git.kernel.org/stable/c/594d2a14f2168c09b13b114c3d457aa939403e52'
tags:
  - cve.org
epss: 0.00159
epssPercentile: 0.05087
ingestedAt: '2026-11-05T22:38:31.738Z'
---

## Overview

In the Linux kernel, the following vulnerability has been resolved:

fs/binfmt_elf: Fix memory leak in load_elf_binary()

There is a memory leak reported by kmemleak:

  unreferenced object 0xffff88817104ef80 (size 224):
    comm "xfs_admin", pid 47165, jiffies 4298708825 (age 1333.476s)
    hex dump (first 32 bytes):
      00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
      60 a8 b3 00 81 88 ff ff a8 10 5a 00 81 88 ff ff  `.........Z.....
    backtrace:
      [<ffffffff819171e1>] __alloc_file+0x21/0x250
      [<ffffffff81918061>] alloc_empty_file+0x41/0xf0
      [<ffffffff81948cda>] path_openat+0xea/0x3d30
      [<ffffffff8194ec89>] do_filp_open+0x1b9/0x290
      [<ffffffff8192660e>] do_open_execat+0xce/0x5b0
      [<ffffffff81926b17>] open_exec+0x27/0x50
      [<ffffffff81a69250>] load_elf_binary+0x510/0x3ed0
      [<ffffffff81927759>] bprm_execve+0x599/0x1240
      [<ffffffff8192a997>] do_execveat_common.isra.0+0x4c7/0x680
      [<ffffffff8192b078>] __x64_sys_execve+0x88/0xb0
      [<ffffffff83bbf0a5>] do_syscall_64+0x35/0x80

If "interp_elf_ex" fails to allocate memory in load_elf_binary(),
the program will take the "out_free_ph" error handing path,
resulting in "interpreter" file resource is not released.

Fix it by adding an error handing path "out_free_file", which will
release the file resource when "interp_elf_ex" failed to allocate
memory.

## Affected

- `Linux >= 0693ffebcfe5ac7b31f63ad54587007f7d96fb7b < 706215300411d48db6b51a5832b872632a84bbc1`
- `Linux >= 0693ffebcfe5ac7b31f63ad54587007f7d96fb7b < 265b6fb780f57d10449a40e94219b28fa52479cc`
- `Linux >= 0693ffebcfe5ac7b31f63ad54587007f7d96fb7b < acd9b4914f1c5928c7ae8ebc623d6291eb1a573a`
- `Linux >= 0693ffebcfe5ac7b31f63ad54587007f7d96fb7b < 594d2a14f2168c09b13b114c3d457aa939403e52`
- `Linux 5.7`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
