T03 · Remote Payload Retrieval and Execution
- Location
SKILL.md:16- Finding
Unverified Remote Installer Downloaded and Executed Directly
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 16–17
Vulnerability Type: Remote payload retrieval and execution
Risk Level: Highbash - **macOS / Linux**: `curl -fsSL https://d.officecli.ai/install.sh | bash` - **Windows (PowerShell)**: `irm https://d.officecli.ai/install.ps1 | iex`Technical Analysis
Both installation commands retrieve mutable content from
d.officecli.aiand pass it directly to a command interpreter. The downloaded scripts are executed without prior inspection, version pinning, checksum validation, or cryptographic signature verification.The effective installer payload is not contained in the audited project and can change after this skill has been reviewed. Consequently, the audit cannot establish what commands will execute when a user follows these instructions. Compromise of the distribution domain, hosting account, TLS termination infrastructure, or installer publication process would allow an attacker to substitute arbitrary shell or PowerShell code.
Installing OfficeCLI may be a legitimate prerequisite, but direct network-to-shell execution exceeds the minimum behavior necessary for the skill's declared presentation-generation functionality. The alternative GitHub release link mentioned at line 19 does not mitigate the unsafe primary installation instructions.
Attack Path
- A user or AI agent loads the skill and determines that
officecliis unavailable. - It follows the setup instructions on line 16 or 17.
- An attacker compromises or gains control over the remote installer endpoint or its publication pipeline.
- The endpoint returns an attacker-controlled shell or PowerShell script.
bashoriexexecutes the response immediately, with no opportunity for integrity verification.- The payload performs arbitrary actions under the privileges of the user who launched the command.
Impact Assessment
Successful exploitation provides arbitrary code execution with the invoking u ...[truncated 686 chars]
- A user or AI agent loads the skill and determines that
- Remediation
View remediation
Remediation Suggestions
- Remove both direct execution pipelines:
curl ... | bashirm ... | iex
- Link to a version-pinned release artifact from the official release repository instead of a mutable installer URL.
- Publish SHA-256 checksums through an independently protected channel and require users to verify the downloaded artifact before execution.
- Cryptographically sign release artifacts and document signature verification using a pinned maintainer identity.
- Separate download, inspection, verification, and execution into distinct commands.
- Prefer a reputable package manager where the package identity and version can be pinned.
- Run installation with ordinary user privileges unless a narrowly defined operation genuinely requires elevation.
- Pin the expected OfficeCLI version in the skill and document a controlled update process rather than automatically trusting the latest remote script.
- If an installer script remains necessary, include the reviewed, versioned script in the release or provide a stable commit-addressed URL so its contents cannot change after audit.
- Remove both direct execution pipelines:
