nmap: patch CVE-2026-72712

Details:
https://nvd.nist.gov/vuln/detail/cve-2026-72712

Signed-off-by: Ankur Tyagi <ankur.tyagi85@gmail.com>
This commit is contained in:
Ankur Tyagi committed 2026-10-21 21:35:11 +13:00
1 parent e3266bede8
commit 406da4cb70
2 files changed
+47

No files matched your search

@@ -0,0 +1,46 @@
From 120d13b8aca52ec306e50eae9a74fb1bfe49540a Mon Sep 17 00:00:00 2001
From: dmiller <dmiller@e0a8ed71-7df4-0310-8962-fdc924857419>
Date: Thu, 11 Jun 2026 18:31:31 +0000
Subject: [PATCH] Stop parsing on a zero-length packet option
Fixes #3368. Closes #3373.
(cherry picked from commit 7ef4ee030a0023fe22616387a000032e1a678b6a)
CVE: CVE-2026-72712
Upstream-Status: Backport [https://github.com/nmap/nmap/commit/7ef4ee030a0023fe22616387a000032e1a678b6a]
Dropped changes to the CHANGELOG file.
Signed-off-by: Ankur Tyagi <ankur.tyagi85@gmail.com>
---
nselib/packet.lua | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/nselib/packet.lua b/nselib/packet.lua
index ec6db40a2..e17972d88 100644
--- a/nselib/packet.lua
+++ b/nselib/packet.lua
@@ -686,10 +686,7 @@ function Packet:parse_options(offset, length)
local opt_ptr = 0
while opt_ptr < length do
local t, l, d
- options[op] = {}
-
t = self:u8(offset + opt_ptr)
- options[op].type = t
if t==0 or t==1 then
l = 1
d = nil
@@ -699,6 +696,11 @@ function Packet:parse_options(offset, length)
d = self:raw(offset + opt_ptr + 2, l-2)
end
end
+ if l==0 then
+ break
+ end
+ options[op] = {}
+ options[op].type = t
options[op].len = l
options[op].data = d
opt_ptr = opt_ptr + l
@@ -12,6 +12,7 @@ SRC_URI = "http://nmap.org/dist/${BP}.tar.bz2 \
file://0001-fix-racing-between-build-ncat-and-build-lua.patch \
file://0004-libdnet-fix-PF_PACKET-conftest-nested-function.patch \
file://CVE-2026-58058.patch \
file://CVE-2026-72712.patch \
"
SRC_URI[sha256sum] = "df512492ffd108e53a27a06f26d8635bbe89e0e569455dc8ffef058c035d51b2"