Koha is vulnerable to OS command injection in the Task Scheduler deletion path. The tools/scheduler.pl handler accepts the jobid request parameter for op=cud-delete and passes it to C4::Scheduler::remove_at_job without validating it. Schedule::At::remove substitutes the supplied job ID into an atrm command string without quoting or escaping it and executes the command through a single-argument system() call, which invokes the shell. An authenticated staff user with the tools => schedule_tasks permission can therefore execute arbitrary operating-system commands as the Koha web/application user by supplying shell metacharacters in jobid. The issue is fixed in Koha 24.11.20, 25.05.15, 25.11.09, and 26.05.04, and in the 26.11 development branch.
https://www.cve.org/CVERecord?id=CVE-2025-30076
https://www.cve.org/CVERecord?id=CVE-2024-28739
https://euvd.enisa.europa.eu/vulnerability/EUVD-2026-100897
https://download.koha-community.org/
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42674