You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
1006 B
31 lines
1006 B
From c14b8b511ac55f6933aebefbd6cc27c1ec74ad58 Mon Sep 17 00:00:00 2001 |
|
From: Simon Kelley <simon@thekelleys.org.uk> |
|
Date: Mon, 25 Sep 2017 18:47:15 +0100 |
|
Subject: [PATCH 2/9] Security fix, CVE-2017-14492, DHCPv6 RA heap |
|
overflow. |
|
|
|
Fix heap overflow in IPv6 router advertisement code. |
|
This is a potentially serious security hole, as a |
|
crafted RA request can overflow a buffer and crash or |
|
control dnsmasq. Attacker must be on the local network. |
|
--- |
|
src/radv.c | 3 +++ |
|
1 file changed, 3 insertions(+) |
|
|
|
diff --git a/src/radv.c b/src/radv.c |
|
index 749b666..d09fe0e 100644 |
|
--- a/src/radv.c |
|
+++ b/src/radv.c |
|
@@ -198,6 +198,9 @@ void icmp6_packet(time_t now) |
|
/* look for link-layer address option for logging */ |
|
if (sz >= 16 && packet[8] == ICMP6_OPT_SOURCE_MAC && (packet[9] * 8) + 8 <= sz) |
|
{ |
|
+ if ((packet[9] * 8 - 2) * 3 - 1 >= MAXDNAME) { |
|
+ return; |
|
+ } |
|
print_mac(daemon->namebuff, &packet[10], (packet[9] * 8) - 2); |
|
mac = daemon->namebuff; |
|
} |
|
-- |
|
2.9.5 |
|
|
|
|