Back to skill

Security audit

Star Office UI Master

Security checks for vulnerabilities and agentic risk

Overview

The skill is a real dashboard tool, but its public-sharing workflow exposes admin actions, local memory content, weak default credentials, and recurring status details more broadly than users are likely to expect.

Review carefully before installing or exposing this skill. Use it only in a trusted local environment unless you first set strong ASSET_DRAWER_PASS and Flask secret values, restrict or authenticate all mutating and memo endpoints, avoid publishing OpenClaw memory contents, and confirm exactly where status-push clients send state details and join keys.

Vulnerability Patterns
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • 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
Findings (4)

T05 · Unauthorized Access and Privilege Escalation

Error
Location
office-agent-push.py:21
Finding

Automatic transmission of local OpenClaw activity to a fixed third-party server

Content
View full analysis
STALE_STATE_TTL_SECONDS: state = "idle" detail = f"Local state was not updated for {STALE_STATE_TTL_SECONDS}s" return {"state": state, "detail": detail} except Exception: pass ``` ```pyth ...[truncated 2597 chars]
Remediation
View remediation

T05 · Unauthorized Access and Privilege Escalation

Error
Location
backend/app.py:873
Finding

Unauthenticated state modification and agent administration endpoints

Content
View full analysis
Remediation
View remediation

T09 · Insecure Skill Coding Practices

Error
Location
backend/app.py:1223
Finding

Unauthenticated OpenClaw memory disclosure with unsafe HTML rendering

Content
View full analysis
Remediation
View remediation

T09 · Insecure Skill Coding Practices

Error
Location
backend/app.py:83
Finding

Recommended public exposure retains predictable default authentication secrets

