Blame SOURCES/0001-Fix-permission-for-new-installation-logs.patch

34ae41
From 7da63502137eb8c111b8ae5b5426aec8f7ebdf6b Mon Sep 17 00:00:00 2001
34ae41
From: "Endi S. Dewata" <edewata@redhat.com>
34ae41
Date: Mon, 17 May 2021 15:39:44 -0500
34ae41
Subject: [PATCH] Fix permission for new installation logs
34ae41
34ae41
The enable_pki_logger() has been updated to disable
34ae41
world access for new installation logs to be created
34ae41
in /var/log/pki.
34ae41
34ae41
Resolves: CVE-2021-3551
34ae41
---
34ae41
 .../python/pki/server/deployment/pkilogging.py       | 12 ++++++++++--
34ae41
 1 file changed, 10 insertions(+), 2 deletions(-)
34ae41
34ae41
diff --git a/base/server/python/pki/server/deployment/pkilogging.py b/base/server/python/pki/server/deployment/pkilogging.py
34ae41
index 089a292559..0926173700 100644
34ae41
--- a/base/server/python/pki/server/deployment/pkilogging.py
34ae41
+++ b/base/server/python/pki/server/deployment/pkilogging.py
34ae41
@@ -21,8 +21,12 @@
34ae41
 # System Imports
34ae41
 from __future__ import absolute_import
34ae41
 import logging
34ae41
+import os
34ae41
+import pathlib
34ae41
 import pprint
34ae41
 
34ae41
+import pki
34ae41
+
34ae41
 sensitive_parameters = []
34ae41
 
34ae41
 # Initialize 'pretty print' for objects
34ae41
@@ -51,8 +55,12 @@ def enable_pki_logger(filename, name):
34ae41
     console_format = logging.Formatter('%(levelname)s: %(message)s')
34ae41
     console.setFormatter(console_format)
34ae41
 
34ae41
-    # Configure file handler
34ae41
-    log_file = logging.FileHandler(filename, 'w')
34ae41
+    # Create an empty file with the proper permission
34ae41
+    pathlib.Path(filename).touch()
34ae41
+    os.chmod(filename, pki.server.DEFAULT_FILE_MODE)
34ae41
+
34ae41
+    # Configure file handler with append mode to preserve the permission
34ae41
+    log_file = logging.FileHandler(filename)
34ae41
     file_format = logging.Formatter('%(asctime)s %(levelname)s: %(message)s',
34ae41
                                     '%Y-%m-%d %H:%M:%S')
34ae41
     log_file.setFormatter(file_format)
34ae41
-- 
34ae41
2.30.2
34ae41