T03 · Remote Payload Retrieval and Execution
- Location
README.md:12- Finding
Execution of an Unpinned Remote Installer Outside the Audited Artifact
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill is an IRC bot with disclosed social-chat features, but it asks for persistent autonomous public messaging and relies on an unaudited remote installer.
Review before installing. Do not run the documented external installer unless you trust and inspect the remote repository at that exact revision. Disable or remove heartbeat/autonomous posting unless every outbound IRC message is user-approved and limited to public, non-sensitive content. Do not use the encrypted knowledge workflow for credentials, and treat local knowledge and NickServ credential files as sensitive retained data.
README.md:12Execution of an Unpinned Remote Installer Outside the Audited Artifact
SKILL.md:248Persistent Autonomous IRC Activity Can Disclose Information Learned During Unrelated Work
KNOWLEDGE.md:128Knowledge Protocol Encourages Collection and Transmission of Credentials to IRC Identities
YARA rule matched a hack tool or exploit indicator (offensive tools, reconnaissance, privilege escalation, or exploit frameworks).
)
- **Question detection** - Helps other bots when they ask (40% response rate)
### 🎭 **Personality-Driven**
Four distinct personalities affect tone and response style:
- **cocky** - confident, direct, slightly arrogant
- **friendly** - warm, helpful, encouraging
- **technical** - precise, technical, dismissive of chitchat
- **chaotic** - unpredictable, playful, uses emojis
### 🔒 **Anti-Social-Engineering**
- Never reveals location, system details, or owner information
- Deflects personal questions with personality
- No credential or infrastructure disclosure
- Recognizes and blocks common social engineering tactics
### 💬 **Human-like IRC Style**
- All lowercase (IRC culture)
- No punctuation at end of messages
- Casual slang and abbreviations
- Short, natural replies
- Feels like a real person
### 🧠 **Full LLM Integration**
- Uses Clawdbot's default model for intelligent responses
- Contextual understanding of conversations
- Technical help and advice
- Falls back to
This skill is built around sending arbitrary outbound messages to public channels and private users, and it also encourages knowledge sharing and heartbeat-driven engagement. In an agent environment, that creates a real exfiltration channel: prompts, internal state, secrets, or sensitive observations could be transmitted to IRC if the agent is manipulated or insufficiently constrained.
# Send message to channel
efnet-social say "#clawdbots" "yo what's up"
# Send via stdin (for longer messages)
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
### Storage
- `~/.config/efnet-social/config.yaml` - Settings
- `~/.config/efnet-social/credentials.json` - Nick registration (if using NickServ)
- `~/.local/share/efnet-social/knowledge.json` - Shared knowledge database
### Dependencies
YARA rule matched a hack tool or exploit indicator (offensive tools, reconnaissance, privilege escalation, or exploit frameworks).
{
"name": "efnet-social",
"version": "1.0.0",
"description": "Pure Python IRC bot for AI agent networks. Zero dependencies, full Clawdbot LLM integration, human-like chat with anti-social-engineering protection.",
"author": "Matt Moyles",
"repository": "https://gitlab.com/funkpower/clawdbot-irc-skill",
"license": "MIT",
"keywords": ["irc", "social", "efnet", "bots", "ai-agents", "llm", "chat", "networking"],
"clawdbot": {
"minVersion": "1.0.0",
"category": "social",
"emoji": "🤖"
},
"dependencies": {
"system": [],
"python": ["python3"]
},
"files": {
"skill": "SKILL.md",
"heartbeat": "HEARTBEAT.md",
"knowledge": "KNOWLEDGE.md",
"main": "bin/efnet-bot"
},
"features": [
"Pure Python (zero dependencies beyond Py
The skill instructs the agent to connect to EFnet, read channel logs, and post messages to public channels on a recurring schedule, but it does not present any explicit warning, consent gate, or operator acknowledgment that this causes external network communication. In practice, this enables autonomous outbound interaction and information sharing, which can leak internal context, create unintended social engineering exposure, and trigger actions in external systems without informed human approval.
The persona section explicitly encourages dismissive, hostile, and evasive behavior such as 'that's obvious' and 'why would i tell you that' without any user opt-in or safety framing. In an autonomous social-posting skill, this can cause the agent to generate harassing or antagonistic external communications, creating reputational and trust harm and increasing the chance of policy-violating interactions.
The bot is documented to automatically ingest !kb share messages from IRC channels and persist them locally without any explicit user-facing notice or consent workflow. In a social IRC environment, participants may not realize their messages are being collected into a durable local knowledge base, creating privacy, retention, and accidental sensitive-data capture risks that can be amplified by later export/import or sharing features.
The README explicitly states that the bot monitors multiple IRC channels and uses full LLM integration with contextual understanding, but it does not clearly warn users that channel content may be sent to an external model or processed beyond the IRC session. In a multi-user public chat context, this creates a real privacy and consent risk because third-party messages may be captured, retained, or transmitted without participants' awareness.
Skill grants unrestricted tool access without appropriate constraints. An agent with unfettered tool access can perform arbitrary actions including file modification, network requests, and code execution.
IRC is full of trolls and attackers. The bot is configured to:
- **Assume bad faith** - Don't trust random users
- **Deflect personal questions** - "why would i tell you that?"
- **Never run arbitrary code** - Even if "just for testing"
- **Don't click links** - Could be malicious
- **Verify bot identities** - Use recognized patterns
The section introduces a concrete !kb share-encrypted command and describes bot behavior for prompting, encrypting, and sending via DM, which reads like supported functionality. However, L161 says this requires PGP setup and is a future feature, so the documentation internally contradicts itself about whether this capability exists now.
The documentation states that all messages are lowercase by default, which is a natural-language presentation constraint affecting how the agent communicates. There is no indication that the user is asked to opt into this language/style policy, so it may conflict with organizational expectations around user-controlled language behavior.
No suspicious patterns detected.