Description
- The configuration files
/etc/audit/*.conf,/etc/audit/*.rules,/etc/audit/rules.d/*.rulesand/etc/audit/plugins.d/*.conf(on Ubuntu 20.04, auditd 2.8:/etc/audisp/*.confand/etc/audisp/plugins.d/*.conf) must be owned by root:root with mode0640or stricter. - The audit tools
auditctl,auditd,augenrules,aureport,ausearchandautracein/usr/sbin/must be owned by root:root with mode0755or stricter.
autrace is no longer shipped by auditd 4 (Ubuntu 26.04); its check is then not applicable.
Rationale
Writable rules or settings let a user disable auditing; a writable tool can be replaced by one that hides records. Readable rules tell an attacker what is watched.
Impact
None known. Ubuntu installs these files with these permissions, except on 20.04 where
audispd-plugins ships several files of /etc/audisp/ with mode 0644; the fix tightens them.
Setting
| Location | /etc/audit/, /usr/sbin/au* |
| Default | Configuration root:root 0640, tools root:root 0755 |
| Recommended | Configuration root:root 0640 or stricter, tools root:root 0755 or stricter |
Audit
- Run
stat -c '%n %U:%G %a' /etc/audit/*.conf /etc/audit/*.rules /etc/audit/rules.d/*.rules /etc/audit/plugins.d/*.conf. Each file must be root:root with mode 0640 or stricter. On Ubuntu 20.04, also check/etc/audisp/*.conf /etc/audisp/plugins.d/*.conf. - Run
stat -c '%n %U:%G %a' /usr/sbin/auditctl /usr/sbin/auditd /usr/sbin/augenrules /usr/sbin/aureport /usr/sbin/ausearch /usr/sbin/autrace. Each file must be root:root with mode 0755 or stricter.
Automated: every check must pass. Scanners report each check by its id.
conf
Owner, group and mode of /etc/audit/*.conf.
path: /etc/audit/*.conf
owner: root
group: root
mode: '0640'
rules
Owner, group and mode of /etc/audit/*.rules.
path: /etc/audit/*.rules
owner: root
group: root
mode: '0640'
rules-d
Owner, group and mode of /etc/audit/rules.d/*.rules.
path: /etc/audit/rules.d/*.rules
owner: root
group: root
mode: '0640'
plugins-d
Owner, group and mode of /etc/audit/plugins.d/*.conf.
path: /etc/audit/plugins.d/*.conf
owner: root
group: root
mode: '0640'
audisp
Owner, group and mode of /etc/audisp/*.conf (auditd 2.8, Ubuntu 20.04; not applicable when absent).
path: /etc/audisp/*.conf
owner: root
group: root
mode: '0640'
audisp-plugins-d
Owner, group and mode of /etc/audisp/plugins.d/*.conf (auditd 2.8, Ubuntu 20.04; not applicable when absent).
path: /etc/audisp/plugins.d/*.conf
owner: root
group: root
mode: '0640'
auditctl
Owner, group and mode of /usr/sbin/auditctl.
path: /usr/sbin/auditctl
owner: root
group: root
mode: '0755'
auditd
Owner, group and mode of /usr/sbin/auditd.
path: /usr/sbin/auditd
owner: root
group: root
mode: '0755'
augenrules
Owner, group and mode of /usr/sbin/augenrules.
path: /usr/sbin/augenrules
owner: root
group: root
mode: '0755'
aureport
Owner, group and mode of /usr/sbin/aureport.
path: /usr/sbin/aureport
owner: root
group: root
mode: '0755'
ausearch
Owner, group and mode of /usr/sbin/ausearch.
path: /usr/sbin/ausearch
owner: root
group: root
mode: '0755'
autrace
Owner, group and mode of /usr/sbin/autrace.
path: /usr/sbin/autrace
owner: root
group: root
mode: '0755'
Remediation
Run chown root:root and chmod 640 on the configuration files, and chown root:root and
chmod 755 on the tools.
| Restart | none |
| Disruption | none |
Rollback
No rollback needed; these are the Ubuntu defaults.
conf
Generated from check conf: the engine writes the fix for every output, it sets the expected value and the check runs again after.
rules
Generated from check rules: the engine writes the fix for every output, it sets the expected value and the check runs again after.
rules-d
Generated from check rules-d: the engine writes the fix for every output, it sets the expected value and the check runs again after.
plugins-d
Generated from check plugins-d: the engine writes the fix for every output, it sets the expected value and the check runs again after.
audisp
Generated from check audisp: the engine writes the fix for every output, it sets the expected value and the check runs again after.
audisp-plugins-d
Generated from check audisp-plugins-d: the engine writes the fix for every output, it sets the expected value and the check runs again after.
auditctl
Generated from check auditctl: the engine writes the fix for every output, it sets the expected value and the check runs again after.
auditd
Generated from check auditd: the engine writes the fix for every output, it sets the expected value and the check runs again after.
augenrules
Generated from check augenrules: the engine writes the fix for every output, it sets the expected value and the check runs again after.
aureport
Generated from check aureport: the engine writes the fix for every output, it sets the expected value and the check runs again after.
ausearch
Generated from check ausearch: the engine writes the fix for every output, it sets the expected value and the check runs again after.
autrace
Generated from check autrace: the engine writes the fix for every output, it sets the expected value and the check runs again after.
Each release turns these fixes into remediate.sh and an Ansible role per profile: dry run by default, a fix runs only when its check fails.
References
- auditctl(8), Ubuntu manual pages Canonical, vendor-doc, accessed 2026-10-19
- auditd.conf(5), Ubuntu manual pages Canonical, vendor-doc, accessed 2026-10-19
Mappings
| Framework | ID | Relation |
|---|---|---|
| ANSSI-BP-028 - Recommandations de configuration d'un système GNU/Linux2.0 | R73 | related |
| NIST SP 800-53 Rev. 55.1.1 | AU-9 | related |
How this control relates to the other framework's: equivalent, stricter, looser, partial or related.
Threats mitigated
Related controls
- requires
CB-UBU-AUDIT-011Install and run the audit daemon
People and lifecycle
| Authors |
|
| Verified | 2026-10-19 by Sn0wAlice on 20.04, Proxmox VM, Ubuntu 20.04 cloud image, kernel 5.4.0-216-generic. Not applicable before auditd; /etc/audisp files 0644 after install, fix tightens them; passes after reboot. |
| Verified | 2026-10-19 by Sn0wAlice on 22.04, Proxmox VM, Ubuntu 22.04 cloud image, kernel 5.15.0-198-generic. Not applicable before auditd; passes after install; kept after reboot. |
| Verified | 2026-10-19 by Sn0wAlice on 24.04, Proxmox VM, Ubuntu 24.04 cloud image, kernel 6.8.0-147-generic. Not applicable before auditd; passes after install; kept after reboot. |
| Verified | 2026-10-19 by Sn0wAlice on 26.04, Proxmox VM, Ubuntu 26.04 cloud image, kernel 7.0.0-38-generic. Not applicable before auditd; passes after install; kept after reboot. |
| Introduced in | v0.1.0 |
| Created, updated | 2026-10-19, 2026-10-19 |
| Translations | fr |