This entry needs more investigation. Public vulnerability research
generally focuses on the manipulations that generate invalid structure,
instead of the weaknesses that are exploited by those manipulations. For
example, a common attack involves making a request that omits a required
field, which can trigger a crash in some cases. The crash could be due to a
named chain such as CWE-690 (Unchecked Return Value to NULL Pointer
Dereference), but public reports rarely cover this aspect of a
vulnerability.
The validity of input could be roughly classified along "syntactic",
"semantic", and "lexical" dimensions. If the specification requires that an
input value should be delimited with the "[" and "]" square brackets, then
any input that does not follow this specification would be syntactically
invalid. If the input between the brackets is expected to be a number, but
the letters "aaa" are provided, then the input is syntactically invalid. If
the input is a number and enclosed in brackets, but the number is outside of
the allowable range, then it is semantically invalid. The
inter-relationships between these properties - and their associated
weaknesses- need further exploration.