---
id: CVE-2023-5043
aliases:
  - GHSA-5wj4-wffq-3378
title: Ingress nginx annotation injection causes arbitrary command execution
summary: Ingress nginx annotation injection causes arbitrary command execution
severity: high
cvss: 7.6
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:L'
vendor: ingress-nginx
product: k8s.io/ingress-nginx
ecosystem: go
affected:
  - k8s.io/ingress-nginx < 1.9.0
patched:
  - k8s.io/ingress-nginx 1.9.0
published: '2023-10-25'
updated: '2026-08-07'
source: OSV
sourceUrl: 'https://osv.dev/vulnerability/GHSA-5wj4-wffq-3378'
references:
  - url: 'https://nvd.nist.gov/vuln/detail/CVE-2023-5043'
  - url: 'https://github.com/kubernetes/ingress-nginx/issues/10571'
  - url: 'https://groups.google.com/g/kubernetes-security-announce/c/pVsXsOpxYZo'
  - url: 'https://security.netapp.com/advisory/ntap-20240307-0012'
  - url: 'http://www.openwall.com/lists/oss-security/2023/10/25/4'
tags:
  - osv
  - go
  - exploit-available
epss: 0.02234
epssPercentile: 0.82052
ingestedAt: '2026-08-07T19:14:15.880Z'
exploits:
  github: 1
  githubRepos:
    - 'https://github.com/r0binak/CVE-2023-5043'
  checkedAt: '2026-09-24T07:52:50.309Z'
exploitAvailable: true
---

## Overview

### Issue Details
A security issue was identified in ingress-nginx where the nginx.ingress.kubernetes.io/configuration-snippet annotation on an Ingress object (in the networking.k8s.io or extensions API group) can be used to inject arbitrary commands, and obtain the credentials of the ingress-nginx controller. In the default configuration, that credential has access to all secrets in the cluster.

This issue has been rated High (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:L), and assigned CVE-2023-5043.

### Affected Components and Configurations
This bug affects ingress-nginx. If you do not have ingress-nginx installed on your cluster, you are not affected. You can check this by running kubectl get po -n ingress-nginx.

If you are running the “chrooted” ingress-nginx controller introduced in v1.2.0 (gcr.io/k8s-staging-ingress-nginx/controller-chroot), command execution is possible but credential extraction is not, so the High severity does not apply.

Multi-tenant environments where non-admin users have permissions to create Ingress objects are most affected by this issue.

#### Affected Versions
<v1.9.0
#### Versions allowing mitigation
v1.9.0
### Mitigation
Ingress Administrators should set the --enable-annotation-validation flag to enforce restrictions on the contents of ingress-nginx annotation fields.

### Detection
If you find evidence that this vulnerability has been exploited, please contact security@kubernetes.io

### Additional Details
See ingress-nginx Issue [#10571](https://github.com/kubernetes/ingress-nginx/issues/10571) for more details.

### Acknowledgements
This vulnerability was reported by suanve

Thank You,
CJ Cullen on behalf of the Kubernetes Security Response Committee

## Affected packages

- `k8s.io/ingress-nginx < 1.9.0`

## Remediation

Upgrade to a patched release:

- `k8s.io/ingress-nginx 1.9.0`
