CAPECattack pattern

CAPEC-36 Using Unpublished Interfaces or Functionality

High Official page ↗
Abstraction
Standard
Status
Draft
Likelihood of attack
Medium
Typical severity
High
CAPEC version
3.9

Description

An adversary searches for and invokes interfaces or functionality that the target system designers did not intend to be publicly available. If interfaces fail to authenticate requests, the attacker may be able to invoke functionality they are not authorized for.

Extended description

Adversaries can also search for undocumented bits on a hardware device, commonly known as "chicken bits". These bits are used to enable/disable certain functionality, but are not published. Adversaries can reverse engineer firmware to identify hidden features and change these bits at runtime to achieve malicious behavior.

Execution flow

1. [Explore] [Identify services] Discover a service of interest by exploring service registry listings or by connecting on a known port or some similar means. 2. [Explore] [Authenticate to service] Authenticate to the service, if required, in order to explore it. 3. [Explore] [Identify all interfaces] Determine the exposed interfaces by querying the registry as well as probably sniffing to expose interfaces that are not explicitly listed. 4. [Experiment] [Attempt to discover unpublished functions] Using manual or automated means, discover unpublished or undocumented functions exposed by the service. 5. [Exploit] [Exploit unpublished functions] Using information determined via experimentation, exploit the unpublished features of the service.

Prerequisites

• The architecture under attack must publish or otherwise make available services that clients can attach to, either in an unauthenticated fashion, or having obtained an authentication token elsewhere. The service need not be 'discoverable', but in the event it isn't it must have some way of being discovered by an attacker. This might include listening on a well-known port. Ultimately, the likelihood of exploit depends on discoverability of the vulnerable service.

Skills required

• [Low] A number of web service digging tools are available for free that help discover exposed web services and their interfaces. In the event that a web service is not listed, the attacker does not need to know much more in addition to the format of web service messages that they can sniff/monitor for.

Consequences

• Confidentiality: Read Data • Confidentiality, Access Control, Authorization: Gain Privileges

Mitigations

• Authenticating both services and their discovery, and protecting that authentication mechanism simply fixes the bulk of this problem. Protecting the authentication involves the standard means, including: 1) protecting the channel over which authentication occurs, 2) preventing the theft, forgery, or prediction of authentication credentials or the resultant tokens, or 3) subversion of password reset and the like.

Related

Child of · CAPEC (1)

  • CAPEC-113 Interface Manipulation attack pattern

Weakness · CWE (4)

  • CWE-1242 Inclusion of Undocumented Features or Chicken Bits weakness
  • CWE-306 Missing Authentication for Critical Functionality weakness
  • CWE-693 Protection Mechanism Failure weakness
  • CWE-695 Use of Low-Level Functionality weakness

Referenced by CWE · attack pattern (4)

  • CWE-1242 Inclusion of Undocumented Features or Chicken Bits weakness
  • CWE-306 Missing Authentication for Critical Functionality weakness
  • CWE-693 Protection Mechanism Failure weakness
  • CWE-695 Use of Low-Level Functionality weakness