@gendigital/sage-openclaw 0.9.0 → 0.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +63 -20
- package/dist/index.cjs +1073 -653
- package/dist/index.cjs.map +4 -4
- package/dist/mcp-server.cjs +31776 -0
- package/dist/mcp-server.cjs.map +7 -0
- package/dist/model-download-worker.cjs +422 -29
- package/dist/model-download-worker.cjs.map +4 -4
- package/openclaw.plugin.json +1 -1
- package/package.json +13 -3
- package/resources/skills/security-awareness/SKILL.md +5 -1
- package/resources/threats/agent-layer.yaml +186 -0
- package/resources/threats/commands.yaml +24 -53
- package/resources/threats/credentials.yaml +12 -20
- package/resources/threats/dummy.yaml +22 -33
- package/resources/threats/files.yaml +34 -53
- package/resources/threats/mac-commands.yaml +20 -47
- package/resources/threats/mac-credentials.yaml +4 -12
- package/resources/threats/mac-files.yaml +5 -15
- package/resources/threats/mac-obfuscation.yaml +6 -13
- package/resources/threats/mac-persistence.yaml +11 -20
- package/resources/threats/mac-supply-chain.yaml +5 -8
- package/resources/threats/mitre.yaml +105 -167
- package/resources/threats/obfuscation.yaml +7 -15
- package/resources/threats/persistence.yaml +10 -17
- package/resources/threats/prompt-injection.yaml +94 -44
- package/resources/threats/self-defense.yaml +8 -12
- package/resources/threats/supply_chain.yaml +1 -2
- package/resources/threats/urls.yaml +9 -14
- package/resources/threats/win-commands.yaml +46 -106
- package/resources/threats/win-credentials.yaml +15 -25
- package/resources/threats/win-files.yaml +10 -20
- package/resources/threats/win-obfuscation.yaml +21 -37
- package/resources/threats/win-persistence.yaml +8 -16
- package/resources/threats/win-supply-chain.yaml +2 -3
- /package/resources/{allowlists → trusted-domains}/trusted-installer-domains.yaml +0 -0
|
@@ -6,9 +6,8 @@
|
|
|
6
6
|
# LaunchAgent/LaunchDaemon plist (migrated from files.yaml CLT-FILE-005)
|
|
7
7
|
- id: "CLT-MAC-FILE-001"
|
|
8
8
|
category: tool
|
|
9
|
-
severity:
|
|
9
|
+
severity: warning
|
|
10
10
|
confidence: 0.90
|
|
11
|
-
action: block
|
|
12
11
|
pattern: "(LaunchAgents|LaunchDaemons)/.*\\.plist$"
|
|
13
12
|
match_on: file_path
|
|
14
13
|
title: "Access macOS LaunchAgent/LaunchDaemon plist"
|
|
@@ -20,7 +19,6 @@
|
|
|
20
19
|
category: secrets
|
|
21
20
|
severity: critical
|
|
22
21
|
confidence: 0.95
|
|
23
|
-
action: block
|
|
24
22
|
pattern: "com\\.apple\\.TCC/TCC\\.db"
|
|
25
23
|
match_on: file_path
|
|
26
24
|
title: "Access TCC privacy permissions database"
|
|
@@ -32,7 +30,6 @@
|
|
|
32
30
|
category: secrets
|
|
33
31
|
severity: critical
|
|
34
32
|
confidence: 0.95
|
|
35
|
-
action: block
|
|
36
33
|
pattern: "(/etc/authorization|/var/db/auth\\.db)"
|
|
37
34
|
match_on: file_path
|
|
38
35
|
title: "Access macOS authorization database"
|
|
@@ -44,7 +41,6 @@
|
|
|
44
41
|
category: tool
|
|
45
42
|
severity: critical
|
|
46
43
|
confidence: 0.90
|
|
47
|
-
action: block
|
|
48
44
|
pattern: "(/Library/Extensions/|/System/Library/Extensions/).*\\.kext"
|
|
49
45
|
match_on: file_path
|
|
50
46
|
title: "Access kernel extension (.kext)"
|
|
@@ -56,7 +52,6 @@
|
|
|
56
52
|
category: tool
|
|
57
53
|
severity: critical
|
|
58
54
|
confidence: 0.90
|
|
59
|
-
action: block
|
|
60
55
|
pattern: "/Library/Security/SecurityAgentPlugins/"
|
|
61
56
|
match_on: file_path
|
|
62
57
|
title: "Access SecurityAgentPlugins directory"
|
|
@@ -66,9 +61,8 @@
|
|
|
66
61
|
# Periodic scripts directory
|
|
67
62
|
- id: "CLT-MAC-FILE-006"
|
|
68
63
|
category: tool
|
|
69
|
-
severity:
|
|
70
|
-
confidence: 0.
|
|
71
|
-
action: require_approval
|
|
64
|
+
severity: warning
|
|
65
|
+
confidence: 0.60
|
|
72
66
|
pattern: "/etc/periodic/(daily|weekly|monthly)/"
|
|
73
67
|
match_on: file_path
|
|
74
68
|
title: "Access macOS periodic scripts directory"
|
|
@@ -80,7 +74,6 @@
|
|
|
80
74
|
category: tool
|
|
81
75
|
severity: critical
|
|
82
76
|
confidence: 0.90
|
|
83
|
-
action: block
|
|
84
77
|
pattern: "/etc/emond\\.d/rules/"
|
|
85
78
|
match_on: file_path
|
|
86
79
|
title: "Access Event Monitor daemon rules directory"
|
|
@@ -92,7 +85,6 @@
|
|
|
92
85
|
category: secrets
|
|
93
86
|
severity: critical
|
|
94
87
|
confidence: 0.90
|
|
95
|
-
action: block
|
|
96
88
|
pattern: "/Safari/(Cookies\\.binarycookies|LastSession\\.plist|Databases|LocalStorage)"
|
|
97
89
|
match_on: file_path
|
|
98
90
|
title: "Access Safari credential/cookie store"
|
|
@@ -102,9 +94,8 @@
|
|
|
102
94
|
# Managed Preferences (MDM profiles)
|
|
103
95
|
- id: "CLT-MAC-FILE-009"
|
|
104
96
|
category: tool
|
|
105
|
-
severity:
|
|
106
|
-
confidence: 0.
|
|
107
|
-
action: require_approval
|
|
97
|
+
severity: warning
|
|
98
|
+
confidence: 0.60
|
|
108
99
|
pattern: "/Library/Managed Preferences/"
|
|
109
100
|
match_on: file_path
|
|
110
101
|
title: "Access Managed Preferences (MDM profile injection)"
|
|
@@ -116,7 +107,6 @@
|
|
|
116
107
|
category: secrets
|
|
117
108
|
severity: critical
|
|
118
109
|
confidence: 0.90
|
|
119
|
-
action: block
|
|
120
110
|
pattern: "/Library/Keychains/.*\\.keychain"
|
|
121
111
|
match_on: file_path
|
|
122
112
|
title: "Access system Keychain file"
|
|
@@ -7,7 +7,6 @@
|
|
|
7
7
|
category: tool
|
|
8
8
|
severity: critical
|
|
9
9
|
confidence: 0.90
|
|
10
|
-
action: block
|
|
11
10
|
pattern: "\\bosascript\\b.*do shell script"
|
|
12
11
|
case_insensitive: true
|
|
13
12
|
match_on: command
|
|
@@ -20,7 +19,6 @@
|
|
|
20
19
|
category: tool
|
|
21
20
|
severity: critical
|
|
22
21
|
confidence: 0.90
|
|
23
|
-
action: block
|
|
24
22
|
pattern: "\\bosascript\\b.*-l\\s+JavaScript.*-e"
|
|
25
23
|
case_insensitive: true
|
|
26
24
|
match_on: command
|
|
@@ -33,7 +31,6 @@
|
|
|
33
31
|
category: tool
|
|
34
32
|
severity: critical
|
|
35
33
|
confidence: 0.95
|
|
36
|
-
action: block
|
|
37
34
|
pattern: "base64\\s+(-d|-D|--decode).*\\|.*osascript"
|
|
38
35
|
match_on: command
|
|
39
36
|
title: "Base64 decode piped to osascript (encoded payload execution)"
|
|
@@ -45,7 +42,6 @@
|
|
|
45
42
|
category: tool
|
|
46
43
|
severity: critical
|
|
47
44
|
confidence: 0.90
|
|
48
|
-
action: block
|
|
49
45
|
pattern: "DYLD_INSERT_LIBRARIES=.*\\.(dylib|so)"
|
|
50
46
|
match_on: command
|
|
51
47
|
title: "Dynamic library injection via DYLD_INSERT_LIBRARIES"
|
|
@@ -55,9 +51,8 @@
|
|
|
55
51
|
# Quarantine attribute removal (evasion)
|
|
56
52
|
- id: "CLT-MAC-OBFUS-005"
|
|
57
53
|
category: tool
|
|
58
|
-
severity:
|
|
59
|
-
confidence: 0.
|
|
60
|
-
action: require_approval
|
|
54
|
+
severity: warning
|
|
55
|
+
confidence: 0.60
|
|
61
56
|
pattern: "\\bxattr\\b.*(-d|-c).*com\\.apple\\.quarantine"
|
|
62
57
|
match_on: command
|
|
63
58
|
title: "Quarantine attribute removal (Gatekeeper evasion)"
|
|
@@ -69,9 +64,8 @@
|
|
|
69
64
|
# plutil plist manipulation (payload hiding)
|
|
70
65
|
- id: "CLT-MAC-OBFUS-006"
|
|
71
66
|
category: tool
|
|
72
|
-
severity:
|
|
73
|
-
confidence: 0.
|
|
74
|
-
action: require_approval
|
|
67
|
+
severity: warning
|
|
68
|
+
confidence: 0.60
|
|
75
69
|
pattern: "\\bplutil\\b.*-convert\\s+(binary1|raw)"
|
|
76
70
|
match_on: command
|
|
77
71
|
title: "Plist conversion to binary (payload obfuscation)"
|
|
@@ -81,9 +75,8 @@
|
|
|
81
75
|
# Swift/swiftc inline execution
|
|
82
76
|
- id: "CLT-MAC-OBFUS-007"
|
|
83
77
|
category: tool
|
|
84
|
-
severity:
|
|
85
|
-
confidence: 0.
|
|
86
|
-
action: require_approval
|
|
78
|
+
severity: warning
|
|
79
|
+
confidence: 0.60
|
|
87
80
|
pattern: "\\bswift\\b\\s+-e\\s+[\"'].*\\b(Process|NSTask|URLSession|shell)\\b"
|
|
88
81
|
case_insensitive: true
|
|
89
82
|
match_on: command
|
|
@@ -6,9 +6,8 @@
|
|
|
6
6
|
# LaunchAgent/LaunchDaemon plist (migrated from persistence.yaml CLT-PERSIST-004)
|
|
7
7
|
- id: "CLT-MAC-PERSIST-001"
|
|
8
8
|
category: tool
|
|
9
|
-
severity:
|
|
9
|
+
severity: warning
|
|
10
10
|
confidence: 0.90
|
|
11
|
-
action: block
|
|
12
11
|
pattern: "(LaunchAgents|LaunchDaemons)/.*\\.plist"
|
|
13
12
|
match_on: command
|
|
14
13
|
title: "macOS LaunchAgent/LaunchDaemon persistence"
|
|
@@ -18,9 +17,8 @@
|
|
|
18
17
|
# Login Items via osascript
|
|
19
18
|
- id: "CLT-MAC-PERSIST-002"
|
|
20
19
|
category: tool
|
|
21
|
-
severity:
|
|
22
|
-
confidence: 0.
|
|
23
|
-
action: require_approval
|
|
20
|
+
severity: warning
|
|
21
|
+
confidence: 0.60
|
|
24
22
|
pattern: "\\bosascript\\b.*login item"
|
|
25
23
|
case_insensitive: true
|
|
26
24
|
match_on: command
|
|
@@ -31,9 +29,8 @@
|
|
|
31
29
|
# Login window manipulation via defaults
|
|
32
30
|
- id: "CLT-MAC-PERSIST-003"
|
|
33
31
|
category: tool
|
|
34
|
-
severity:
|
|
35
|
-
confidence: 0.
|
|
36
|
-
action: require_approval
|
|
32
|
+
severity: warning
|
|
33
|
+
confidence: 0.60
|
|
37
34
|
pattern: "\\bdefaults\\b.*\\bwrite\\b.*loginwindow.*(AutoLaunch|LoginHook|LogoutHook)"
|
|
38
35
|
case_insensitive: true
|
|
39
36
|
match_on: command
|
|
@@ -46,7 +43,6 @@
|
|
|
46
43
|
category: tool
|
|
47
44
|
severity: critical
|
|
48
45
|
confidence: 0.90
|
|
49
|
-
action: block
|
|
50
46
|
pattern: "/Library/Security/SecurityAgentPlugins/"
|
|
51
47
|
match_on: command
|
|
52
48
|
title: "Authorization plugin drop in SecurityAgentPlugins"
|
|
@@ -56,9 +52,8 @@
|
|
|
56
52
|
# Periodic script drop
|
|
57
53
|
- id: "CLT-MAC-PERSIST-005"
|
|
58
54
|
category: tool
|
|
59
|
-
severity:
|
|
60
|
-
confidence: 0.
|
|
61
|
-
action: require_approval
|
|
55
|
+
severity: warning
|
|
56
|
+
confidence: 0.60
|
|
62
57
|
pattern: "/etc/periodic/(daily|weekly|monthly)/"
|
|
63
58
|
match_on: command
|
|
64
59
|
title: "Periodic script persistence drop"
|
|
@@ -72,7 +67,6 @@
|
|
|
72
67
|
category: tool
|
|
73
68
|
severity: critical
|
|
74
69
|
confidence: 0.90
|
|
75
|
-
action: block
|
|
76
70
|
pattern: "/etc/emond\\.d/rules/"
|
|
77
71
|
match_on: command
|
|
78
72
|
title: "Event Monitor daemon rules persistence"
|
|
@@ -84,7 +78,6 @@
|
|
|
84
78
|
category: tool
|
|
85
79
|
severity: critical
|
|
86
80
|
confidence: 0.90
|
|
87
|
-
action: block
|
|
88
81
|
pattern: "DYLD_INSERT_LIBRARIES"
|
|
89
82
|
match_on: command
|
|
90
83
|
title: "DYLD_INSERT_LIBRARIES dylib injection (persistence/hijack)"
|
|
@@ -94,9 +87,8 @@
|
|
|
94
87
|
# Folder Actions via osascript
|
|
95
88
|
- id: "CLT-MAC-PERSIST-008"
|
|
96
89
|
category: tool
|
|
97
|
-
severity:
|
|
98
|
-
confidence: 0.
|
|
99
|
-
action: require_approval
|
|
90
|
+
severity: warning
|
|
91
|
+
confidence: 0.60
|
|
100
92
|
pattern: "\\bosascript\\b.*folder action"
|
|
101
93
|
case_insensitive: true
|
|
102
94
|
match_on: command
|
|
@@ -107,9 +99,8 @@
|
|
|
107
99
|
# launchctl load/bootstrap persistent agent
|
|
108
100
|
- id: "CLT-MAC-PERSIST-009"
|
|
109
101
|
category: tool
|
|
110
|
-
severity:
|
|
111
|
-
confidence: 0.
|
|
112
|
-
action: require_approval
|
|
102
|
+
severity: warning
|
|
103
|
+
confidence: 0.60
|
|
113
104
|
pattern: "\\blaunchctl\\b.*\\b(load|bootstrap)\\b"
|
|
114
105
|
match_on: command
|
|
115
106
|
title: "Load persistent launch agent/daemon via launchctl"
|
|
@@ -5,9 +5,8 @@
|
|
|
5
5
|
# brew install without version pin
|
|
6
6
|
- id: "CLT-MAC-SUPPLY-001"
|
|
7
7
|
category: supply_chain
|
|
8
|
-
severity:
|
|
9
|
-
confidence: 0.
|
|
10
|
-
action: require_approval
|
|
8
|
+
severity: warning
|
|
9
|
+
confidence: 0.60
|
|
11
10
|
pattern: "\\bbrew\\s+install\\b(?!.*@\\d)"
|
|
12
11
|
match_on: command
|
|
13
12
|
title: "Homebrew install without version pin"
|
|
@@ -17,9 +16,8 @@
|
|
|
17
16
|
# installer -pkg from remote URL
|
|
18
17
|
- id: "CLT-MAC-SUPPLY-002"
|
|
19
18
|
category: supply_chain
|
|
20
|
-
severity:
|
|
19
|
+
severity: warning
|
|
21
20
|
confidence: 0.85
|
|
22
|
-
action: block
|
|
23
21
|
pattern: "\\binstaller\\b.*-pkg.*https?://"
|
|
24
22
|
case_insensitive: true
|
|
25
23
|
match_on: command
|
|
@@ -30,9 +28,8 @@
|
|
|
30
28
|
# brew install --cask from non-default tap
|
|
31
29
|
- id: "CLT-MAC-SUPPLY-003"
|
|
32
30
|
category: supply_chain
|
|
33
|
-
severity:
|
|
34
|
-
confidence: 0.
|
|
35
|
-
action: require_approval
|
|
31
|
+
severity: warning
|
|
32
|
+
confidence: 0.60
|
|
36
33
|
pattern: "\\bbrew\\s+(install|reinstall)\\s+--cask\\b"
|
|
37
34
|
match_on: command
|
|
38
35
|
title: "Homebrew cask install (binary application)"
|