CWEweakness

CWE-651 Exposure of WSDL File Containing Sensitive Information

Official page ↗
Abstraction
Variant
Structure
Simple
Status
Incomplete
Languages
Not Language-Specific
CWE version
5.0

Description

The Web services architecture may require exposing a Web Service Definition Language (WSDL) file that contains information on the publicly accessible services and how callers of these services should interact with them (e.g. what parameters they expect and what types they return).

Common consequences

• Confidentiality: Read Application Data — The attacker may find sensitive information located in the WSDL file.

Potential mitigations

• [Architecture and Design] Limit access to the WSDL file as much as possible. If services are provided only to a limited number of entities, it may be better to provide WSDL privately to each of these entities than to publish WSDL publicly. • [Architecture and Design] Make sure that WSDL does not describe methods that should not be publicly accessible. Make sure to protect service methods that should not be publicly accessible with access controls. • [Architecture and Design] Do not use method names in WSDL that might help an adversary guess names of private methods/resources used by the service.

Detection methods

• Automated Static Analysis: Automated static analysis, commonly referred to as Static Application Security Testing (SAST), can find some instances of this weakness by analyzing source code (or binary/compiled code) without having to execute it. Typically, this is done by building a model of data flow and control flow, then searching for potentially-vulnerable patterns that connect "sources" (origins of input) with "sinks" (destinations where the data interacts with external components, a lower layer such as the OS, etc.)

Related

Child of · CWE (1)

  • CWE-538 Insertion of Sensitive Information into Externally-Accessible File or Directory weakness

Referenced by OWASP · mapped cwe (1)

  • A01:2021 Broken Access Control Top 10 2021