Skip to content
OpenAdvisories
High Public exploit CVE-2014-0114 EUVD-2020-0504GHSA-p66x-2cv9-qq3v

Arbitrary code execution in Apache Commons BeanUtils

Published Apr 30, 2014 · Updated Oct 14, 2026 · Assigned by redhat

Description

Apache Commons BeanUtils, as distributed in lib/commons-beanutils-1.8.0.jar in Apache Struts 1.x through 1.3.10 and in other products requiring commons-beanutils through 1.9.2, does not suppress the class property, which allows remote attackers to "manipulate" the ClassLoader and execute arbitrary code via the class parameter, as demonstrated by the passing of this parameter to the getClass method of the ActionForm object in Struts 1.

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 commons-beanutils 1.9.2-1 —
Debian 13 commons-beanutils 1.9.2-1 —
Debian 12 commons-beanutils 1.9.2-1 —
Debian 7 libstruts1.2-java 1.2.9-5+deb7u1 DSA-2940-1
Debian 6.0 libstruts1.2-java 1.2.9-4+deb6u1 DLA-57-1
ReleasePackageFixed inAdvisory
Ubuntu Pro 18.04 LTS commons-beanutils 1.9.3-1ubuntu0.1~esm1 USN-4766-1
Ubuntu Pro 16.04 LTS commons-beanutils 1.9.2-3ubuntu0.1~esm1 USN-8322-2, USN-4766-1
Ubuntu Pro 14.04 LTS commons-beanutils 1.9.1-1ubuntu0.1~esm1 USN-4766-1
ReleasePackageFixed inAdvisory
RHEL 5 struts +3 1.2.9-4jpp.8.el5_10 RHSA-2014:0474
Show 1 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Red Hat Network Satellite 5 struts +4 1.3.10-6.ep5.el6 RHSA-2014:0500
ReleasePackageFixed inAdvisory
SLES 12 SP5 apache-commons-beanutils 1.11.0-7.3.1 SUSE-SU-2025:02056-1
ReleasePackageFixed inAdvisory
openSUSE Tumbleweed apache-commons-beanutils 1.9.4-3.7 openSUSE-SU-2024:10617-1
openSUSE Tumbleweed apache-commons-validator 1.10.1-1.1 openSUSE-SU-2026:11105-1

Public exploits

Exploit or proof-of-concept code for this vulnerability is publicly available, which lowers the bar for attackers. Treat it as a reason to patch sooner.

Third-party code, not reviewed by us. Public PoCs are sometimes fake or contain malware. Read the code first and run it only in an isolated lab, against systems you are authorised to test.

Metasploit 1 module

GitHub 3 repositories

Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.

Affected packages

EcosystemPackageAffectedFixedRecord
Maven commons-beanutils:commons-beanutils >= 1.8.0, < 1.9.4 1.9.4 GHSA-p66x-2cv9-qq3v

Advisories 15

References