Description
Nmap through 7.99 does not keep the IPv6 extension-header walk within the captured packet in ipv6_get_data_primitive (libnetutil/netutil.cc), so the pointer advances past the buffer and the remaining-length computation underflows to a large value. A scanned target or on-path attacker returning a crafted IPv6 response with a truncated extension header can trigger out-of-bounds reads and a crash during raw IPv6 scans.
Problem types
Integer Underflow (Wrap or Wraparound)
Product status
Any version
Credits
Himanshu Anand
References
github.com/...ploitarium/tree/main/nmap-ipv6-extlen-wrap-poc (Proof of Concept)
github.com/...ommit/bb6754e76bb1686315008e1aa1c40202a513fb83 (Fix commit (dev tree))
nmap.org/changelog.html (Nmap Change Log)
www.vulncheck.com/...erflow-in-ipv6-extension-header-parsing (VulnCheck Advisory: Nmap - Integer Underflow in IPv6 Extension Header Parsing)