Miggo Logo

CVE-2020-1959:
Expression Language Injection in Apache Syncope

9.8

CVSS Score
3.1

Basic Information

EPSS Score
0.8119%
Published
6/16/2021
Updated
2/1/2023
KEV Status
No
Technology
TechnologyJava

Technical Details

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Package NameEcosystemVulnerable VersionsFirst Patched Version
org.apache.syncope:syncope-coremaven< 2.1.62.1.6

Vulnerability Intelligence
Miggo AIMiggo AI

Miggo AIRoot Cause Analysis

The vulnerability occurs in custom constraint validators' message interpolation logic. Runtime detection would show:

  1. The application's custom validator isValid() method handling malicious input
  2. The ConstraintValidatorContext message-building API processing EL payloads

Though no patch diffs are provided, the CVE description explicitly identifies the attack vector as custom constraint validators using EL interpolation in error messages. The primary vulnerable function would be the isValid() implementation in Syncope's constraint validators, with the JSR-380 message-building API appearing in stack traces during exploitation.

Vulnerable functions

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

WAF Protection Rules

WAF Rule

* S*rv*r-Si** T*mpl*t* Inj**tion w*s i**nti*i** in *p**** Syn*op* prior to *.*.* *n**lin* *tt**k*rs to inj**t *r*itr*ry J*v* *L *xpr*ssions, l***in* to *n un*ut**nti**t** R*mot* *o** *x**ution (R**) vuln*r**ility. *p**** Syn*op* us*s J*v* ***n V*li**

Reasoning

T** vuln*r**ility o**urs in *ustom *onstr*int v*li**tors' m*ss*** int*rpol*tion lo*i*. Runtim* **t**tion woul* s*ow: *. T** *ppli**tion's *ustom v*li**tor isV*li*() m*t*o* **n*lin* m*li*ious input *. T** *onstr*intV*li**tor*ont*xt m*ss***-*uil*in* *P