CVE-2023-22463
Published: 04 January 2023
Summary
CVE-2023-22463 is a critical-severity Use of Hard-coded Credentials (CWE-798) vulnerability in Fit2Cloud Kubepi. Its CVSS base score is 9.8 (Critical).
Operationally, ranked in the top 0.3% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.
Deeper analysis
KubePi, an open-source Kubernetes management panel, is affected by CVE-2023-22463 in all versions through 1.6.2. The JWT authentication logic in session.go relies on a hard-coded JwtSigKey constant, so every online deployment uses the identical signing secret. This constitutes use of hard-coded credentials (CWE-798) and carries a CVSS 3.1 score of 9.8.
An unauthenticated network attacker can therefore craft arbitrary JWT tokens that are accepted by any reachable KubePi instance. Successful forgery grants full administrative control over the panel, which in turn permits takeover of the target organization’s Kubernetes cluster.
The issue is resolved in release 1.6.3 by reading the signing key from app.yml and falling back to a randomly generated value when the field is empty. The project’s GitHub Security Advisory and release notes state that no other mitigations exist and explicitly recommend upgrading. The associated EPSS score stands at 0.9152.
EU & UK References
- 🇪🇺 ENISA EUVD: EUVD-2023-0560
Vulnerability details
KubePi is a k8s panel. The jwt authentication function of KubePi through version 1.6.2 uses hard-coded Jwtsigkeys, resulting in the same Jwtsigkeys for all online projects. This means that an attacker can forge any jwt token to take over the…
more
administrator account of any online project. Furthermore, they may use the administrator to take over the k8s cluster of the target enterprise. `session.go`, the use of hard-coded JwtSigKey, allows an attacker to use this value to forge jwt tokens arbitrarily. The JwtSigKey is confidential and should not be hard-coded in the code. The vulnerability has been fixed in 1.6.3. In the patch, JWT key is specified in app.yml. If the user leaves it blank, a random key will be used. There are no workarounds aside from upgrading.
- CWE(s)
Related Threats
No named actor attribution yet. ATT&CK technique mapping in progress for this CVE.
Affected Assets
Mitigating Controls
Likely Mitigating Controls AI
Per-CVE control mapping for this CVE has not run yet; the list below is derived from the weakness types (CWEs) cited in the NVD entry.
Enables users to notice when hard-coded credentials have been exploited for unauthorized access.
Security training explicitly warns against hard-coded credentials, lowering their use in systems.
Policy and procedures prohibit hard-coded credentials in favor of managed authentication.
External identity providers eliminate the need for hard-coded credentials in applications.
Changing default authenticators prior to first use and protecting content prevents use of hard-coded credentials.
Central credential stores and rotation policies remove the need for hard-coded credentials in configuration files or code.
Intelligence programs surface reports of campaigns that abuse hard-coded credentials in products, prompting removal or replacement and thereby reducing successful exploitation.
Planned investment enables secure credential storage and management systems instead of hard-coded credentials.