VYPR
Unrated severityNVD Advisory· Published May 20, 2019· Updated Aug 4, 2024

CVE-2019-12240

CVE-2019-12240

Description

The Virim plugin 0.4 for WordPress allows Insecure Deserialization via s_values, t_values, or c_values in graph.php.

AI Insight

LLM-synthesized narrative grounded in this CVE's description and references.

Affected products

2
  • WordPress/Virim plugindescription
  • WordPress/Virimllm-create
    Range: <=0.4

Patches

Vulnerability mechanics

Root cause

"Attacker-controlled GET parameters are passed directly to PHP's unserialize() function without sanitization, enabling insecure deserialization."

Attack vector

An unauthenticated attacker can trigger insecure deserialization by sending a crafted HTTP GET request to `graph.php` with the `type` parameter set to any value other than `'over_time'` and malicious serialized payloads in the `s_values`, `t_values`, or `c_values` parameters [ref_id=1]. No authentication is required, and the attacker-controlled data flows directly into PHP's `unserialize()` call, which can instantiate arbitrary PHP objects and potentially execute code via gadget chains [CWE-502].

Affected code

The vulnerability resides in `graph.php` of the Virim plugin 0.4 for WordPress. Lines 51–53 pass the `$_GET['s_values']`, `$_GET['t_values']`, and `$_GET['c_values']` parameters directly to PHP's `unserialize()` function without any sanitization or validation [ref_id=1].

What the fix does

The advisory does not provide a patch; it only documents the vulnerable code and recommends following OWASP guidance on insecure deserialization [ref_id=1]. To remediate, the plugin should replace `unserialize()` with a safe alternative such as JSON decoding (`json_decode()`) or implement strict input validation and allow-listing of expected data formats.

Preconditions

  • configThe WordPress site must have the Virim plugin version 0.4 installed and active.
  • networkThe attacker must be able to send HTTP GET requests to the WordPress instance (no authentication required).
  • inputThe `type` GET parameter must be set to any value other than 'over_time' to reach the vulnerable else branch.

Generated on Jun 1, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

2

News mentions

0

No linked articles in our index yet.