Miggo Logo

CVE-2020-8819:
CardGate Payments plugin for WooCommerce does not validate request origin

8.1

CVSS Score
3.1

Basic Information

EPSS Score
0.50556%
Published
5/24/2022
Updated
7/12/2023
KEV Status
No
Technology
TechnologyPHP

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Package NameEcosystemVulnerable VersionsFirst Patched Version
cardgate/woocommercecomposer<= 3.1.153.1.16

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability stems from the cardgate_callback function in cardgate.php (lines 426-442 in the pre-patch version). This function processes incoming 'cgp_sitesetup' requests by invoking pullConfig with attacker-controlled $_REQUEST parameters. The lack of origin validation (e.g., IP checks, HMAC signatures, or CSRF tokens) allows unauthorized parties to submit malicious configuration updates. The patch in commit 0b83588 modifies this flow by introducing proper authentication checks, confirming this was the vulnerable code path. The exploit PoC specifically targets this endpoint to overwrite merchant settings, demonstrating the function's insecure implementation.

Vulnerable functions

Only Mi**o us*rs **n s** t*is s**tion

WAF Protection Rules

WAF Rule

*n issu* w*s *is*ov*r** in t** **r***t* P*ym*nts plu*in t*rou** *.*.** *or Woo*omm*r**. L**k o* ori*in *ut**nti**tion in t** IPN **ll***k pro**ssin* *un*tion in **r***t*/**r***t*.p*p *llows *n *tt**k*r to r*mot*ly r*pl*** *riti**l plu*in s*ttin*s (m*

Reasoning

T** vuln*r**ility st*ms *rom t** **r***t*_**ll***k *un*tion in **r***t*.p*p (lin*s ***-*** in t** pr*-p*t** v*rsion). T*is *un*tion pro**ss*s in*omin* '**p_sit*s*tup' r*qu*sts *y invokin* pull*on*i* wit* *tt**k*r-*ontroll** $_R*QU*ST p*r*m*t*rs. T**