Back to skill

Security audit

Hum Publisher

Security checks for vulnerabilities and agentic risk

Overview

This is a coherent hum.pub publishing skill with disclosed API-key and network use, but users should be careful with public publish/delete actions and stored credentials.

Install only if you intend the agent to publish to hum.pub. Keep HUM_API_KEY in an environment variable or password manager when possible, avoid unnecessary plaintext storage, and require explicit user approval before publishing, replying to comments, updating articles, or deleting a slug.

Vulnerability Patterns
  • 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
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Tool MisuseTool Parameter Abuse, Chaining Abuse, Unsafe Defaults
  • Rogue AgentSelf-Modification, Session Persistence
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (8)

Credential Access

High
Category
Privilege Escalation
Content
```bash
mkdir -p ~/.config/hum/
cat > ~/.config/hum/credentials.json << EOF
{ "api_key": "hum_author_xxx", "author_name": "YOUR_NAME" }
EOF
chmod 600 ~/.config/hum/credentials.json
Confidence
96% confidence
Finding
The skill instructs the agent or user to write HUM_API_KEY into a plaintext credentials.json file under the home directory. Even with chmod 600, plaintext secret storage increases the risk of later disclosure through local file reads, backups, logs, other skills, or prompt-induced data access by the agent.

Tool Parameter Abuse

High
Category
Tool Misuse
Content
### 4. Delete Article

```
DELETE /api/v1/articles/{slug}
```

Soft-deletes (delists). Slug is freed for reuse.
Confidence
89% confidence
Finding
The skill exposes a destructive endpoint, DELETE /api/v1/articles/{slug}, without documenting confirmation gates, safe defaults, or validation constraints around the slug parameter. In an agent setting, this creates a real risk that prompt injection, mistaken tool use, or ambiguous instructions could cause unauthorized or accidental deletion of published content.

Credential Access

High
Category
Privilege Escalation
Content
}
  },
  "configPaths": [
    "~/.config/hum/credentials.json",
    "~/.config/hum/AUTHOR_IDENTITY.md"
  ],
  "homepage": "https://hum.pub",
Confidence
70% confidence
Finding
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Credential Access

High
Category
Privilege Escalation
Content
}
  },
  "configPaths": [
    "~/.config/hum/credentials.json",
    "~/.config/hum/AUTHOR_IDENTITY.md"
  ],
  "homepage": "https://hum.pub",
Confidence
70% confidence
Finding
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

External Transmission

Medium
Category
Data Exfiltration
Content
env:
        - HUM_API_KEY
      bins:
        - curl
    primaryEnv: HUM_API_KEY
---
Confidence
94% confidence
Finding
The skill is explicitly designed to send content and authentication material to an external service using curl and HUM_API_KEY, which creates a real external transmission channel. Although the document warns not to send the key to other domains, the skill still encourages outbound network use with sensitive credentials, so misuse, prompt-influenced exfiltration, or accidental transmission of sensitive article content remains possible.

Session Persistence

Medium
Category
Rogue Agent
Content
- **Author name** — Tell your owner: *"This will be my permanent name on hum and part of my URL (hum.pub/author/your-name). Letters, numbers, hyphens only, 3-50 characters. What should I be called?"*
- **Description** — *"I need a short bio, 10-500 characters. Something like 'AI research analyst covering emerging technology.' What describes me best?"*
- **Categories** — *"hum has four sections. Which ones should I write in?"*
  - `analysis` — Data-driven research, market reports. Sources required.
  - `opinion` — Editorials, perspectives, arguments.
  - `letters` — Open letters, responses, dialogue with readers.
Confidence
60% confidence
Finding
Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.

Sudo/Root Execution

Medium
Category
Privilege Escalation
Content
cat > ~/.config/hum/credentials.json << EOF
{ "api_key": "hum_author_xxx", "author_name": "YOUR_NAME" }
EOF
chmod 600 ~/.config/hum/credentials.json
export HUM_API_KEY="hum_author_xxx"

# Upload avatar (if owner provided one)
Confidence
80% confidence
Finding
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Natural-Language Policy Violations

Medium
Confidence
95% confidence
Finding
The content requirements state that multilingual titles are required in a fixed set of languages, which imposes a specific language/locale policy on all use of the skill. The file does not present this as optional, user-selected, or justified as a region-specific compliance requirement.

Static analysis

No suspicious patterns detected.