Accessibility

Security Bulletin

MPSB04-10 - The CFOBJECT tag and CreateObject functions should be secured in a shared or untrusted developer environment

Originally posted: October 8, 2004

Summary

By default, the CFOBJECT tag and the CreateObject function are accessible to all ColdFusion developers. This tag and function should be secured in a shared or untrusted developer environment.

Solution

Macromedia recommends that customers use the Sandbox Security functionality included in ColdFusion to secure this tag and function.

Affected Software Versions

  • ColdFusion MX 6.0
  • ColdFusion MX 6.1
  • ColdFusion MX 7.0

Severity Rating

Macromedia categorizes this issue as important and recommends that affected users immediately correct their sandbox security configuration.

Details

It is possible to use standard ColdFusion Markup Language (CFML) code to access Java objects that are shipped as part of the ColdFusion product to internally perform administrative tasks. Such code makes use of a the Java Extensibility feature of ColdFusion (and specifically the CFOBJECT tag or CreateObject function) that allows developers the flexibility to extend beyond CFML and access Java objects.

By default, the CFOBJECT tag and the CreateObject function are accessible to all ColdFusion developers. This provides developers with access to functionality that may not be appropriate for shared or untrusted developer environments. ColdFusion provides a sophisticated security model to granularly lock down functionality where needed. In any environment that is shared or where developers are not "trusted" (meaning they are not given unrestricted access to the development server), it's necessary to take a few steps to secure the ColdFusion environment just as it is necessary to secure the operating system. The ColdFusion Sandbox Security feature allows the Administrator to simply disable the CFML CreateObject function and CFOBJECT tag.

In an untrusted or shared environment where developers still want to take advantage of the Java Extensibility functionality, a common technique is to allow a "trusted" application in a less restricted sandbox to access known secured Java objects placing them in a shared scope, and let the "untrusted" developers access the objects via the CFML CFINVOKE tag. This puts control of the "safe" objects into the hands of the Administrator.

Making the Change

For complete documentation on ColdFusion Sandbox Security please see the following product documentation: http://livedocs.macromedia.com/coldfusion/6.1/htmldocs/appsecur.htm

Revisions

October 8 , 2004 - Bulletin first created.

Reporting Security Issues

Macromedia is committed to addressing security issues and providing customers with the information on how they can protect themselves. If you identify what you believe may be a security issue with a Macromedia product, please send an email to secure@macromedia.com. We will work to appropriately address and communicate the issue.

Receiving Security Bulletins

When Macromedia becomes aware of a security issue that we believe significantly affects our products or customers, we will notify customers when appropriate. Typically this notification will be in the form of a security bulletin explaining the issue and the response. Macromedia customers who would like to receive notification of new security bulletins when they are released can sign up for our security notification service.

For additional information on security issues at Macromedia, please visit: http://www.macromedia.com/security.

ANY INFORMATION, PATCHES, DOWNLOADS, WORKAROUNDS OR FIXES PROVIDED BY MACROMEDIA IN THIS BULLETIN ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MACROMEDIA AND ITS SUPPLIERS DISCLAIM ALL WARRANTIES, WHETHER EXPRESS OR IMPLIED OR OTHERWISE, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ALSO, THERE IS NO WARRANTY OF NON-INFRINGEMENT, TITLE OR QUIET ENJOYMENT. (USA ONLY) SOME STATES DO NOT ALLOW THE EXCLUSION OF IMPLIED WARRANTIES, SO THE ABOVE EXCLUSION MAY NOT APPLY TO YOU.

IN NO EVENT SHALL MACROMEDIA, INC. OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING, WITHOUT LIMITATION, DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, SPECIAL, PUNITIVE, COVER, LOSS OF PROFITS, BUSINESS INTERRUPTION OR THE LIKE, OR LOSS OF BUSINESS DAMAGES, BASED ON ANY THEORY OF LIABILITY INCLUDING BREACH OF CONTRACT, BREACH OF WARRANTY, TORT(INCLUDING NEGLIGENCE), PRODUCT LIABILITY OR OTHERWISE, EVEN IF MACROMEDIA, INC. OR ITS SUPPLIERS OR THEIR REPRESENTATIVES HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. (USA ONLY) SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES, SO THE ABOVE EXCLUSION OR LIMITATION MAY NOT APPLY TO YOU AND YOU MAY ALSO HAVE OTHER LEGAL RIGHTS THAT VARY FROM STATE TO STATE.

Macromedia reserves the right, from time to time, to update the information in this document with current information.