Back to skill

Security audit

Typeform

Security checks for vulnerabilities and agentic risk

Overview

The skill is mostly a read-only Typeform connector, but its fallback setup tells users or agents to run unverified remote installer scripts directly in a shell.

Install only if you are comfortable using OOMOL's oo CLI for Typeform access. Avoid running the pasted remote installer commands directly; prefer official, versioned installation instructions with verification, and review any command before running it. Once installed and authenticated, the listed Typeform actions are read-only.

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:60
Finding

Unverified Remote Installer Download and Immediate Execution

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 60–64
Vulnerability Type: Remote payload retrieval and execution
Risk Level: High

The first-time setup instructions execute mutable, remotely hosted installation scripts directly in a shell:

bash
curl -fsSL https://cli.oomol.com/install.sh | bash    # macOS / Linux
powershell
irm https://cli.oomol.com/install.ps1 | iex           # Windows PowerShell

Technical Analysis

Both installation commands retrieve content from an external server and immediately pass it to a command interpreter. The fetched payload is not pinned to a reviewed version and is not authenticated using a cryptographic signature or verified against a trusted checksum before execution.

HTTPS protects the connection in transit but does not guarantee that the hosted script remains identical to the version reviewed during this audit. Compromise of the hosting infrastructure, publishing account, DNS configuration, or upstream deployment process could cause arbitrary attacker-controlled commands to be delivered.

Because the script is executed without first being saved and inspected, the effective code can change after the Skill has been reviewed. This exceeds the minimum privileges required to direct users to a CLI installation package: installation can instead use a versioned artifact with independent integrity verification.

Attack Path

  1. The oo command is unavailable, causing the documented first-time setup path to be used.
  2. An attacker compromises or gains control over the remote installer endpoint or its deployment chain.
  3. The endpoint supplies a modified shell or PowerShell script containing attacker-controlled commands.
  4. bash or iex immediately executes the downloaded response without integrity verification or user inspection.
  5. The payload operates with the privileges of the user running the command and may perform further system actions.

...[truncated 697 chars]

Remediation
View remediation

Remediation Suggestions

  1. Remove direct curl | bash and irm | iex installation instructions.
  2. Distribute the CLI through a trusted package manager or a version-specific release artifact.
  3. Pin installation instructions to an explicit release version rather than a mutable installer URL.
  4. Require the artifact to be downloaded as a separate step.
  5. Publish cryptographic checksums or signatures through an independently protected channel and verify them before execution.
  6. Allow users to inspect the downloaded installer before running it.
  7. Require explicit user approval before installing software, and advise installation from a non-elevated account unless elevated privileges are strictly necessary.
  8. Document the expected files, permissions, network destinations, and system changes made by the installer.
Vulnerability Patterns
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
Findings (3)

Credential Access

High
Category
Privilege Escalation
Confidence
70% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

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

md
## Available actions

- `get_current_user` — Get the current Typeform user associated with the authenticated personal access token.
- `get_form` — Get one Typeform form by form ID.
- `get_workspace` — Get one Typeform workspace by workspace ID.
- `list_form_responses` — List responses submitted to one Typeform form.

External Script Fetching

High
Category
Supply Chain
Confidence
97% confidence
Finding

The skill instructs execution of a remote installation script via curl piped directly to bash, which is a classic supply-chain and remote code execution risk. If the remote host, transport, or script content is compromised, an agent or user following this guidance could execute arbitrary code on the local system.

Content

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

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The instruction to use this skill for ANY Typeform request is overly broad and can cause unintended routing of user tasks to this connector, even when a narrower or safer path would be more appropriate. In an agent environment, broad activation language increases the chance of overreach and unnecessary access to Typeform data.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.