Bug 1232826 (CVE-2015-3243)

Summary: CVE-2015-3243 rsyslog: some log files are created world-readable
Product: [Other] Security Response Reporter: Vasyl Kaigorodov <vkaigoro>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED WONTFIX QA Contact:
Severity: low Docs Contact:
Priority: low    
Version: unspecifiedCC: aavati, carnil, jrusnack, nlevinki, redhat-bugzilla, rfortier, robert.scheck, security-response-team, smohan, ssaha, theinric, vbellur
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-07-14 02:36:21 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On: 1228192    
Bug Blocks: 1232828    

Description Vasyl Kaigorodov 2015-06-17 15:04:01 UTC
It was reported that rsyslogd creates log files world-readable, which might lead to an information disclosure.

Comment 1 Tomas Heinrich 2015-06-26 15:36:38 UTC
I'm wondering how to go about fixing this one...

The base line is to change the default umask for newly created files. But that doesn't take care of already existing log files - logrotate recreates the file before rsyslog gets a chance to do it. I'm unconvinced we should hard reset files to the right umask in the updated package.

The current way of setting couple of umasks during packages install and relying on logrotate to always preserve them on file rotation is extremely fragile. If a file goes missing once for whatever reason, the umask is reset to the service default.

Comment 2 Robert Scheck 2015-06-27 20:22:11 UTC
Can't we simply add "create 0600 root root" in /etc/logrotate.d/syslog, add
the /var/log/cron to the %post of rsyslog and finally add a chmod 600 for the
/var/log/{messages,secure,maillog,spooler,cron}* files in %post as well?

Comment 3 Kurt Seifried 2015-07-14 02:33:54 UTC

Please add:

create 0600 root root

to the /etc/logrotate.d/syslog file, this will ensure the file is created with permissions when logrotate runs. It is also recommended that users manually set the permissions on existing or newly installed log files in order to prevent access by untrusted users.

Comment 4 Kurt Seifried 2015-07-14 02:36:21 UTC

This issue affects the versions of rsyslog as shipped with Red Hat Enterprise Linux 7. Red Hat Product Security has rated this issue as having Low security impact. A future update may address this issue. For additional information, refer to the Issue Severity Classification: https://access.redhat.com/security/updates/classification/. Additionally a workaround is available (https://bugzilla.redhat.com/show_bug.cgi?id=1232826#c3).