{"id":"CVE-2022-31671","aliases":["BIT-harbor-2022-31671","EUVD-2022-6909","GHSA-q76q-q8hw-hmpw"],"status":"published","title":"Harbor fails to validate the user permissions when reading and updating job execution logs through the P2P preheat execution logs","description":"Harbor fails to validate user permissions when reading and updating job execution logs through the P2P preheat execution logs. By sending a request that attempts to read/update P2P preheat execution logs and specifying different job IDs, malicious authenticated users could read all the job logs stored in the Harbor database.","severity":{"version":"3.1","score":7.4,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:L","level":"high","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-10","score":0.0053,"percentile":0.4514,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-285","CWE-863"],"published":"2022-09-09T19:47:03Z","modified":"2026-10-28T02:30:51Z","fixes":[{"ecosystem":"Go","package":"github.com/goharbor/harbor","fixed_in":["1.10.13","2.4.3","2.5.2"],"sources":["ghsa","osv"]},{"ecosystem":"Bitnami","package":"harbor","fixed_in":["2.4.3","2.5.2"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"Go","package":"github.com/goharbor/harbor","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.0.0"},{"last_affected":"1.10.12"},{"fixed":"1.10.13"}]}]},{"source":"ghsa","ecosystem":"Go","package":"github.com/goharbor/harbor","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"2.0.0"},{"last_affected":"2.4.2"},{"fixed":"2.4.3"}]}]},{"source":"ghsa","ecosystem":"Go","package":"github.com/goharbor/harbor","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"2.5.0"},{"last_affected":"2.5.1"},{"fixed":"2.5.2"}]}]},{"source":"osv","ecosystem":"Bitnami","package":"harbor","ranges":[{"type":"SEMVER","events":[{"introduced":"2.0.0"},{"fixed":"2.4.3"},{"introduced":"2.5.0"},{"fixed":"2.5.2"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/goharbor/harbor","ranges":[{"type":"SEMVER","events":[{"introduced":"1.0.0"},{"fixed":"1.10.13"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/goharbor/harbor","ranges":[{"type":"SEMVER","events":[{"introduced":"2.0.0"},{"fixed":"2.4.3"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/goharbor/harbor","ranges":[{"type":"SEMVER","events":[{"introduced":"2.5.0"},{"fixed":"2.5.2"}]}]}],"products":[{"vendor":"harbor","product":"harbor"},{"vendor":"linuxfoundation","product":"harbor"}],"references":[{"url":"https://github.com/goharbor/harbor/security/advisories/GHSA-q76q-q8hw-hmpw","tags":["Vendor Advisory","advisory","web"]},{"url":"https://github.com/goharbor/harbor/security/advisories/GHSA-3wpx-625q-22j7","tags":["Vendor Advisory","advisory","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-31671","tags":["web","advisory"]},{"url":"https://github.com/advisories/GHSA-q76q-q8hw-hmpw"},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/31xxx/CVE-2022-31671.json","tags":["advisory"]},{"url":"https://github.com/goharbor/harbor","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2022-31671","title":"Harbor fails to validate the user permissions when reading and updating job execution logs through the P2P preheat execution logs","description":"Harbor fails to validate user permissions when reading and updating job execution logs through the P2P preheat execution logs. By sending a request that attempts to read/update P2P preheat execution logs and specifying different job IDs, malicious authenticated users could read all the job logs stored in the Harbor database.","status":"published","published":"2024-11-14T11:42:22.373Z","modified":"2024-11-14T14:10:27.403Z","cvss":[{"version":"3.1","score":7.4,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:L","level":"high","assessor":"cna"}],"cwes":["CWE-285"],"updated_at":"2026-11-02T14:34:35.279735Z"}],"euvd":[{"id":"EUVD-2022-6909","description":"Harbor fails to validate user permissions when reading and updating job execution logs through the P2P preheat execution logs. By sending a request that attempts to read/update P2P preheat execution logs and specifying different job IDs, malicious authenticated users could read all the job logs stored in the Harbor database.","status":"published","published":"2024-11-14T11:42:22Z","modified":"2024-11-14T14:10:27Z","cvss":[{"version":"3.1","score":7.4,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:L","level":"high"}],"updated_at":"2026-11-03T00:05:00.76838Z"}],"ghsa":[{"id":"GHSA-q76q-q8hw-hmpw","title":"Harbor fails to validate the user permissions when reading job execution logs through the P2P preheat execution logs","description":"### Impact\nHarbor fails to validate the user permissions when reading job execution logs through the P2P preheat execution logs - API call\n\n  GET /projects/{project_name}/preheat/policies/{preheat_policy_name}/executions/{execution_id}/tasks/{task_id}/logs\n\nBy sending a request that attempts to read P2P preheat execution logs and specifying different job ids, malicious authenticatedusers could read all the job logs stored in the Harbor database.\n\n### Patches\nThis and similar issues are fixed in Harbor v2.5.2 and later. Please upgrade as soon as possible.\n\n### Workarounds\nThere are no workarounds available.\n\n### For more information\nIf you have any questions or comments about this advisory:\n* Open an issue in [the Harbor GitHub repository](https://github.com/goharbor/harbor)\n\n### Credits\nThanks to [Gal Goldstein](https://www.linkedin.com/in/gal-goldshtein/) and [Daniel Abeles](https://www.linkedin.com/in/daniel-abeles/) from [Oxeye Security](https://www.oxeye.io/) for reporting this issue.\n","status":"published","published":"2022-09-09T19:47:03Z","modified":"2024-11-19T20:36:37Z","cvss":[{"version":"3.1","score":5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:N/A:N","level":"medium"}],"cwes":["CWE-285","CWE-863"],"updated_at":"2026-11-02T14:38:21.777721Z"}],"nvd":[{"id":"CVE-2022-31671","description":"Harbor fails to validate user permissions when reading and updating job execution logs through the P2P preheat execution logs. By sending a request that attempts to read/update P2P preheat execution logs and specifying different job IDs, malicious authenticated users could read all the job logs stored in the Harbor database.","status":"published","published":"2024-11-14T12:15:17.25Z","modified":"2026-06-17T04:46:01.493Z","cvss":[{"version":"3.1","score":7.4,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:L","level":"high","assessor":"secondary"},{"version":"3.1","score":7.4,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:L","level":"high","assessor":"primary"}],"cwes":["CWE-285","CWE-863"],"updated_at":"2026-11-02T14:07:40.977475Z"}],"osv":[{"id":"CVE-2022-31671","title":"Harbor fails to validate the user permissions when reading and updating job execution logs through the P2P preheat execution logs","description":"Harbor fails to validate user permissions when reading and updating job execution logs through the P2P preheat execution logs. By sending a request that attempts to read/update P2P preheat execution logs and specifying different job IDs, malicious authenticated users could read all the job logs stored in the Harbor database.","status":"published","published":"2024-11-14T11:42:22.373Z","modified":"2026-10-28T02:30:51.704654335Z","cvss":[{"version":"3.1","score":7.4,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:L","level":"high"}],"cwes":["CWE-285"],"updated_at":"2026-11-02T15:44:25.516981Z"},{"id":"GHSA-q76q-q8hw-hmpw","title":"Harbor fails to validate the user permissions when reading job execution logs through the P2P preheat execution logs","description":"### Impact\nHarbor fails to validate the user permissions when reading job execution logs through the P2P preheat execution logs - API call\n\n  GET /projects/{project_name}/preheat/policies/{preheat_policy_name}/executions/{execution_id}/tasks/{task_id}/logs\n\nBy sending a request that attempts to read P2P preheat execution logs and specifying different job ids, malicious authenticatedusers could read all the job logs stored in the Harbor database.\n\n### Patches\nThis and similar issues are fixed in Harbor v2.5.2 and later. Please upgrade as soon as possible.\n\n### Workarounds\nThere are no workarounds available.\n\n### For more information\nIf you have any questions or comments about this advisory:\n* Open an issue in [the Harbor GitHub repository](https://github.com/goharbor/harbor)\n\n### Credits\nThanks to [Gal Goldstein](https://www.linkedin.com/in/gal-goldshtein/) and [Daniel Abeles](https://www.linkedin.com/in/daniel-abeles/) from [Oxeye Security](https://www.oxeye.io/) for reporting this issue.\n","status":"published","published":"2022-09-09T19:47:03Z","modified":"2026-02-04T04:22:02.59259Z","cvss":[{"version":"3.1","score":5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:N/A:N","level":"medium"}],"cwes":["CWE-285","CWE-863"],"updated_at":"2026-11-02T15:46:54.055966Z"},{"id":"BIT-harbor-2022-31671","title":"Harbor fails to validate the user permissions when reading and updating job execution logs through the P2P preheat execution logs","description":"Harbor fails to validate user permissions when reading and updating job execution logs through the P2P preheat execution logs. By sending a request that attempts to read/update P2P preheat execution logs and specifying different job IDs, malicious authenticated users could read all the job logs stored in the Harbor database.","status":"published","published":"2024-11-20T07:10:37.789Z","modified":"2026-09-08T08:47:51.632481115Z","updated_at":"2026-11-02T15:28:31.02759Z"}]}}
