40044Exponential Entity Expansion (Billion Laughs Attack)

PUBLISHEDsecurity alertMedium
Active

Metadata

Alert ID:
40044
Risk:
Medium
Type:
Active

Summary

An exponential entity expansion, or “billion laughs” attack is a type of denial-of-service (DoS) attack. It is aimed at parsers of markup languages like XML or YAML that allow macro expansions.

Solution

Defenses against this kind of attack include capping the memory allocated in an individual parser if loss of the document is acceptable, or treating entities symbolically and expanding them lazily only when (and to the extent) their content is to be used.

References