GitHub Advisoryadvisory · PyPI
GHSA-mcg6-h362-cmq5 Improper Authorization in cobbler
MEDIUM
Official page ↗
- Aliases
- CVE-2022-0860
- Ecosystem
- PyPI
- Packages
- cobbler
- Severity
- Moderate
- CVSS vector
- CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:N
- Weaknesses
- CWE-285, CWE-863
- Reviewed
- 2022-03-11
Affected packages
• PyPI cobbler: < 3.3.2 → fixed in 3.3.2
Description
Impact
If PAM is correctly configured and a user account is set to expired, the expired user-account is still able to successfully log into Cobbler in all places (Web UI, CLI & XMLRPC-API).
The same applies to user accounts with passwords set to be expired.
Patches
There is a patch for the latest Cobbler `3.3.2` available, however a backport will be done for `3.2.x`.
Workarounds
• Delete expired accounts which are able to access Cobbler via PAM.
• Use `chage -l ` to lock the account. If the account has SSH-Keys attached then remove them completely.
References
• Originally discovered by @ysf at https://www.huntr.dev/bounties/c458b868-63df-414e-af10-47e3745caa1d/
How to test if my Cobbler instance is affected?
The following `pytest` test assumes that your PAM setup is correct. In case the added user is not able to login, this test does not make sense to be executed.
```python
def test_pam_login_with_expired_user():
# Arrange
# create pam testuser
test_username = "expired_user"
test_password = "password"
test_api = CobblerAPI()
subprocess_1 = subprocess.run(
["perl", "-e", "'print crypt(\"%s\", \"%s\")'" % (test_username, test_password)],
stdout=subprocess.PIPE
)
subprocess.run(["useradd", "-p", subprocess_1.stdout, test_username])
# change user to be expired
subprocess.run(["chage", "-E0", test_username])
# Act
result = pam.authenticate(test_api, test_username, test_password)
# Assert - login should fail
assert not result
```
For more information
If you have any questions or comments about this advisory:
• Open an issue in the Cobbler repository
• Ask in the Gitter/Matrix Chat
• Email us at [email protected]
Related
Alias · CVE (1)
- CVE-2022-0860 Improper Authorization in GitHub repository cobbler/cobbler prior to 3.3.2. vulnerability
References
- https://github.com/cobbler/cobbler/security/advisories/GHSA-mcg6-h362-cmq5 web
- https://nvd.nist.gov/vuln/detail/CVE-2022-0860 advisory
- https://github.com/cobbler/cobbler/commit/9044aa990a94752fa5bd5a24051adde099280bfa web
- https://github.com/advisories/GHSA-mcg6-h362-cmq5 advisory
- https://github.com/cobbler/cobbler package
- https://github.com/pypa/advisory-database/tree/main/vulns/cobbler/PYSEC-2022-177.yaml web
- https://huntr.dev/bounties/c458b868-63df-414e-af10-47e3745caa1d web
- https://lists.fedoraproject.org/archives/list/[email protected]/message/D4KCNZYBQC2FM5SEEDRQZO4LRZ4ZECMG web
- https://lists.fedoraproject.org/archives/list/[email protected]/message/DYWYHWVVRUSPCV5SWBOSAMQJQLTSBTKY web
- https://lists.fedoraproject.org/archives/list/[email protected]/message/IYSHMF6MEIITFAG7EJ3IQKVUN7MDV2XM web