Back to skill

Security audit

IPFS Server

Security checks for vulnerabilities and agentic risk

Overview

This is mostly a normal IPFS server operations skill, but it includes root-level installer guidance and credential-handling examples that deserve review before use.

Review the installation path before using it. Prefer a trusted package manager or verify Kubo checksums/signatures before running any downloaded installer with sudo. Keep the IPFS API bound to localhost unless you have firewalling and authentication in place, be deliberate before exposing a public gateway, and avoid entering real remote-pinning JWTs directly into shell history or shared terminals.

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

T08 · Insecure Dependencies

Error
Location
SKILL.md:22
Finding

Unverified Downloaded Installer Executes with Root Privileges

Content
View full analysis
Remediation
View remediation

T09 · Insecure Skill Coding Practices

Warning
Location
SKILL.md:99
Finding

Remote Pinning JWT Is Exposed Through Command-Line Arguments

Content
View full analysis
Remediation
View remediation
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (4)

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The README encourages users to initialize and run an IPFS node and highlights gateway services, peer management, and API-related capabilities without warning that these actions may expose network services, consume significant bandwidth/storage, or unintentionally make content accessible to others. In the context of an infrastructure skill, omission of these operational security warnings can lead users to deploy a reachable node or gateway with insufficient access controls and poor understanding of the resource and privacy implications.

Content

No source excerpt is available for this finding.

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
70% confidence
Finding

Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Content

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

Or download binary from dist.ipfs.tech

curl -O https://dist.ipfs.tech/kubo/v0.24.0/kubo_v0.24.0_darwin-amd64.tar.gz tar -xzf kubo_v0.24.0_darwin-amd64.tar.gz sudo ./kubo/install.sh

text

## Node Initialization

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The skill includes a remote pinning command that takes a JWT credential inline but does not warn users against pasting real secrets into shell history, logs, screenshots, or shared terminals. In an agent skill focused on operational commands, this increases the chance of credential exposure and unauthorized use of the remote pinning account.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

Remote pinning services:

bash
# Configure remote pinning (Pinata, Web3.Storage, etc.)
ipfs pin remote service add pinata https://api.pinata.cloud/psa YOUR_JWT

# Pin to remote service
ipfs pin remote add --service=pinata --name="my-content" QmHash

Static analysis

No suspicious patterns detected.