Back to skill

Security audit

AutoResearchClaw Integration

Security checks for vulnerabilities and agentic risk

Overview

The skill is a disclosed autonomous research tool, but it asks agents to install and run unpinned third-party code with approvals disabled and broad external integrations.

Review before installing. Use this only in a sandbox or isolated workspace, pin the AutoResearchClaw repository to a trusted commit, avoid --auto-approve for normal use, limit network/API credentials passed to the process, and enable cron, memory, messaging, browser, sessions, or MetaClaw skill creation only with explicit need.

Vulnerability Patterns
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • 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
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Findings (1)

T03 · Remote Payload Retrieval and Execution

Error
Location
SKILL.md:55
Finding

Unpinned Remote Code Is Retrieved, Installed, and Automatically Executed

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 17-22 and 55-62
Vulnerability Type: Remote payload retrieval and execution
Risk Level: High

Vulnerable code snippet:

text
Agent workflow:
1. Check if AutoResearchClaw is installed (`which researchclaw`)
2. If not installed: clone, setup venv, install with `pip install -e .`
3. Copy `config.researchclaw.example.yaml` → `config.arc.yaml`
4. Ask user for LLM provider choice (OpenAI-compatible or ACP agent)
5. Configure with API keys or ACP agent selection
6. Run: `researchclaw run --topic "[topic]" --auto-approve`
bash
cd ~
git clone https://github.com/aiming-lab/AutoResearchClaw.git
cd AutoResearchClaw
python3 -m venv .venv
source .venv/bin/activate
pip install -e .

Technical Analysis

The Skill instructs the agent to clone the mutable default branch of an external Git repository, install it as a Python package, and execute its research pipeline. It does not pin the repository to a reviewed commit or signed release, verify artifact integrity, or lock transitive dependencies with cryptographic hashes.

pip install -e . processes package metadata and build configuration supplied by the retrieved repository. Depending on the package and build backend, installation can execute attacker-controlled build or installation logic. The installed researchclaw command then executes code from the same externally controlled source.

The subsequent use of --auto-approve further reduces oversight over the pipeline's actions and generated experimental code. The effective executable payload can therefore change after the Skill itself has been reviewed. This behavior exceeds the minimum privileges required to provide research guidance because it grants an unreviewed remote project local code-execution capability.

Attack Path

  1. An attacker compromises the upstream repository, a maintainer account, the repository's release pr ...[truncated 1731 chars]
Remediation
View remediation

Remediation Suggestions

  1. Pin the external repository to a specific, independently reviewed commit hash rather than cloning and executing its mutable default branch.
  2. Verify the repository or release using a trusted signature, checksum, or provenance attestation before installation.
  3. Use a dependency lockfile that pins all direct and transitive dependencies. Require cryptographic hashes for downloaded Python packages.
  4. Prefer a pre-reviewed, reproducible artifact from a trusted registry over an editable installation from a live Git checkout.
  5. Run installation and pipeline execution inside an ephemeral sandbox or container with:
    • A read-only or narrowly scoped filesystem.
    • No access to unrelated home-directory files.
    • A minimal environment containing only the credentials required for the selected provider.
    • Network egress restricted to explicitly approved LLM and literature-search endpoints.
    • CPU, memory, runtime, process, and GPU limits.
  6. Remove --auto-approve from the default workflow. Require explicit user approval before generated code is executed, dependencies are added, external messages are sent, or files outside the dedicated artifact directory are modified.
  7. Keep API credentials outside project configuration files, pass them through a scoped secret mechanism, and prevent child processes from inheriting credentials they do not require.
  8. Review generated experimental code before execution and run it in a separate sandbox without access to LLM credentials or unrelated user data.
  9. Disable optional scheduling, persistent memory, messaging, browser access, and parallel-session features by default. Enable each capability only after obtaining explicit user consent and applying destination and permission allowlists.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (11)

Missing User Warnings

High
Category
Not specified by scanner
Confidence
97% confidence
Finding

The description promotes automatic cloning, package installation, external API configuration, live literature collection, and experiment execution, but does not warn users up front that the skill may install software, run generated code, and access external services. That omission undermines informed consent and can lead to unexpected execution and data egress in response to a seemingly simple research request.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The skill advertises very broad trigger phrases like 'Research [topic]' and 'Write a paper about [topic]', which overlap with common user requests and can cause the skill to activate in many situations without clear user intent to permit installation, network access, or code execution. In context, this increases the chance that a normal academic-help request unexpectedly invokes a highly autonomous pipeline.

