during our BlackHat US 2014 talk titled
“Evasion of High-End IPS Devices in the Age of IPv6”,
among others we discussed a Snort preprocessor rule (116:456) which, when
enabled (not the case by default), triggers an alert when an IPv6 datagram with
nine (9) or more IPv6 Extension Headers is used (such a header was used by us to
evade Snort). However, we mentioned that:
As it is well known to the IPv6 enthusiasts, one of the most significant changes
that IPv6 brings with it, apart from supporting a really huge address space, is
the improved support for Extensions and Options, which is achieved by the usage
of IPv6 Extension headers. According to
RFC 2460, “changes in the way IP
header options are encoded allows for more efficient forwarding, less stringent
limits on the length of options, and greater flexibility for introducing new
options in the future.” So, by adding IPv6 Extension headers, according to the
designers of the protocol, flexibility and efficiency in the IP layer is
improved.