Collect audit events for failed file access attempts indicating unauthorized access
Scanned 9/3/2026
Install to Claude Code
npx -y skills add CyberStrikeus/CyberStrike --skill cis-ubuntu1404-v210-4-1-11 --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Cis Ubuntu1404 V210 4 1 11?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/cyberstrikeus-cis-ubuntu1404-v210-4-1-11)More formats (shields.io, HTML) on the badges page.
---
name: "CIS Ubuntu 14.04 LTS - 4.1.11 Ensure unsuccessful unauthorized file access attempts are collected"
description: "Collect audit events for failed file access attempts indicating unauthorized access"
category: "cis-os-hardening"
version: "2.1.0"
author: "cyberstrike-official"
tags:
- cis
- ubuntu
- ubuntu-14.04
- level-2
- scored
- auditd
- file-access
- logging
cis_id: "4.1.11"
cis_benchmark: "CIS Ubuntu Linux 14.04 LTS Benchmark v2.1.0"
tech_stack:
- ubuntu
- linux
cwe_ids: []
chains_with: []
prerequisites: []
severity_boost: "medium"
---
# 4.1.11 Ensure unsuccessful unauthorized file access attempts are collected (Scored)
## Profile Applicability
- Level 2 - Server
- Level 2 - Workstation
## Description
Monitor for unsuccessful attempts to access files. The parameters below are associated with system calls that control creation (`creat`), opening (`open`, `openat`) and truncation (`truncate`, `ftruncate`) of files. An audit log record will only be written if the user is a non-privileged user (auid >= 1000), is not a Daemon event (auid=4294967295) and if the system call returned EACCES (permission denied to the file) or EPERM (some other permanent error associated with the specific system call). All audit records will be tagged with the identifier "access."
## Rationale
Failed attempts to open, create or truncate files could be an indication that an individual or process is trying to gain unauthorized access to the system.
## Audit Procedure
On a 32 bit system run the following commands:
```bash
grep access /etc/audit/audit.rules
auditctl -l | grep access
```
Verify output of both matches:
```
-a always,exit -F arch=b32 -S creat -S open -S openat -S truncate -S ftruncate -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access
-a always,exit -F arch=b32 -S creat -S open -S openat -S truncate -S ftruncate -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access
```
On a 64 bit system run the following commands:
```bash
grep access /etc/audit/audit.rules
auditctl -l | grep access
```
Verify output of both matches:
```
-a always,exit -F arch=b64 -S creat -S open -S openat -S truncate -S ftruncate -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access
-a always,exit -F arch=b32 -S creat -S open -S openat -S truncate -S ftruncate -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access
-a always,exit -F arch=b64 -S creat -S open -S openat -S truncate -S ftruncate -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access
-a always,exit -F arch=b32 -S creat -S open -S openat -S truncate -S ftruncate -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access
```
## Expected Result
The audit rules for access should be present and active.
## Remediation
For 32 bit systems add the following lines to the `/etc/audit/audit.rules` file:
```bash
-a always,exit -F arch=b32 -S creat -S open -S openat -S truncate -S ftruncate -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access
-a always,exit -F arch=b32 -S creat -S open -S openat -S truncate -S ftruncate -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access
```
For 64 bit systems add the following lines to the `/etc/audit/audit.rules` file:
```bash
-a always,exit -F arch=b64 -S creat -S open -S openat -S truncate -S ftruncate -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access
-a always,exit -F arch=b32 -S creat -S open -S openat -S truncate -S ftruncate -F exit=-EACCES -F auid>=1000 -F auid!=4294967295 -k access
-a always,exit -F arch=b64 -S creat -S open -S openat -S truncate -S ftruncate -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access
-a always,exit -F arch=b32 -S creat -S open -S openat -S truncate -S ftruncate -F exit=-EPERM -F auid>=1000 -F auid!=4294967295 -k access
```
**Notes:** Reloading the auditd config to set active settings may require a system reboot.
## Default Value
Not configured by default.
## References
1. CIS Controls v6.1 - 14.6 Enforce Detailed Audit Logging For Sensitive Information
## Profile
- Level 2 - Server
- Level 2 - Workstation
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!