Content

No source excerpt is available for this finding.

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
95% confidence
Finding

The explicit '--auto-approve' flag indicates intentional bypass of interactive safeguards in a workflow that includes installation, configuration, and autonomous research actions. In this skill context, the flag is especially risky because the pipeline is designed to be fully autonomous and can trigger multiple external and execution-heavy steps.

Content

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

md
3. Copy `config.researchclaw.example.yaml` → `config.arc.yaml`
4. Ask user for LLM provider choice (OpenAI-compatible or ACP agent)
5. Configure with API keys or ACP agent selection
6. Run: `researchclaw run --topic "[topic]" --auto-approve`
7. Monitor progress, return results from `artifacts/rc-*/deliverables/`

### Configuration

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
95% confidence
Finding

The explicit '--auto-approve' flag indicates intentional bypass of interactive safeguards in a workflow that includes installation, configuration, and autonomous research actions. In this skill context, the flag is especially risky because the pipeline is designed to be fully autonomous and can trigger multiple external and execution-heavy steps.

Content

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

md
3. Copy `config.researchclaw.example.yaml` → `config.arc.yaml`
4. Ask user for LLM provider choice (OpenAI-compatible or ACP agent)
5. Configure with API keys or ACP agent selection
6. Run: `researchclaw run --topic "[topic]" --auto-approve`
7. Monitor progress, return results from `artifacts/rc-*/deliverables/`

### Configuration

External Transmission

Medium
Category
Data Exfiltration
Confidence
80% confidence
Finding

The skill explicitly configures an external LLM endpoint and elsewhere references multiple online data sources, meaning user prompts, research topics, and possibly intermediate content may be transmitted to third-party services. In a research-assistant context this may be expected, but it is still a real data-exposure risk because the skill does not impose minimization, consent, or destination restrictions.

Content

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

yaml
llm:
  provider: "openai-compatible"
  base_url: "https://api.openai.com/v1"
  api_key_env: "OPENAI_API_KEY"  # or ask for key
  primary_model: "gpt-4o"
  fallback_models: ["gpt-4o-mini"]

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
95% confidence
Finding

At the basic usage line, '--auto-approve' removes user review from a command likely to be copied verbatim. This creates a practical exploitation path where a benign user request results in immediate autonomous execution of a complex external toolchain.

Content

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

Basic Command

bash
researchclaw run --topic "Your research idea" --auto-approve

With Specific Config

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
95% confidence
Finding

At the basic usage line, '--auto-approve' removes user review from a command likely to be copied verbatim. This creates a practical exploitation path where a benign user request results in immediate autonomous execution of a complex external toolchain.

Content

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

Basic Command

bash
researchclaw run --topic "Your research idea" --auto-approve

With Specific Config

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
95% confidence
Finding

Including '--auto-approve' in the config-driven invocation is dangerous because configuration can silently expand capabilities while still suppressing approvals. This combination can lead to unattended network access, software execution, and data handling under a user-supplied topic with limited oversight.

Content

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

With Specific Config

bash
researchclaw run --config config.arc.yaml --topic "Your research idea" --auto-approve

Output Location

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
95% confidence
Finding

Including '--auto-approve' in the config-driven invocation is dangerous because configuration can silently expand capabilities while still suppressing approvals. This combination can lead to unattended network access, software execution, and data handling under a user-supplied topic with limited oversight.

Content

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

With Specific Config

bash
researchclaw run --config config.arc.yaml --topic "Your research idea" --auto-approve

Output Location

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
93% confidence
Finding

The advanced usage example again promotes '--auto-approve', showing that bypassing approvals is embedded into the skill's normal operating model rather than being an exceptional troubleshooting option. In a skill that can generate experiments and access online sources, that increases the systemic risk of unsafe autonomous behavior.

Content

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

Specify Research Domains

bash
researchclaw run --topic "Your topic" --domains ml,nlp --auto-approve

Target Specific Conference

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
93% confidence
Finding

The advanced usage example again promotes '--auto-approve', showing that bypassing approvals is embedded into the skill's normal operating model rather than being an exceptional troubleshooting option. In a skill that can generate experiments and access online sources, that increases the systemic risk of unsafe autonomous behavior.

Content

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

Specify Research Domains

bash
researchclaw run --topic "Your topic" --domains ml,nlp --auto-approve

Target Specific Conference

Static analysis

No suspicious patterns detected.