CVE-2022-39273: Default OAuth Authorization Server secret in FlyteAdmin
Impact Users who enable the default Flyte’s authorization server without changing the default clientid hashes will be exposed to the public internet.
In an effort to make enabling authentication easier for Flyte administrators, the default configuration for Flyte Admin allows access for Flyte Propeller even after turning on authentication via a hardcoded hashed password. This password is also set on the default Flyte Propeller configmap in the various Flyte Helm charts. Users who enable auth but do not override this setting in Flyte Admin’s configuration may unknowingly allow public traffic in by way of this default password with attackers effectively impersonating propeller. This only applies to users who have not specified the ExternalAuthorizationServer setting. Using an external auth server automatically turns off this default configuration is not susceptible to this vulnerability.
Patches 1.1.44
Workarounds Users should manually set the staticClients in the selfAuthServer section of their configuration if they intend to rely on Admin’s internal auth server.
References https://github.com/flyteorg/flyteadmin/pull/478 https://docs.flyte.org/en/latest/deployment/clusterconfig/authsetup.html#oauth2-authorization-server
For more information If you have any questions or comments about this advisory: Open an issue in Flyte Email us here
Other sources
FlyteAdmin is the control plane for the data processing platform Flyte. Users who enable the default Flyte’s authorization server without changing the default clientid hashes will be exposed to the public internet. In an effort to make enabling authentication easier for Flyte administrators, the default configuration for Flyte Admin allows access for Flyte Propeller even after turning on authentication via a hardcoded hashed password. This password is also set on the default Flyte Propeller configmap in the various Flyte Helm charts. Users who enable auth but do not override this setting in Flyte Admin’s configuration may unbeknownst to them be allowing public traffic in by way of this default password with attackers effectively impersonating propeller. This only applies to users who have not specified the ExternalAuthorizationServer setting. Usage of an external auth server automatically turns off this default configuration and are not susceptible to this vulnerability. This issue has been addressed in version 1.1.44. Users should manually set the staticClients in the selfAuthServer section of their configuration if they intend to rely on Admin’s internal auth server. Again, users who use an external auth server are automatically protected from this vulnerability.
Affected Software
Remediation
Patch Available
Event History
Frequently Asked Questions
What is CVE-2022-39273?
CVE-2022-39273 is a vulnerability in FlyteAdmin, the control plane for the data processing platform Flyte, which exposes users to the public internet if they enable the default authorization server without changing the default clientid hashes.
What is FlyteAdmin?
FlyteAdmin is the control plane for the data processing platform Flyte.
How does CVE-2022-39273 impact FlyteAdmin users?
CVE-2022-39273 exposes FlyteAdmin users to the public internet if they enable the default authorization server without changing the default clientid hashes.
What is the severity of CVE-2022-39273?
CVE-2022-39273 has a severity rating of 7.5 / 10, which is considered high.
How can I fix CVE-2022-39273 in FlyteAdmin?
To fix CVE-2022-39273 in FlyteAdmin, you should follow the instructions provided in the references section to enable authentication with Flyte's authorization server and update the clientid hashes.