Back to skill

Security audit

SwipeNode Web Extractor

Security checks for vulnerabilities and agentic risk

Overview

This skill is a real web-extraction integration, but it asks agents to broadly use an externally installed CLI that can bypass site protections and is not fully auditable from the package itself.

Install only if you trust the upstream swipenode project and are comfortable with an agent making outbound requests to websites using browser/TLS impersonation. Avoid sensitive URLs or credentials in targets, do not run it with elevated privileges, and use impersonation only with explicit intent and respect for site terms and law.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • 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
Findings (1)

T08 · Insecure Dependencies

Warning
Location
install.sh:4
Finding
Unverified Third-Party Source Download and Installation## Vulnerability Details **File Location**: `install.sh`, lines 4-7 **Vulnerability Type**: Supply-chain risk from remotely retrieved source and transitive dependencies **Risk Level**: Medium ### Vulnerable Code ```bash echo "Source: https://github.com/sirToby99/swipenode" # Pinned to a specific version for security and reproducible builds go install github.com/sirToby99/swipenode@v1.6.4 ``` ### Technical Analysis The installation script uses `go install` to retrieve, compile, and install code from an external GitHub-hosted Go module. Although the module is pinned to version tag `v1.6.4`, the project does not provide an independently verified commit identifier, expected source or artifact hash, signature, vendored source tree, or reproducible-build verification procedure. Consequently, the effective implementation and its transitive dependencies are not available for review within this skill package. Trust is delegated to the upstream repository, Go module distribution infrastructure, and all relevant dependencies. If any of those sources are compromised, the downloaded executable could contain behavior that was not present during this audit. There is also a version-provenance inconsistency: `SKILL.md` declares skill version `1.6.3`, while `install.sh` installs SwipeNode `v1.6.4`. This makes it harder for users and reviewers to determine which implementation corresponds to the audited package. The audit did not find evidence that the supplied shell script itself performs privilege escalation or persistence. The installation normally operates with the invoking user's privileges and writes to the configured Go binary directory. The risk arises when the remotely built executable is subsequently invoked. ### Attack Path 1. An attacker compromises the upstream repository, release process, module-distribution path, or a required transitive dependency before installation. 2. Malicious behavior is introduced into the source associated with the requested module ...[truncated 1500 chars]
Remediation
## Remediation Suggestions 1. Bundle the complete, auditable source code required to build the executable, including an appropriate dependency lock state, so reviewers can inspect the implementation distributed with the skill. 2. Pin the upstream source to an immutable, reviewed commit and document the relationship between that commit and the declared release. 3. Publish signed release artifacts and verify both the signature and a cryptographic hash before installation. 4. Use reproducible builds and publish expected build hashes so users can confirm that binaries correspond to reviewed source. 5. Retain and verify Go module checksums, review all direct and transitive dependencies, and use automated dependency and provenance scanning. 6. Align the version declared in `SKILL.md` with the version installed by `install.sh`. 7. Avoid running installation or the resulting executable with administrative privileges; use a dedicated, minimally privileged account or sandbox with restricted filesystem and network access. 8. Document the executable's required outbound destinations and data handling, and restrict outbound access to target sites when operationally feasible.
Vulnerability Patterns
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • 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 (3)

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding
This is a mismatch because the supplied code chunk is only an installer script that fetches and installs an external Go tool. The declared description describes a functional web-reading capability with specific behavioral claims, but none of that behavior is present in the provided code. While installation can be a supporting detail, here the entire code chunk is limited to installing third-party software, so the actual observable behavior materially differs from the declared purpose.

Vague Triggers

Medium
Confidence
95% confidence
Finding
The skill tells an agent to generally prefer this tool for broad classes of web-reading tasks, which can cause autonomous overuse of a network-capable tool without specific user awareness or consent. Because the tool may access arbitrary URLs and use browser impersonation, overly broad invocation guidance increases the chance of unnecessary outbound requests and interaction with sites under conditions the user did not explicitly approve.

Missing User Warnings

Medium
Confidence
93% confidence
Finding
The usage instructions encourage making network requests and optionally spoofing TLS/browser fingerprints, but they do not present this as a clear up-front warning to the user. That omission is risky because browser impersonation and WAF bypass behavior can have legal, policy, and security implications, and users may not realize the agent is contacting third-party systems in a less transparent way.

Static analysis

No suspicious patterns detected.