Exposure of Resource to Wrong Sphere
Weakness ID: 668 (Weakness Class)Status: Draft
+ Description

Description Summary

The product exposes a resource to the wrong control sphere, providing unintended actors with inappropriate access to the resource.

Extended Description

Resources such as files and directories may be inadvertently exposed through mechanisms such as insecure permissions, or when a program accidentally operates on the wrong object. For example, a program may intend that private files can only be provided to a specific user. This effectively defines a control sphere that is intended to prevent attackers from accessing these private files. If the file permissions are insecure, then parties other than the user will be able to access those files.

A separate control sphere might effectively require that the user can only access the private files, but not any other files on the system. If the program does not ensure that the user is only requesting private files, then the user might be able to access other files on the system.

In either case, the end result is that a resource has been exposed to the wrong party.

+ Time of Introduction
  • Architecture and Design
  • Implementation
  • Operation
+ Relationships
NatureTypeIDNameView(s) this relationship pertains toView(s)
ChildOfCategoryCategory361Time and State
Development Concepts (primary)699
ChildOfWeakness ClassWeakness Class664Improper Control of a Resource Through its Lifetime
Research Concepts (primary)1000
ParentOfWeakness VariantWeakness Variant8J2EE Misconfiguration: Entity Bean Declared Remote
Research Concepts (primary)1000
ParentOfWeakness ClassWeakness Class22Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
Research Concepts1000
ParentOfWeakness ClassWeakness Class200Information Exposure
Research Concepts (primary)1000
ParentOfWeakness VariantWeakness Variant220Sensitive Data Under FTP Root
Research Concepts (primary)1000
ParentOfWeakness BaseWeakness Base269Improper Privilege Management
Research Concepts1000
ParentOfWeakness BaseWeakness Base374Mutable Objects Passed by Reference
Research Concepts (primary)1000
ParentOfWeakness BaseWeakness Base375Passing Mutable Objects to an Untrusted Method
Research Concepts (primary)1000
ParentOfWeakness BaseWeakness Base377Insecure Temporary File
Research Concepts (primary)1000
ParentOfWeakness ClassWeakness Class402Transmission of Private Resources into a New Sphere ('Resource Leak')
Research Concepts (primary)1000
ParentOfWeakness BaseWeakness Base419Unprotected Primary Channel
Research Concepts (primary)1000
ParentOfWeakness BaseWeakness Base420Unprotected Alternate Channel
Research Concepts (primary)1000
ParentOfWeakness BaseWeakness Base427Uncontrolled Search Path Element
Research Concepts (primary)1000
ParentOfWeakness BaseWeakness Base428Unquoted Search Path or Element
Research Concepts (primary)1000
ParentOfWeakness VariantWeakness Variant491Public cloneable() Method Without Final ('Object Hijack')
Research Concepts (primary)1000
ParentOfWeakness VariantWeakness Variant492Use of Inner Class Containing Sensitive Data
Research Concepts (primary)1000
ParentOfWeakness VariantWeakness Variant493Critical Public Variable Without Final Modifier
Research Concepts (primary)1000
ParentOfWeakness BaseWeakness Base522Insufficiently Protected Credentials
Research Concepts (primary)1000
ParentOfWeakness BaseWeakness Base552Files or Directories Accessible to External Parties
Research Concepts (primary)1000
ParentOfWeakness VariantWeakness Variant582Array Declared Public, Final, and Static
Research Concepts (primary)1000
ParentOfWeakness VariantWeakness Variant583finalize() Method Declared Public
Research Concepts (primary)1000
ParentOfWeakness VariantWeakness Variant608Struts: Non-private Field in ActionForm Class
Research Concepts (primary)1000
ParentOfWeakness ClassWeakness Class642External Control of Critical State Data
Research Concepts (primary)1000
ParentOfCompound Element: CompositeCompound Element: Composite689Permission Race Condition During Resource Copy
Research Concepts (primary)1000
ParentOfWeakness ClassWeakness Class732Incorrect Permission Assignment for Critical Resource
Research Concepts (primary)1000
ParentOfWeakness VariantWeakness Variant766Critical Variable Declared Public
Research Concepts (primary)1000
ParentOfWeakness VariantWeakness Variant767Access to Critical Private Variable via Public Method
Research Concepts (primary)1000
CanFollowWeakness VariantWeakness Variant219Sensitive Data Under Web Root
Research Concepts1000
+ Theoretical Notes

A "control sphere" is a set of resources and behaviors that are accessible to a single actor, or a group of actors. A product's security model will typically define multiple spheres, possibly implicitly. For example, a server might define one sphere for "administrators" who can create new user accounts with subdirectories under /home/server/, and a second sphere might cover the set of users who can create or delete files within their own subdirectories. A third sphere might be "users who are authenticated to the operating system on which the product is installed." Each sphere has different sets of actors and allowable behaviors.

+ Relevant Properties
  • Accessibility
+ Content History
Modifications
Modification DateModifierOrganizationSource
2008-07-01Eric DalciCigitalExternal
updated Time of Introduction
2008-09-08CWE Content TeamMITREInternal
updated Relationships, Other Notes
2008-11-24CWE Content TeamMITREInternal
updated Relationships
2009-05-27CWE Content TeamMITREInternal
updated Relationships
2009-07-22
(Critical)
CWE Content TeamMITREInternal
Clarified description to include permissions.
2009-07-27CWE Content TeamMITREInternal
updated Description, Relationships
2009-10-29CWE Content TeamMITREInternal
updated Other Notes, Theoretical Notes
2009-12-28CWE Content TeamMITREInternal
updated Relationships