Back to skill

Security audit

MANOR Edge

Security checks for vulnerabilities and agentic risk

Overview

The skill installs MANOR Edge with verification checks and leaves pairing, passwords, and administrator approval under the owner's control.

Install if you want this Mac connected to your MANOR home and cameras. Review Premium's administrator prompt, and enter passwords and pairing keys yourself. This assessment covers the skill instructions, not the downloaded application's internals.

Vulnerability Patterns
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Rogue AgentSelf-Modification, Session Persistence
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
Findings (4)

External Script Fetching

High
Category
Supply Chain
Confidence
90% confidence
Finding

Remote code is downloaded and executed. This bypasses code review and could introduce malicious code.

Content

Scanner excerpt · SKILL.md (reported line 66)May include surrounding context.

md
only.
- **No sudo and no administrator prompts from you.** The app asks for
  administrator approval itself when a Premium home needs it.
- **No `curl | bash`** and no other piped or downloaded script. Run only the
  commands in this skill.
- **Never edit launchd.** Do not load, unload, kickstart, write or delete
  anything in `~/Library/LaunchAgents`, `/Library/LaunchAgents` or

External Script Fetching

High
Category
Supply Chain
Confidence
90% confidence
Finding

Remote code is downloaded and executed. This bypasses code review and could introduce malicious code.

Content

Scanner excerpt · SKILL.md (reported line 195)May include surrounding context.

md
[ "$kind" = mac-dmg-notarized ] || fail "unexpected release kind"
[ "$path" = "releases/app/$version/ManorEdge.dmg" ] || fail "unexpected download path"

curl --fail --silent --show-error --proto '=https' --max-redirs 0 \
  "$base/$path" -o "$work/ManorEdge.dmg"
printf '%s  %s\n' "$sha" "$work/ManorEdge.dmg" | shasum -a 256 -c - \
  || fail "checksum does not match the manifest"

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
70% confidence
Finding

Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Content

Scanner excerpt · SKILL.md (reported line 64)May include surrounding context.

md
you, tell them to create a new one in their account, because a shared key
  should be treated as exposed. The owner pastes a key into the app window
  only.
- **No sudo and no administrator prompts from you.** The app asks for
  administrator approval itself when a Premium home needs it.
- **No `curl | bash`** and no other piped or downloaded script. Run only the
  commands in this skill.

Session Persistence

Medium
Category
Rogue Agent
Confidence
75% confidence
Finding

Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.

Content

Scanner excerpt · SKILL.md (reported line 207)May include surrounding context.

md
mkdir "$mnt"
hdiutil attach -readonly -nobrowse -noautoopen -mountpoint "$mnt" "$work/ManorEdge.dmg" -quiet
[ -d "$mnt/ManorEdge.app" ] || fail "the disk image has no ManorEdge.app"
[ "$(plutil -extract CFBundleIdentifier raw -o - "$mnt/ManorEdge.app/Contents/Info.plist")" = com.manor.edge.menubar ] \
  || fail "unexpected bundle id"
codesign --verify --deep --strict -R="anchor apple generic and identifier \"com.manor.edge.menubar\" and $team" \
  "$mnt/ManorEdge.app" || fail "the app is not signed by MANOR"