Back to skill

Security audit

Cross Bot Communication

Security checks for vulnerabilities and agentic risk

Overview

The skill is documentation-only and not malicious, but it asks the agent to automatically map Telegram groups, channels, bot ownership, and admin status without clear consent or deletion controls.

Install only if you are comfortable with an agent mapping Telegram groups/channels and bot relationships it can access. Before using it, require explicit per-scan consent, restrict discovery to named chats or bots, confirm each outbound message route, and define how relationship data can be reviewed and deleted.

Vulnerability Patterns
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
  • 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)

T05 · Unauthorized Access and Privilege Escalation

Warning
Location
README.md:112
Finding

Automatic Enumeration and Storage of Messaging Relationships Without Defined Authorization Boundaries

Content
View full analysis

Vulnerability Details

File Location: SKILL.md:19-27, SKILL.md:43-47, README.md:49-51, README.md:112-125, README.md:145-156
Vulnerability Type: Automatic messaging-environment enumeration and excessive relationship-data collection
Risk Level: Medium

Relevant Source Snippet

The documented relationship table includes persistent identifiers, group and channel memberships, and administrator status:

json
{
  "relations": [
    {
      "owner_id": "123456",
      "bot_username": "@YinxiaBot",
      "groups": ["-100123", "-100456"],
      "channels": ["-100789"],
      "is_admin": true
    }
  ]
}

The configuration also models target bots and the groups in which they have administrator access:

json
{
  "known_bots": {
    "@example_bot": {
      "name": "Example Bot",
      "in_channel": true,
      "is_admin_in": ["GROUP_ID_1", "GROUP_ID_2"]
    }
  }
}

Technical Analysis

The documentation directs the agent to scan existing Telegram groups and channels automatically, construct a social relationship table, inspect bot membership and administrator status, and use that information to select a communication route.

No explicit authorization workflow, per-chat scope restriction, retention period, access-control policy, or data-minimization requirement is defined. Consequently, installation may cause the agent to enumerate messaging resources beyond the specific chat or target bot needed for the user's immediate request.

The relationship model contains security-sensitive metadata:

  • Stable owner identifiers
  • Bot usernames
  • Group and channel identifiers
  • Membership relationships
  • Administrator status

This information exposes the topology and privilege structure of the accessible messaging environment. If the main agent, a delegated subagent, or its retained state is influenced by an untrusted instruction, the collected map could facilitate targeted messaging, impersonation, spam, or social engineering against privi ...[truncated 1798 chars]

Remediation
View remediation

Remediation Suggestions

  1. Require explicit user consent before performing any group or channel discovery.
  2. Limit discovery to the user-selected source chat and explicitly named target bot.
  3. Do not automatically enumerate every group or channel accessible to the agent.
  4. Collect only the fields required for the current relay request. Avoid retaining owner names, unrelated chat IDs, or privilege metadata.
  5. Require confirmation before every cross-chat or cross-channel message.
  6. Apply authorization checks that bind each request to the requesting user, source chat, target chat, and intended message.
  7. Prevent subagents from reading the complete relationship table unless required for a narrowly scoped operation.
  8. Encrypt relationship data at rest and restrict access to the main agent component responsible for authorization.
  9. Define a short retention period and provide a mechanism to inspect and delete collected relationship records.
  10. Record security-relevant events, including discovery, authorization decisions, message destinations, and delivery attempts, without logging message secrets.
  11. Clearly document Telegram permission requirements and ensure that administrator privileges are never requested solely to improve convenience.
  12. Add implementation-level tests proving that an untrusted group participant cannot trigger discovery of unrelated chats or delivery to an unauthorized destination.
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (6)

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The README explicitly describes automatically scanning existing groups and channels to build a relationship table, but it does not mention obtaining informed user consent, minimizing collected data, or warning about privacy implications. In a cross-bot communication skill, this creates meaningful privacy risk because it normalizes silent discovery and aggregation of social graph data across chats and channels.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The README promises that after the user performs a single action, all remaining steps are completed automatically, including binding relationships and detecting channel presence, without any privacy notice or consent checkpoint. This is dangerous because it encourages unattended data collection and automated association of identities/bots/groups, which can expose membership and communication metadata beyond user expectations.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The skill explicitly describes automatic scanning of existing groups/channels and building relationship mappings, but it does not warn the user about this data discovery and graph-building behavior. That creates a privacy and consent problem because the agent may enumerate social context and communication topology without explicit user awareness or opt-in.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
83% confidence
Finding

The changelog entries switch to Chinese for user-visible natural-language content, but the file does not state that the skill is Chinese-only or offer any language/locale choice. Under the policy, forcing a specific language without opt-in can be a natural-language policy violation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
84% confidence
Finding

The document presents its core description in Chinese and does not indicate that users may choose another language or locale. Under the policy, forcing a specific language without opt-in can be a natural-language policy violation unless the locale constraint is explicitly justified.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
92% confidence
Finding

The description field forces a specific language in the skill metadata without offering an alternative language or stating that the skill is intended only for Chinese-speaking users. This can violate language/locale policy expectations for skills unless the locale restriction is explicitly documented and justified.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.