Content
View full analysis
bool: env = ( os.getenv("STAR_OFFICE_ENV") or os.getenv("FLASK_ENV") or "" ).strip().lower() return env in {"prod", "production"} ``` ```python if is_production_mode(): hardening_errors = [] if not is_strong_secret(str(app.secret_key)): hardening_errors.append( "FLASK_SECRET_KEY / STAR_OFFICE_SECRET is weak" ) if not is_strong_drawer_pass(ASSET_DRAWER_PASS_DEFAULT): hardening_errors.append( ...[truncated 2532 chars]
Remediation
View remediation
Vulnerability Patterns
  • Taint TrackingDirect Taint Flow, Variable-Mediated Taint Flow, Credential Exfiltration Chain
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (120)

Tainted flow: 'LOCAL_STATUS_URL' from os.environ.get (line 47, credential/environment) → requests.get (network output)

Critical
Category
Data Flow
Confidence
96% confidence
Finding

The script reads LOCAL_STATUS_URL from an environment variable and performs a GET request to it, optionally attaching an Authorization bearer token from OFFICE_LOCAL_STATUS_TOKEN. This creates an SSRF-style sink and credential exfiltration path: an attacker who can influence the environment can redirect the request to an attacker-controlled endpoint and capture the token or force connections to unintended internal services.

Content

Scanner excerpt · frontend/office-agent-push.py (reported line 172)May include surrounding context.

python
headers = {}
        if LOCAL_STATUS_TOKEN:
            headers["Authorization"] = f"Bearer {LOCAL_STATUS_TOKEN}"
        r = requests.get(LOCAL_STATUS_URL, headers=headers, timeout=5)
        if r.status_code == 200:
            data = r.json()
            state = normalize_state(data.get("state", "idle"))

Tainted flow: 'LOCAL_STATUS_URL' from os.environ.get (line 55, credential/environment) → requests.get (network output)

Critical
Category
Data Flow
Confidence
94% confidence
Finding

The script allows LOCAL_STATUS_URL to be fully controlled by an environment variable and then performs an authenticated requests.get to that URL, optionally attaching OFFICE_LOCAL_STATUS_TOKEN in the Authorization header. This creates an SSRF-style exfiltration path where a malicious skill/operator can redirect the request to an attacker-controlled endpoint and capture the bearer token or force connections to unintended internal services.

Content

Scanner excerpt · office-agent-push.py (reported line 180)May include surrounding context.

python
headers = {}
        if LOCAL_STATUS_TOKEN:
            headers["Authorization"] = f"Bearer {LOCAL_STATUS_TOKEN}"
        r = requests.get(LOCAL_STATUS_URL, headers=headers, timeout=5)
        if r.status_code == 200:
            data = r.json()
            state = normalize_state(data.get("state", "idle"))

Tp4

High
Category
MCP Tool Poisoning
Confidence
92% confidence
Finding

The skill markets itself as one-click deployment, but many steps involve manual shell execution, configuration changes, state mutation, optional secret setup, and operational exposure decisions. Overstating simplicity can pressure agents to execute a broad sequence without adequate user confirmation, which increases the chance of unsafe automated actions on the host.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

The skill markets itself as one-click deployment, but many steps involve manual shell execution, configuration changes, state mutation, optional secret setup, and operational exposure decisions. Overstating simplicity can pressure agents to execute a broad sequence without adequate user confirmation, which increases the chance of unsafe automated actions on the host.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
97% confidence
Finding

The skill markets itself as one-click deployment, but many steps involve manual shell execution, configuration changes, state mutation, optional secret setup, and operational exposure decisions. Overstating simplicity can pressure agents to execute a broad sequence without adequate user confirmation, which increases the chance of unsafe automated actions on the host.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

The skill markets itself as one-click deployment, but many steps involve manual shell execution, configuration changes, state mutation, optional secret setup, and operational exposure decisions. Overstating simplicity can pressure agents to execute a broad sequence without adequate user confirmation, which increases the chance of unsafe automated actions on the host.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The skill markets itself as one-click deployment, but many steps involve manual shell execution, configuration changes, state mutation, optional secret setup, and operational exposure decisions. Overstating simplicity can pressure agents to execute a broad sequence without adequate user confirmation, which increases the chance of unsafe automated actions on the host.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
95% confidence
Finding

The skill markets itself as one-click deployment, but many steps involve manual shell execution, configuration changes, state mutation, optional secret setup, and operational exposure decisions. Overstating simplicity can pressure agents to execute a broad sequence without adequate user confirmation, which increases the chance of unsafe automated actions on the host.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
97% confidence
Finding

The skill markets itself as one-click deployment, but many steps involve manual shell execution, configuration changes, state mutation, optional secret setup, and operational exposure decisions. Overstating simplicity can pressure agents to execute a broad sequence without adequate user confirmation, which increases the chance of unsafe automated actions on the host.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
92% confidence
Finding

The skill markets itself as one-click deployment, but many steps involve manual shell execution, configuration changes, state mutation, optional secret setup, and operational exposure decisions. Overstating simplicity can pressure agents to execute a broad sequence without adequate user confirmation, which increases the chance of unsafe automated actions on the host.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
94% confidence
Finding

The skill markets itself as one-click deployment, but many steps involve manual shell execution, configuration changes, state mutation, optional secret setup, and operational exposure decisions. Overstating simplicity can pressure agents to execute a broad sequence without adequate user confirmation, which increases the chance of unsafe automated actions on the host.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
95% confidence
Finding

The skill markets itself as one-click deployment, but many steps involve manual shell execution, configuration changes, state mutation, optional secret setup, and operational exposure decisions. Overstating simplicity can pressure agents to execute a broad sequence without adequate user confirmation, which increases the chance of unsafe automated actions on the host.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
95% confidence
Finding

The skill markets itself as one-click deployment, but many steps involve manual shell execution, configuration changes, state mutation, optional secret setup, and operational exposure decisions. Overstating simplicity can pressure agents to execute a broad sequence without adequate user confirmation, which increases the chance of unsafe automated actions on the host.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

The skill markets itself as one-click deployment, but many steps involve manual shell execution, configuration changes, state mutation, optional secret setup, and operational exposure decisions. Overstating simplicity can pressure agents to execute a broad sequence without adequate user confirmation, which increases the chance of unsafe automated actions on the host.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The skill markets itself as one-click deployment, but many steps involve manual shell execution, configuration changes, state mutation, optional secret setup, and operational exposure decisions. Overstating simplicity can pressure agents to execute a broad sequence without adequate user confirmation, which increases the chance of unsafe automated actions on the host.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
96% confidence
Finding

The skill markets itself as one-click deployment, but many steps involve manual shell execution, configuration changes, state mutation, optional secret setup, and operational exposure decisions. Overstating simplicity can pressure agents to execute a broad sequence without adequate user confirmation, which increases the chance of unsafe automated actions on the host.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

The skill markets itself as one-click deployment, but many steps involve manual shell execution, configuration changes, state mutation, optional secret setup, and operational exposure decisions. Overstating simplicity can pressure agents to execute a broad sequence without adequate user confirmation, which increases the chance of unsafe automated actions on the host.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The skill markets itself as one-click deployment, but many steps involve manual shell execution, configuration changes, state mutation, optional secret setup, and operational exposure decisions. Overstating simplicity can pressure agents to execute a broad sequence without adequate user confirmation, which increases the chance of unsafe automated actions on the host.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

The skill markets itself as one-click deployment, but many steps involve manual shell execution, configuration changes, state mutation, optional secret setup, and operational exposure decisions. Overstating simplicity can pressure agents to execute a broad sequence without adequate user confirmation, which increases the chance of unsafe automated actions on the host.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The skill markets itself as one-click deployment, but many steps involve manual shell execution, configuration changes, state mutation, optional secret setup, and operational exposure decisions. Overstating simplicity can pressure agents to execute a broad sequence without adequate user confirmation, which increases the chance of unsafe automated actions on the host.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
95% confidence
Finding

The skill markets itself as one-click deployment, but many steps involve manual shell execution, configuration changes, state mutation, optional secret setup, and operational exposure decisions. Overstating simplicity can pressure agents to execute a broad sequence without adequate user confirmation, which increases the chance of unsafe automated actions on the host.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
95% confidence
Finding

The skill markets itself as one-click deployment, but many steps involve manual shell execution, configuration changes, state mutation, optional secret setup, and operational exposure decisions. Overstating simplicity can pressure agents to execute a broad sequence without adequate user confirmation, which increases the chance of unsafe automated actions on the host.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

The skill markets itself as one-click deployment, but many steps involve manual shell execution, configuration changes, state mutation, optional secret setup, and operational exposure decisions. Overstating simplicity can pressure agents to execute a broad sequence without adequate user confirmation, which increases the chance of unsafe automated actions on the host.

Content

No source excerpt is available for this finding.

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

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

md
python3 -m pip install -r backend/requirements.txt

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

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

md
python3 -m pip install -r backend/requirements.txt

Static analysis

Detected: suspicious.dangerous_exec, suspicious.dynamic_code_execution, suspicious.install_untrusted_source

Shell command execution detected (child_process).

Critical
Code
suspicious.dangerous_exec
Location
electron-shell/main.js:168

Dynamic code execution detected.

Critical
Code
suspicious.dynamic_code_execution
Location
frontend/vendor/phaser-3.80.1.min.js:1

Install source points to URL shortener or raw IP.

Warn
Code
suspicious.install_untrusted_source
Location
desktop-pet/src-tauri/tauri.conf.json:17