Community Security Team

The Liferay Community Security Team is an all-volunteer group of community members who manage security issues related to Liferay Portal.

The Liferay Community Security Team pages have moved to the Liferay Developer Network - Community Security Team. Please update your bookmarks, as this page will eventually be removed.

Known Vulnerabilities

The following vulnerabilities are known to exist in Liferay Portal CE.  Users of older releases are strongly encouraged to upgrade to the latest Liferay Portal CE release.  Patches are only produced for the latest Liferay Portal CE release.  Source code modifications may be possible on older releases, but care must be taken to backport fixes that may not apply to older releases.

To obtain source or binary patches for each of the vulnerabilities, click on the name of the vulnerability, and look for links for source and binary patches.  To obtain a single cumulative source or binary patch for all known vulnerabilities, visit the Patch Details section of the CST Process page.  Note that the availability of the single cumulative binary patch may lag a day or two behind availability of the associated source patches.  

Quick Links

CST-SA: LPS-46552 - Struts 1 Classloader manipulation

Date

Mon, 16 Jun 2014 14:41:24 +0000

Title

CST-SA: LPS-46552 - Struts 1 Classloader manipulation

Description

A zero-day security vulnerability in the ActionForms object in Struts 1.x allows remote attackers to manipulate the class loader. In some environments, this may allow attackers to execute arbitrary code.

While Liferay Portal utilizes Struts 1.x, Liferay Portal is *NOT* susceptible to this vulnerability because Liferay Portal does not uses Struts 1.x's ActionForm for any out of the box functionality. Plugin portlets authored by Liferay are also not vulnerable. However, sites using Liferay Portal may be vulnerable if:

  • Custom Struts 1.x plugin portlets have been deployed to the environment AND
  • The custom Struts 1.x plugin portlet uses ActionForm.

Liferay recommends a review of all custom plugins portlets. If you have a Struts plugin portlet and the portlet uses ActionForm, please considering taking appropriate actions, which may include:

  • Increased monitoring
  • Adding a filter to exclude parameters with "class" in the name (see this blog post from HP for working code you can add to your custom portlet's struts action servlet).
  • Undeploying the plugin

More Information about this vulnerability.

 

 

Severity

Severity 2

Workaround

Please see this blog post from HP on a convenient workaround.

 

Issue Links

Note that some or all of these may not yet be accessible. The CST remains committed to full disclosure of all security issues once fully resolved.

Patching Instructions

See the Community Security Team Process page for details on working with source and binary patches.

Binary Patch Links

Note: The below links point to a download page which contains multiple binary patches with the following naming scheme: <Liferay-Version>-security-<patch-version>.zip. Be sure to use the latest patch for your Liferay release!

Note: Binary patches only apply to the release with which this issue is associated. Applying a binary patch to any other release will probably result in a broken install!

  • TBA (To Be Announced)

Source Patch Links

Note that source patches only apply to the release with which this issue is associated. Applying a source patch to any other release will probably result in a broken install! For Github URLs suffixed with .patch, removing this suffix will yield a graphical view of the patch

Notes

A patch for CE users is being created and tested, however this is a publicly known vulnerability with a convenient workaround, so the CST team wanted to make you aware of this potential issue immediately.

Additionally, note that this vulnerability exists in Struts 1.x which is used by all Liferay 5.x and 6.x versions.

Credit

This issue was discovered and reported by Tomas Polesovsky