|
 |
fcec7e |
From 22c53808b5ced8580f2826ca6c268018345fac47 Mon Sep 17 00:00:00 2001
|
|
 |
fcec7e |
From: Michal Kubecek <mkubecek@suse.cz>
|
|
 |
fcec7e |
Date: Mon, 15 Jul 2019 08:46:23 +0200
|
|
 |
fcec7e |
Subject: [PATCH] conntrackd: use correct max unix path length
|
|
 |
fcec7e |
|
|
 |
fcec7e |
When copying value of "Path" option for unix socket, target buffer size is
|
|
 |
fcec7e |
UNIX_MAX_PATH so that we must not copy more bytes than that. Also make sure
|
|
 |
fcec7e |
that the path is null terminated and bail out if user provided path is too
|
|
 |
fcec7e |
long rather than silently truncate it.
|
|
 |
fcec7e |
|
|
 |
fcec7e |
Fixes: ce06fb606906 ("conntrackd: use strncpy() to unix path")
|
|
 |
fcec7e |
Signed-off-by: Michal Kubecek <mkubecek@suse.cz>
|
|
 |
fcec7e |
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
|
|
 |
fcec7e |
(cherry picked from commit b47e00e8a579519b163cb4faed017463bf64c40d)
|
|
 |
fcec7e |
---
|
|
 |
fcec7e |
src/read_config_yy.y | 7 ++++++-
|
|
 |
fcec7e |
1 file changed, 6 insertions(+), 1 deletion(-)
|
|
 |
fcec7e |
|
|
 |
fcec7e |
diff --git a/src/read_config_yy.y b/src/read_config_yy.y
|
|
 |
fcec7e |
index ceba6fc0d2426..4311cd6c9a2f5 100644
|
|
 |
fcec7e |
--- a/src/read_config_yy.y
|
|
 |
fcec7e |
+++ b/src/read_config_yy.y
|
|
 |
fcec7e |
@@ -689,8 +689,13 @@ unix_options:
|
|
 |
fcec7e |
|
|
 |
fcec7e |
unix_option : T_PATH T_PATH_VAL
|
|
 |
fcec7e |
{
|
|
 |
fcec7e |
- strncpy(conf.local.path, $2, PATH_MAX);
|
|
 |
fcec7e |
+ strncpy(conf.local.path, $2, UNIX_PATH_MAX);
|
|
 |
fcec7e |
free($2);
|
|
 |
fcec7e |
+ if (conf.local.path[UNIX_PATH_MAX - 1]) {
|
|
 |
fcec7e |
+ dlog(LOG_ERR, "UNIX Path is longer than %u characters",
|
|
 |
fcec7e |
+ UNIX_PATH_MAX - 1);
|
|
 |
fcec7e |
+ exit(EXIT_FAILURE);
|
|
 |
fcec7e |
+ }
|
|
 |
fcec7e |
};
|
|
 |
fcec7e |
|
|
 |
fcec7e |
unix_option : T_BACKLOG T_NUMBER
|
|
 |
fcec7e |
--
|
|
 |
fcec7e |
2.34.1
|
|
 |
fcec7e |
|