GHSA-7xw9-549r-8jrcHigh· 8.5▾ TwilightDIRAC: SQL injection and lack of access control in PilotManager service
▾ Twilight zone — High severity, or a signal on a lesser flaw
impact 46.8 · likelihood 0 · exploitation 0
Need a working PoC? Pro members can cast a request and our team develops one — it lands right here.
A number of the functions in PilotManager pass parameters directly through to the database layer, which then does not do any escaping on the parameters. For example setPilotStatus: https://github.com/DIRACGrid/DIRAC/blob/1738e7c6d2f31d26f1364255d9d2e87b4896c922/src/DIRAC/WorkloadManagementSystem/Service/PilotManagerHandler.py#L343-L349
This won't accept multiple statements separated by a semicolon, but a carefully crafted set of parameters containing SQL escapes would likely be able to change or return other database entries.
Further to this, the PilotManager access control is only set to "authenticated"; this allows these functions to be called by any user. This allows any user to manage (e.g. delete, read output of) any pilot pilot job: https://github.com/DIRACGrid/DIRAC/blob/1738e7c6d2f31d26f1364255d9d2e87b4896c922/src/DIRAC/WorkloadManagementSystem/ConfigTemplate.cfg#L111-L118
This is fixed by changing the SQL statements to use proper parameter substitution and providing a suitable set of access rules for the exported pilot management functions.
https://pypi.org/project/DIRAC/8.0.79/ https://pypi.org/project/DIRAC/9.0.22/ https://pypi.org/project/DIRAC/9.1.10/
DIRAC >= 6, < 8.0.79DIRAC >= 8.1.0a1, < 9.0.22DIRAC >= 9.1.0, < 9.1.10Upgrade to a patched release:
DIRAC 8.0.79DIRAC 9.0.22DIRAC 9.1.10Connected by shared product, vendor, weakness, or advisory.
CVE-2026-61667Critical· 9.9DIRAC is an interware, meaning a software framework for distributed computing
CVE-2026-61668High· 8.1DIRAC is an interware, meaning a software framework for distributed computing
CVE-2026-45579Critical· 9.9DIRAC is an interware, meaning a software framework for distributed computing
CVE-2024-24825Critical· 9.1DIRAC's TokenManager does not check permissions on cached tokens
CVE-2024-29905High· 8.1DIRAC: Unauthorized users can read proxy contents during generation
CVE-2026-1609High· 8.1A flaw was found in Keycloak