A security issue was discovered in Kubernetes where a user
 that can create pods on Windows nodes may be able to escalate to admin 
privileges on those nodes. Kubernetes clusters are only affected if they
 include Windows nodes.

CVSS Rating: [CVSS:3.1/av:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H](https://www.first.org/cvss/calculator/3.1#CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H) - **HIGH** (8.8)

A security issue was discovered in Kubernetes where a user that can create pods on Windows nodes may be able to escalate to admin privileges on those nodes. Kubernetes clusters are only affected if they include Windows nodes.

### Am I vulnerable?

Any kubernetes environment with Windows nodes is impacted.  Run `kubectl get nodes -l kubernetes.io/os=windows` to see if any Windows nodes are in use.

#### Affected Versions

- kubelet <= v1.28.0
- kubelet <= v1.27.4
- kubelet <= v1.26.7
- kubelet <= v1.25.12
- kubelet <= v1.24.16

### How do I mitigate this vulnerability?

The provided patch fully mitigates the vulnerability (see fix impact below).  Full mitigation for this class of issues requires patches applied for CVE-2023-3676, CVE-2023-3955, and CVE-2023-3893.

Outside of applying the provided patch, there are no known mitigations to this vulnerability.

#### Fixed Versions

- kubelet master - fixed by #120128
- kubelet v1.28.1 - fixed by #120134
- kubelet v1.27.5 - fixed by #120135
- kubelet v1.26.8 - fixed by #120136
- kubelet v1.25.13 - fixed by #120137
- kubelet v1.24.17 - fixed by #120138

**Fix impact:** Passing Windows Powershell disk format options to in-tree volume plugins will result in an error during volume provisioning on the node.  There are no known use cases for this functionality, nor is this functionality supported by any known out-of-tree CSI driver.

To upgrade, refer to the documentation:
https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/

### Detection

Kubernetes audit logs can be used to detect if this vulnerability is being exploited. Pod create events with embedded powershell commands are a strong indication of exploitation.

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

#### Acknowledgements

This vulnerability was discovered by James Sturtevant @jsturtevant and Mark Rossetti @marosset during the process of fixing CVE-2023-3676 (that original CVE was reported by Tomer Peled @tomerpeled92)

The issue was fixed and coordinated by the fix team: 

James Sturtevant @jsturtevant
Mark Rossetti @marosset
Andy Zhang @andyzhangx
Justin Terry @jterry75
Kulwant Singh @KlwntSingh
Micah Hausler @micahhausler
Rita Zhang @ritazh

and release managers:

Jeremy Rickard @jeremyrickard
CVE-2023-3955: Insufficient input sanitization on Windows nodes leads to privilege escalation
This is a GitHub Issue
repo:kubernetes
owner:kubernetes
Title : CVE-2023-3955: Insufficient input sanitization on Windows nodes leads to privilege escalation
Issue date:

--- start body ---
CVSS Rating: [CVSS:3.1/av:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H](https://www.first.org/cvss/calculator/3.1#CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H) - **HIGH** (8.8)

A security issue was discovered in Kubernetes where a user that can create pods on Windows nodes may be able to escalate to admin privileges on those nodes. Kubernetes clusters are only affected if they include Windows nodes.

### Am I vulnerable?

Any kubernetes environment with Windows nodes is impacted.  Run `kubectl get nodes -l kubernetes.io/os=windows` to see if any Windows nodes are in use.

#### Affected Versions

- kubelet <= v1.28.0
- kubelet <= v1.27.4
- kubelet <= v1.26.7
- kubelet <= v1.25.12
- kubelet <= v1.24.16

### How do I mitigate this vulnerability?

The provided patch fully mitigates the vulnerability (see fix impact below).  Full mitigation for this class of issues requires patches applied for CVE-2023-3676, CVE-2023-3955, and CVE-2023-3893.

Outside of applying the provided patch, there are no known mitigations to this vulnerability.

#### Fixed Versions

- kubelet master - fixed by #120128
- kubelet v1.28.1 - fixed by #120134
- kubelet v1.27.5 - fixed by #120135
- kubelet v1.26.8 - fixed by #120136
- kubelet v1.25.13 - fixed by #120137
- kubelet v1.24.17 - fixed by #120138

**Fix impact:** Passing Windows Powershell disk format options to in-tree volume plugins will result in an error during volume provisioning on the node.  There are no known use cases for this functionality, nor is this functionality supported by any known out-of-tree CSI driver.

To upgrade, refer to the documentation:
https://kubernetes.io/docs/tasks/administer-cluster/cluster-upgrade/

### Detection

Kubernetes audit logs can be used to detect if this vulnerability is being exploited. Pod create events with embedded powershell commands are a strong indication of exploitation.

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

#### Acknowledgements

This vulnerability was discovered by James Sturtevant @jsturtevant and Mark Rossetti @marosset during the process of fixing CVE-2023-3676 (that original CVE was reported by Tomer Peled @tomerpeled92)

The issue was fixed and coordinated by the fix team: 

James Sturtevant @jsturtevant
Mark Rossetti @marosset
Andy Zhang @andyzhangx
Justin Terry @jterry75
Kulwant Singh @KlwntSingh
Micah Hausler @micahhausler
Rita Zhang @ritazh

and release managers:

Jeremy Rickard @jeremyrickard
--- end body ---
