mirror of
https://gitlab.com/apparmor/apparmor
synced 2025-08-31 22:35:35 +00:00
Map c (create) log events to w instead of a
Creating a file is in theory covered by the 'a' permission, however discussion on IRC brought up that depending on the open flags it might not be enough (real-world example: creating the apache pid file). Therefore change the mapping to 'w' permissions. That might allow more than needed in some cases, but makes sure the profile always works. Acked-by: Kshitij Gupta <kgupta8592@gmail.com> for 2.9, 2.10 and trunk
This commit is contained in:
@@ -288,15 +288,15 @@ class ReadLog:
|
||||
self.debug_logger.debug('UNHANDLED (missing request_mask): %s' % e)
|
||||
return None
|
||||
|
||||
# Map c (create) to a and d (delete) to w (logging is more detailed than the profile language)
|
||||
# Map c (create) and d (delete) to w (logging is more detailed than the profile language)
|
||||
rmask = e['request_mask']
|
||||
rmask = rmask.replace('c', 'a')
|
||||
rmask = rmask.replace('c', 'w')
|
||||
rmask = rmask.replace('d', 'w')
|
||||
if not validate_log_mode(hide_log_mode(rmask)):
|
||||
raise AppArmorException(_('Log contains unknown mode %s') % rmask)
|
||||
|
||||
dmask = e['denied_mask']
|
||||
dmask = dmask.replace('c', 'a')
|
||||
dmask = dmask.replace('c', 'w')
|
||||
dmask = dmask.replace('d', 'w')
|
||||
if not validate_log_mode(hide_log_mode(dmask)):
|
||||
raise AppArmorException(_('Log contains unknown mode %s') % dmask)
|
||||
|
Reference in New Issue
Block a user