macOS xattr-acls extra stuff
HackTricksをサポートする
サブスクリプションプランを確認してください!
**💬 DiscordグループまたはTelegramグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
ハッキングのトリックを共有するには、HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してください。
rm -rf /tmp/test*
echo test >/tmp/test
chmod +a "everyone deny write,writeattr,writeextattr,writesecurity,chown" /tmp/test
./get_acls test
ACL for test:
!#acl 1
group:ABCDEFAB-CDEF-ABCD-EFAB-CDEF0000000C:everyone:12:deny:write,writeattr,writeextattr,writesecurity,chown
ACL in hex: \x21\x23\x61\x63\x6c\x20\x31\x0a\x67\x72\x6f\x75\x70\x3a\x41\x42\x43\x44\x45\x46\x41\x42\x2d\x43\x44\x45\x46\x2d\x41\x42\x43\x44\x2d\x45\x46\x41\x42\x2d\x43\x44\x45\x46\x30\x30\x30\x30\x30\x30\x30\x43\x3a\x65\x76\x65\x72\x79\x6f\x6e\x65\x3a\x31\x32\x3a\x64\x65\x6e\x79\x3a\x77\x72\x69\x74\x65\x2c\x77\x72\x69\x74\x65\x61\x74\x74\x72\x2c\x77\x72\x69\x74\x65\x65\x78\x74\x61\x74\x74\x72\x2c\x77\x72\x69\x74\x65\x73\x65\x63\x75\x72\x69\x74\x79\x2c\x63\x68\x6f\x77\x6e\x0a
get_aclsのコード
```c // gcc -o get_acls get_acls #include #include #include
int main(int argc, char *argv[]) { if (argc != 2) { fprintf(stderr, "Usage: %s \n", argv[0]); return 1; }
const char *filepath = argv[1]; acl_t acl = acl_get_file(filepath, ACL_TYPE_EXTENDED); if (acl == NULL) { perror("acl_get_file"); return 1; }
char *acl_text = acl_to_text(acl, NULL); if (acl_text == NULL) { perror("acl_to_text"); acl_free(acl); return 1; }
printf("ACL for %s:\n%s\n", filepath, acl_text);
// Convert acl_text to hexadecimal and print it printf("ACL in hex: "); for (char *c = acl_text; *c != '\0'; c++) { printf("\x%02x", (unsigned char)*c); } printf("\n");
acl_free(acl); acl_free(acl_text); return 0; }
```markdown
<details>
<summary>macOSのファイルシステムトリック</summary>
macOSは、ファイルシステムに関していくつかのセキュリティ機能を提供しています。これには、拡張属性(xattr)やアクセス制御リスト(ACL)が含まれます。これらの機能を利用することで、特定のファイルやディレクトリに対するアクセス権を細かく制御できます。
### 拡張属性(xattr)
拡張属性は、ファイルに追加のメタデータを保存するための機能です。これにより、ファイルの特性や状態に関する情報を保持できます。例えば、特定のアプリケーションがファイルをどのように扱うかを指定するために使用されることがあります。
### アクセス制御リスト(ACL)
ACLは、ファイルやディレクトリに対するアクセス権を詳細に設定するための仕組みです。これにより、ユーザーやグループごとに異なる権限を設定できます。ACLを使用することで、より柔軟なアクセス管理が可能になります。
### 追加の情報
macOSのセキュリティ機能を理解し、適切に利用することで、システムの安全性を高めることができます。特に、xattrやACLを活用することで、ファイルシステムのセキュリティを強化することができます。
</details>
# Lets add the xattr com.apple.xxx.xxxx with the acls
mkdir start
mkdir start/protected
./set_xattr start/protected
echo something > start/protected/something
Last updated