CVE-2021-31522
Apache Kylin unsafe class loading
Kylin can receive user input and load any class through Class.forName(...). This issue affects Apache Kylin 2 version 2.6.6 and prior versions; Apache Kylin 3 version 3.1.2 and prior versions; Apache Kylin 4 version 4.0.0 and prior versions.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
NVD Score used
9.8
Kylin can receive user input and load any class through Class.forName(...). This issue affects Apache Kylin 2 version 2.6.6 and prior versions; Apache Kylin 3 version 3.1.2 and prior versions; Apache Kylin 4 version 4.0.0 and prior versions.
- Record
CVE-2021-31522- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - CVSS 2.0
- 7.5 High
AV:N/AC:L/Au:N/C:P/I:P/A:P - Weakness
- CWE-470
- Updated
- 2026-11-02
CVE List No score
Apache Kylin unsafe class loading
Kylin can receive user input and load any class through Class.forName(...). This issue affects Apache Kylin 2 version 2.6.6 and prior versions; Apache Kylin 3 version 3.1.2 and prior versions; Apache Kylin 4 version 4.0.0 and prior versions.
- Record
CVE-2021-31522- Updated
- 2026-11-02
EUVDEUVD-2022-0672 No score
Kylin can receive user input and load any class through Class.forName(...). This issue affects Apache Kylin 2 version 2.6.6 and prior versions; Apache Kylin 3 version 3.1.2 and prior versions; Apache Kylin 4 version 4.0.0 and prior versions.
- Record
EUVD-2022-0672- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-q656-g2x3-8cgh No score
Kylin can receive user input and load any class through Class.forName(...).
Kylin can receive user input and load any class through Class.forName(...). This issue affects Apache Kylin 2 version 2.6.6 and prior versions; Apache Kylin 3 version 3.1.2 and prior versions; Apache Kylin 4 version 4.0.0 and prior versions.
- Record
GHSA-q656-g2x3-8cgh- Weakness
- CWE-470
- Updated
- 2026-11-02
OSV
9.8
Kylin can receive user input and load any class through Class.forName(...). This issue affects Apache Kylin 2 version 2.6.6 and prior versions; Apache Kylin 3 version 3.1.2 and prior versions; Apache Kylin 4 version 4.0.0 and prior versions.
- Record
CVE-2021-31522- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVGHSA-q656-g2x3-8cgh No score
Kylin can receive user input and load any class through Class.forName(...).
Kylin can receive user input and load any class through Class.forName(...). This issue affects Apache Kylin 2 version 2.6.6 and prior versions; Apache Kylin 3 version 3.1.2 and prior versions; Apache Kylin 4 version 4.0.0 and prior versions.
- Record
GHSA-q656-g2x3-8cgh- Weakness
- CWE-470
- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
org.apache.kylin:kylinMaven |
before 3.1.3 | 3.1.3 |
org.apache.kylin:kylinMaven |
4.0.0 to 4.0.0 | 4.0.1 |
org.apache.kylin:kylinMaven |
before 3.1.3, plus listed versions 0.7.1-incubating0.7.2-incubating1.0-incubating1.1-incubating1.1.1-incubating Show 36 moreShow less1.21.3.01.5.01.5.11.5.21.5.2.11.5.31.5.41.5.4.11.6.02.0.02.1.02.2.02.3.02.3.12.3.22.4.02.4.12.5.02.5.12.5.22.6.02.6.12.6.22.6.32.6.42.6.52.6.63.0.03.0.0-alpha3.0.0-alpha23.0.13.0.23.1.03.1.13.1.2 |
3.1.3 |
org.apache.kylin:kylinMaven |
4.0.0 up to 4.0.1 | 4.0.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2021-31522 is a critical vulnerability (CVSS 9.8) in Apache Kylin, published January 6, 2022. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 3.00%, the 87th percentile. Fixed in org.apache.kylin:kylin 3.1.3.