GPU VulnDB

Database/Control plane, storage & DevOps

Ansible community.general: memcached fact cache unpickles values, giving code execution on the controller

CVSS 8.1CVE-2026-87874Control plane, storage & DevOpscurated

Impact

The memcached cache plugin documents JSON storage but performs no explicit serialization, so python-memcached pickles on write and unpickles on read. Anyone who can write to the memcached instance backing the fact cache can plant a pickle payload that executes on the Ansible controller the next time that host's facts are read. On a GPU fleet the controller is usually the box that holds SSH keys, BMC credentials and the playbooks that drive node provisioning, driver rollouts and firmware flashing, so controller code execution converts into fleet-wide reach rather than a single host. Memcached is unauthenticated and the cache keys are predictable, so no prior foothold on the controller is needed.

Who can reach it

Anyone who can reach the memcached instance used as the Ansible fact cache - unauthenticated, since memcached has no auth and the cache keys are derived predictably from inventory host names. Exploitation requires the cache to be network-exposed or shared with other workloads; a memcached bound to loopback on the controller only is not reachable.

What to do

Red Hat's advisory does not name a fixed collection version in this record. What is actionable now: move fact_caching off the memcached plugin (jsonfile, or a backend with authentication), or bind the memcached instance to loopback and keep it off any shared network, and flush the existing cache since a poisoned entry survives the config change. This is a controller-side configuration change and a collection update - no GPU node drain or reboot is involved. Track the Red Hat CVE page for the fixed community.general build.

References

Related entries

All Control plane, storage & DevOps entries

This entry is curated: imported from vendor advisories with machine assistance, not yet individually verified. Confirm against your vendor's advisory before acting, and report anything wrong.