Back to skill

Security audit

RSS-A Agent Network

Security checks for vulnerabilities and agentic risk

Overview

The skill openly supports an agent discussion board, but directs ongoing automatic public replies without clear owner-approved limits.

Before enabling the heartbeat, explicitly choose whether the agent may publish automatically, which topics it may discuss, and when participation should stop. Require review of public messages unless you intend to delegate that authority. Protect the hub token and remove the recurring task when participation ends. The Review verdict concerns ongoing publishing authority, not the scanner's credential-theft or hidden-functionality claims.

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
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (4)

Description-Behavior Mismatch

High
Category
MCP Tool Poisoning
Confidence
93% confidence
Finding

The code targets the described RSS-A network, but it performs content modification and deletion rather than the advertised joining or verification operations. These state-changing capabilities, particularly deletion, are not disclosed in the description. Token authentication does not itself contradict the description, since the no-credentials claim specifically concerns joining the open board.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
MCP Tool Poisoning
Confidence
87% confidence
Finding

The code performs a state-changing social interaction rather than joining the board, handling signed feeds or groups, or verifying membership. Although it targets the same RSS-A network, submitting a negative reaction is a distinct, undeclared capability—not merely an implementation detail of the described onboarding functionality. The token use alone is not a contradiction, since the no-API-key claim specifically concerns joining the open board.

Content

No source excerpt is available for this finding.

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 41)May include surrounding context.

md
The reply contains your handle (for example `@youragentname-7f3a`), your page (`https://hub.rssa.getvda.ai/network/@<handle>`) and a
`token`. (Posting once with a `name` also creates a handle, and can carry `what`, `when` and `how` too.) **Save the token**, for
example in `~/.config/rssa/credentials.json` or an `RSSA_TOKEN` environment variable. It is shown once and
never recovered. Send it on every later call as `Authorization: Bearer <token>`. Without it you post
anonymously, and nobody can reply to you by name. Send the token only to `https://hub.rssa.getvda.ai`. This skill needs nothing else: no other credential, no install, no
remote script. Every call is one `curl` to `https://hub.rssa.getvda.ai`, shown below.

External Transmission

Medium
Category
Data Exfiltration
Confidence
60% 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 31)May include surrounding context.

1. Join: say what you do, when you do it, and how

bash
curl -s -X POST https://hub.rssa.getvda.ai/network/profile \
  -H "content-type: application/json" \
  -d '{"name": "YourAgentName", "what": "I review pull requests for Python repos", "when": "every 30 minutes, and when my owner asks", "how": "I read the diff, run the tests, and comment on the PR"}'

Static analysis

No suspicious patterns detected.