Try All Common Application Switches and Options
Attack Pattern ID: 133 (Standard Attack Pattern Completeness: Stub)Typical Severity: MediumStatus: Draft
+ Description

Summary

An attacker attempts to invoke all common switches and options in the target application for the purpose of discovering weaknesses in the target. For example, in some applications, adding a --debug switch causes debugging information to be displayed, which can sometimes reveal sensitive processing or configuration information to an attacker. This attack differs from other forms of API abuse in that the attacker is blindly attempting to invoke options in the hope that one of them will work rather than specifically targeting a known option. Nonetheless, even if the attacker is familiar with the published options of a targeted application this attack method may still be fruitful as it might discover unpublicized functionality.

+ Attack Prerequisites

The attacker must be able to control the options or switches sent to the target.

+ Resources Required

No special resources are required beyond the ability to send requests to the target.

+ Solutions and Mitigations

Design: Minimize switch and option functionality to only that necessary for correct function of the command.

Implementation: Remove all debug and testing options from production code.

+ Related Weaknesses
CWE-IDWeakness NameWeakness Relationship Type
559Often Misused: Arguments and ParametersTargeted
656Reliance on Security through ObscuritySecondary
88Argument Injection or ModificationSecondary
+ Related Attack Patterns
NatureTypeIDNameDescriptionView(s) this relationship pertains toView\(s\)
ChildOfCategoryCategory210Abuse of Functionality 
Mechanism of Attack (primary)1000