{
  "affected": [
    {
      "ranges": [
        {
          "database_specific": {
            "extracted_events": [
              {
                "introduced": "0"
              },
              {
                "fixed": "2.0.0"
              }
            ],
            "source": [
              "AFFECTED_FIELD",
              "REFERENCES"
            ]
          },
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "87a23ecaf2944c15dc5c131f813d2b83fd56eaa0"
            },
            {
              "fixed": "edf0a1d18cec6b3d83437ce0ba93950973615e82"
            }
          ],
          "repo": "https://github.com/horilla/horilla-hr",
          "type": "GIT"
        }
      ]
    }
  ],
  "aliases": [
    "GHSA-65vj-5p5g-pv5m"
  ],
  "database_specific": {
    "cna_assigner": "GitHub_M",
    "cwe_ids": [
      "CWE-352"
    ],
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/86xxx/CVE-2026-86066.json"
  },
  "details": "Horilla is an HR and CRM software. Prior to 2.0.0, approve_validate_attendance_request at /attendance/approve-validate-attendance-request/ changes attendance_validated, is_validate_request_approved, approved_by, and related pending-request state through an HTTP GET before calling attendance.save(), so Django does not require CSRF validation for the action. An unauthenticated attacker can cause a logged-in manager with attendance.change_attendance to make a top-level request that carries the manager's SameSite=Lax session cookie, silently approving attendance with the victim's privileges and attributing the approval to the victim in the audit trail. This issue is fixed in version 2.0.0.",
  "id": "CVE-2026-86066",
  "modified": "2026-09-30T03:30:16.134181419Z",
  "published": "2026-09-25T22:18:13.406Z",
  "references": [
    {
      "type": "WEB",
      "url": "https://github.com/horilla/horilla-hr/releases/tag/2.0.0"
    },
    {
      "type": "ADVISORY",
      "url": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/86xxx/CVE-2026-86066.json"
    },
    {
      "type": "ADVISORY",
      "url": "https://github.com/horilla/horilla-hr/security/advisories/GHSA-65vj-5p5g-pv5m"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-86066"
    },
    {
      "type": "FIX",
      "url": "https://github.com/horilla/horilla-hr/commit/87a23ecaf2944c15dc5c131f813d2b83fd56eaa0"
    }
  ],
  "schema_version": "1.9.0",
  "severity": [
    {
      "score": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N",
      "type": "CVSS_V4"
    }
  ],
  "summary": "Horilla attendance approval endpoint is vulnerable to cross-site request forgery"
}