Know every vulnerabilitybefore it knows you.
DevGuard continuously monitors your dependencies and alerts you when CVEs like this one affect your stack — with real-time threat intelligence built for developers.
GHSA-8pxw-9c75-6w56
No affected components available
Impact
A vulnerability exists in NeuVector versions up to and including 5.4.5, where a fixed string is used as the default password for the built-in admin account. If this password is not changed immediately after deployment, any workload with network access within the cluster could use the default credentials to obtain an authentication token. This token can then be used to perform any operation via NeuVector APIs.
In earlier versions, NeuVector supports setting the default (bootstrap) password for the admin account using a Kubernetes Secret named neuvector-bootstrap-secret. This Secret must contain a key named bootstrapPassword. However, if NeuVector fails to retrieve this value, it falls back to the fixed default password.
Patches
This issue is resolved in NeuVector version 5.4.6 and later. For rolling upgrades, it's strongly recommended to change the default admin password to a secure one.
Starting from version 5.4.6, NeuVector introduces additional Kubernetes RBAC permissions to ensure the bootstrap password can be securely managed via Secrets:
kubectl create role neuvector-binding-secret-controller \
--verb=create,patch,update --resource=secrets -n {neuvector}
kubectl create rolebinding neuvector-binding-secret-controller \
--role=neuvector-binding-secret-controller \
--serviceaccount=neuvector:controller \
--serviceaccount=neuvector:default -n {neuvector}
- These RBAC roles are automatically applied when deploying via Helm.
- If deploying or upgrading manually, you must create these roles before starting NeuVector.
NOTE: If these roles are not present, the NeuVector controller (from version 5.4.6 onward) does not start.
Behavior in Patched Versions
- Upgrades: NeuVector does not reset any existing account passwords. It's strongly recommended to change the default
adminpassword to a secure one. - New deployments:
- If
bootstrapPasswordis not set in the `neuvector-bootstrap-secret, NeuVector generates a secure password and stores it in the same Secret.
- If
On first login, the default admin must retrieve the password using:
kubectl get secret -n {neuvector} neuvector-bootstrap-secret \
-o go-template='{{ .data.bootstrapPassword | base64decode }}{{ "\n" }}'
The password must be changed during the first login via the NeuVector UI.
NOTE: If the default admin password is set using a Kubernetes ConfigMap or a persistent backup (not a fixed string), this value takes precedence over the Secret-based mechanism.
Workarounds
For existing vulnerable versions, log in to the NeuVector UI immediately after deployment and update the default admin password.
References
If you have any questions or comments about this advisory:
- Reach out to the SUSE Rancher Security team for security related inquiries.
- Open an issue in the NeuVector repository.
- Verify with our support matrix and product support lifecycle.
The vulnerability can be exploited over the network without needing physical access. It is easy for an attacker to exploit this vulnerability. An attacker does not need any special privileges or access rights. No user interaction is needed for the attacker to exploit this vulnerability. The impact is confined to the system where the vulnerability exists. There is a high impact on the confidentiality of the information. There is a high impact on the integrity of the data. There is a high impact on the availability of the system.
Active exploitation in the wild has been confirmed. Immediate patching or mitigation is required.
Probability that this vulnerability will be exploited in the wild within the next 30 days.
We did not find any exploit available. Neither in GitHub repositories nor in the Exploit-Database.
Browse More
Continuously monitor your dependencies and get alerted when vulnerabilities like this one affect your stack.
Checkout DevGuard