Skip to content

Exposure of Sensitive Information to an Unauthorized Actor in EyeDP

Low
ChrisMacNaughton published GHSA-c7jm-5429-v2pq Feb 5, 2022

Package

EyeDP (Product)

Affected versions

<= 1.0.0.0b1

Patched versions

1.0.0

Description

The Settings section of the administration area allows administrators and operators to change the secrets that establish trust in the single-sign on process, namely the SAML certificate and corresponding private key, and the OIDC signing key.

Such secrets can be also retrieved from the administration area, accessible to operators and administrators. If an administrator sets up such private keys, a different user with appropriate permissions (e.g., an operator) can subsequently obtain them in plaintext simply by browsing to the administration area, as shown in the following screenshot:

image

This is due to the fact that the fields oidc_signing_key and saml_key defined in the Setting model are both rendered by the corresponding textareas in the setting templates without checking whether the keys were originally set by the current user or not, as shown in the following code snippets (saml.html.erb and openid_connect.html.erb respectively).

<textarea name="setting[saml_key]" class="form-control"><%=Setting.saml_key %></textarea>
<textarea name="setting[oidc_signing_key]" class="form-control"><%= Setting.oidc_signing_key %></textarea>

Impact

Impact is limited to highly-privileged users. In case an operator or administrator account is compromised, or in case of a rogue operator or administrator, the private key could silently be exfiltrated, without any trace in the audit log. Subsequently, administrator and operators may impersonate EyeDP from the point of view of the service providers.

Patches

This issue is resolved in PR 385. Users should upgrade to the latest commit on main or to a 1.0.0 or later release.

Workarounds

None

For more information

If you have any questions or comments about this advisory:

Severity

Low

CVE ID

No known CVE

Weaknesses