CWE
Home > CWE List > CWE-183 Individual Dictionary Definition (Draft 9)   View the CWE List

CWE-183 Individual Dictionary Definition (Draft 9)

Permissive Whitelist
Weakness ID
Status: Draft

183 (Weakness Base)

Description

Summary

An application uses a "whitelist" of acceptable values, but the whitelist permits at least one unsafe value.

Potential Mitigations

Define rigid requirements specifications for input and strictly accept input based on those specifications. Determine if any of the valid data include special characters that are associated with security exploits (use this taxonomy and the Common Vulnerabilities and Exposures as a start to determine what characters are potentially malicious). If permitted, then follow the potential mitigations associated with the weaknesses in this taxonomy. Always handle these data carefully and anticipate attempts to exploit your system.

Context Notes

Note that a permissive whitelist produces resultant vulnerabilities.

Relationships
NatureTypeIDName
ChildOfCategoryCategory171Cleansing, Canonicalization, and Comparison Errors
ChildOfWeakness ClassWeakness ClassWeakness Class693Protection Mechanism Failure
CanAlsoBeWeakness BaseWeakness BaseWeakness Base186Overly Restrictive Regular Expression
PeerOfWeakness BaseWeakness BaseWeakness Base625Permissive Regular Expression
PeerOfWeakness BaseWeakness BaseWeakness Base627Dynamic Variable Evaluation
PeerOfCompound Element: CompositeCompound Element: Composite434Unrestricted File Upload
Source Taxonomies

PLOVER - Permissive Whitelist

Applicable Platforms

All

Time of Introduction

Architecture and Design

Implementation

Related Attack Patterns
CAPEC-IDAttack Pattern Name
71Using Unicode Encoding to Bypass Validation Logic
3Using Leading 'Ghost' Character Sequences to Bypass Input Filters
43Exploiting Multiple Input Interpretation Layers
Page Last Updated: April 21, 2008