{"id":"CVE-2026-91770","state":"PUBLISHED","title":"IceHRM before 36.0.0 Broken Access Control via Employee ID","description":"IceHRM before 36.0.0 fails to validate employee ownership on seven REST sub-resource endpoints, allowing authenticated employees to read any colleague's HR records. Attackers can substitute arbitrary employee IDs in skill, education, certification, language, leave, attendance, and status endpoints to access sensitive personnel data.","publishedAt":"2026-09-15T01:20:32.468Z","updatedAt":"2026-09-24T14:22:23.100Z","severity":{"score":7.1,"label":"High","version":"4.0","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N","source":"VulnCheck"},"assigner":"VulnCheck","products":["gamonoid icehrm"],"affected":[{"vendor":"gamonoid","product":"icehrm","defaultStatus":"unaffected","versions":[{"version":"0","status":"affected","lessThan":"36.0.0","versionType":"custom"}]}],"references":["https://github.com/gamonoid/icehrm/issues/375","https://github.com/gamonoid/icehrm/commit/19674f29a0591c985712dc4a5c841e21d7dbf971","https://github.com/gamonoid/icehrm/releases/tag/v36.0.0","https://github.com/gamonoid/icehrm/blob/e75ed7e45de41f7b2b3ea319d9406514afa2bf29/core/src/Employees/Rest/EmployeeSkillsRestEndPoint.php#L20-L51","https://github.com/gamonoid/icehrm","https://www.vulncheck.com/advisories/icehrm-before-36.0.0-broken-access-control-via-employee-id"],"weaknesses":["CWE-639"],"ingestedAt":"2026-10-29T20:13:34.582Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/91xxx/CVE-2026-91770.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-91770","state":"PUBLISHED","datePublished":"2026-09-15T01:20:32.468Z","dateUpdated":"2026-09-24T14:22:23.100Z","assignerShortName":"VulnCheck","assignerOrgId":"83251b91-4cc7-4094-a5c7-464a1b83ea10","dateReserved":"2026-09-15T00:45:12.081Z"},"containers":{"cna":{"title":"IceHRM before 36.0.0 Broken Access Control via Employee ID","descriptions":[{"lang":"en","value":"IceHRM before 36.0.0 fails to validate employee ownership on seven REST sub-resource endpoints, allowing authenticated employees to read any colleague's HR records. Attackers can substitute arbitrary employee IDs in skill, education, certification, language, leave, attendance, and status endpoints to access sensitive personnel data."}],"affected":[{"vendor":"gamonoid","product":"icehrm","defaultStatus":"unaffected","versions":[{"version":"0","status":"affected","lessThan":"36.0.0","versionType":"custom"}]}],"references":[{"url":"https://github.com/gamonoid/icehrm/issues/375","tags":["issue-tracking"]},{"url":"https://github.com/gamonoid/icehrm/commit/19674f29a0591c985712dc4a5c841e21d7dbf971","tags":["patch"]},{"url":"https://github.com/gamonoid/icehrm/releases/tag/v36.0.0","tags":["release-notes"],"name":"icehrm v36.0.0 Release Notes"},{"url":"https://github.com/gamonoid/icehrm/blob/e75ed7e45de41f7b2b3ea319d9406514afa2bf29/core/src/Employees/Rest/EmployeeSkillsRestEndPoint.php#L20-L51","tags":["technical-description"]},{"url":"https://github.com/gamonoid/icehrm","tags":["product"]},{"url":"https://www.vulncheck.com/advisories/icehrm-before-36.0.0-broken-access-control-via-employee-id","name":"VulnCheck Advisory: IceHRM before 36.0.0 Broken Access Control via Employee ID","tags":["third-party-advisory"]}],"metrics":[{"format":"CVSS","cvssV4_0":{"version":"4.0","vectorString":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N","attackVector":"NETWORK","attackComplexity":"LOW","attackRequirements":"NONE","privilegesRequired":"LOW","userInteraction":"NONE","vulnConfidentialityImpact":"HIGH","vulnIntegrityImpact":"NONE","vulnAvailabilityImpact":"NONE","subConfidentialityImpact":"NONE","subIntegrityImpact":"NONE","subAvailabilityImpact":"NONE","baseScore":7.1,"baseSeverity":"HIGH"}},{"format":"CVSS","cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"LOW","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"NONE","availabilityImpact":"NONE","baseScore":6.5,"baseSeverity":"MEDIUM"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-639","lang":"en","description":"Authorization Bypass Through User-Controlled Key","type":"CWE"}]}],"providerMetadata":{"shortName":"VulnCheck","orgId":"83251b91-4cc7-4094-a5c7-464a1b83ea10","dateUpdated":"2026-09-24T14:22:23.100Z"},"datePublic":"2026-06-14T00:00:00.000Z","cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:a:icehrm:icehrm:*:*:*:*:*:*:*:*","versionEndExcluding":"36.0.0"}]}]}],"credits":[{"lang":"en","value":"George Chen","type":"finder"}],"x_generator":{"engine":"vulncheck-endgame"}},"adp":[{"title":"CISA ADP Vulnrichment","references":[{"url":"https://github.com/gamonoid/icehrm/issues/375","tags":["exploit"]}],"metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-09-15T14:46:38.392085Z","id":"CVE-2026-91770","options":[{"Exploitation":"poc"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-09-15T14:47:00.081Z"}}]}}}