CVE-2026-96795: Horilla code injection in list-view export

CVE-2026-96795 · Severity: high · CVSS 8.8 · Published 2026-09-25

Horilla is an HR and CRM application that allows employees to manage and export data. Any authenticated user, including those with minimal permissions, can exploit a flaw in the export feature to inject and execute arbitrary operating-system commands on the server. In default Docker deployments, these commands run with root privileges, giving attackers complete control of the application and underlying system.

Technologies: Horilla. Vendors: Horilla.

Quick answers

Is CVE-2026-96795 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-96795 being exploited in the wild.
How severe is CVE-2026-96795?
High severity, with a CVSS score of 8.8, published 25 September 2026.
Which products and versions are affected?
Horilla prior to 2.0.0.
Is there a fix for CVE-2026-96795?
A patch was published on 2026-08-30: Fixed in version 2.0.0 Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-96795 attacked?
It is attacked over the network, in a web application.
Am I affected by CVE-2026-96795?
Check whether you run Horilla at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

Technical details

The HorillaListView.export_data handler constructs Python function definitions from user-controlled POST parameters (specifically the columns field) and executes them via exec() without proper sanitization. Although the columns parameter is validated with ast.literal_eval to ensure it is a valid Python literal, this validation does not restrict arbitrary syntax within string values. An attacker can craft a string that remains valid under ast.literal_eval but injects Python code into a default argument of the generated function, which is evaluated immediately during function definition. This allows arbitrary command execution as the application process user (root in the shipped Docker image).

Affected products

  • Horilla Horilla prior to 2.0.0

Timeline

  • 2026-07-21: disclosed
  • 2026-08-30: patched: Fixed in version 2.0.0

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.