From 289247dab9e3af73d5c05bc50f6b1b58ec84216a Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Sun, 7 Mar 2021 13:25:40 +0100 Subject: [PATCH] plugins: netlink: slightly stricter ifname validation Check if ifname contains double periods, this should *not* be a valid name, though eth0.10 is, et0..10 is not. Should protect better against directory traversal attacks. Signed-off-by: Joachim Wiberg --- plugins/netlink.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/plugins/netlink.c b/plugins/netlink.c index 49984c52..370e0a30 100644 --- a/plugins/netlink.c +++ b/plugins/netlink.c @@ -120,6 +120,9 @@ static int validate_ifname(const char *ifname) if (strlen(ifname) >= IFNAMSIZ) return 1; + if (strstr(ifname, "..")) + return 1; + while (*ifname) { if (*ifname == '/' || isspace(*ifname)) return 1;