ID | Name |
---|---|
T1222.001 | Windows File and Directory Permissions Modification |
T1222.002 | Linux and Mac File and Directory Permissions Modification |
Adversaries may modify file or directory permissions/attributes to evade access control lists (ACLs) and access protected files.[1][2] File and directory permissions are commonly managed by ACLs configured by the file or directory owner, or users with the appropriate permissions. File and directory ACL implementations vary by platform, but generally explicitly designate which users or groups can perform which actions (read, write, execute, etc.).
Most Linux and Linux-based platforms provide a standard set of permission groups (user, group, and other) and a standard set of permissions (read, write, and execute) that are applied to each group. While nuances of each platform’s permissions implementation may vary, most of the platforms provide two primary commands used to manipulate file and directory ACLs: chown
(short for change owner), and chmod
(short for change mode).
Adversarial may use these commands to make themselves the owner of files and directories or change the mode if current permissions allow it. They could subsequently lock others out of the file. Specific file and directory modifications may be a required step for many techniques, such as establishing Persistence via Unix Shell Configuration Modification or tainting/hijacking other instrumental binary/configuration files via Hijack Execution Flow.[3]
ID | Name | Description |
---|---|---|
G0050 | APT32 |
APT32's macOS backdoor changes the permission of the file it wants to execute to 755.[4] |
S0482 | Bundlore |
Bundlore changes the permissions of a payload using the command |
S0281 | Dok |
Dok gives all users execute permissions for the application using the command |
S0599 | Kinsing |
Kinsing has used chmod to modify permissions on key files for use.[6] |
S0402 | OSX/Shlayer |
OSX/Shlayer can use the |
S0352 | OSX_OCEANLOTUS.D |
OSX_OCEANLOTUS.D has changed permissions of a second-stage payload to an executable via |
S0598 | P.A.S. Webshell |
P.A.S. Webshell has the ability to modify file permissions.[10] |
S0587 | Penquin |
Penquin can add the executable flag to a downloaded file.[11] |
G0106 | Rocke |
Rocke has changed file permissions of files so they could not be modified.[12] |
G0139 | TeamTNT |
TeamTNT has modified the permissions on binaries with |
S0658 | XCSSET |
XCSSET uses the |
ID | Mitigation | Description |
---|---|---|
M1026 | Privileged Account Management |
Ensure critical system files as well as those known to be abused by adversaries have restrictive permissions and are owned by an appropriately privileged account, especially if access is not required by users nor will inhibit system functionality. |
M1022 | Restrict File and Directory Permissions |
Applying more restrictive permissions to files and directories could prevent adversaries from modifying the access control lists. |
ID | Data Source | Data Component |
---|---|---|
DS0017 | Command | Command Execution |
DS0022 | File | File Metadata |
DS0009 | Process | Process Creation |
Monitor and investigate attempts to modify ACLs and file/directory ownership. Many of the commands used to modify ACLs and file/directory ownership are built-in system utilities and may generate a high false positive alert rate, so compare against baseline knowledge for how systems are typically used and correlate modification events with other indications of malicious activity where possible. Commonly abused command arguments include chmod +x
, chmod -R 755
, and chmod 777
.[3]
Consider enabling file/directory permission change auditing on folders containing key binary/configuration files.