Scan Report
20 /100
CommunityOS Telegram Bot Skill
Simple Telegram Bot management with LLM and knowledge base. Local-only, no external dependencies.
A legitimate Telegram bot management tool with minor security concerns: hardcoded auth bypass, undeclared subprocess spawning, and undocumented filesystem write operations, but no evidence of malicious behavior or credential exfiltration.
Safe to install
Review and fix the require_auth() function to enforce actual authentication. Document all filesystem and shell operations in SKILL.md. Consider pinning dependency versions.
Findings 5 items
| Severity | Finding | Location |
|---|---|---|
| Medium | Hardcoded authentication bypass | admin/app.py:232 |
| Low | Undeclared subprocess execution | admin/app.py:1128 |
| Low | Undocumented filesystem WRITE operations | admin/app.py:864 |
| Low | Unpinned dependencies | requirements.txt:1 |
| Info | Example domain URLs in default config | admin/app.py:142 |
| Resource | Declared | Inferred | Status | Evidence |
|---|---|---|---|---|
| Filesystem | READ | WRITE | ✗ Violation | admin/app.py:132 - save_json() writes JSON files; admin/app.py:864 - file upload… |
| Shell | NONE | WRITE | ✗ Violation | admin/app.py:1128-1133 - subprocess.Popen spawns telegram_runner.py |
| Network | READ | READ | ✓ Aligned | httpx/requests calls to api.telegram.org |
| Environment | READ | READ | ✓ Aligned | os.environ.get() for API keys |
| Skill Invoke | NONE | NONE | — | N/A |
| Clipboard | NONE | NONE | — | N/A |
| Browser | NONE | NONE | — | N/A |
| Database | NONE | WRITE | ✗ Violation | ChromaDB vector store writes to chroma_db/ directory |
5 findings
Medium External URL 外部 URL
https://api.example.com/news admin/app.py:142 Medium External URL 外部 URL
https://feeds.example.com/web3 admin/app.py:164 Medium External URL 外部 URL
https://api.telegram.org/bot admin/app.py:463 Medium External URL 外部 URL
https://your-domain/api/telegram/webhook/ admin/app.py:1208 Medium External URL 外部 URL
https://api.example.com/v1 admin/lite.html:167 File Tree
12 files · 106.3 KB · 2632 lines Python 6f · 1822L
HTML 1f · 529L
JSON 2f · 144L
Markdown 2f · 130L
Text 1f · 7L
├─
▾
admin
│ ├─
app.py
Python
│ ├─
lite.html
HTML
│ └─
telegram_runner.py
Python
├─
▾
bot_engine
│ ├─
__init__.py
Python
│ ├─
bot_instance.py
Python
│ ├─
config_parser.py
Python
│ └─
manager.py
Python
├─
▾
config
│ └─
openclaw.json
JSON
├─
_meta.json
JSON
├─
README.md
Markdown
├─
requirements.txt
Text
└─
SKILL.md
Markdown
Dependencies 5 items
| Package | Version | Source | Known Vulns | Notes |
|---|---|---|---|---|
fastapi | 0.109.0 | pip | No | Version pinned |
uvicorn | 0.27.0 | pip | No | Version pinned |
requests | 2.31.0 | pip | No | Version pinned |
chromadb | 0.4.22 | pip | No | Version pinned |
pyyaml | 6.0.1 | pip | No | Version pinned |
Security Positives
✓ No credential exfiltration - API keys are only used locally for LLM/Telegram API calls
✓ No base64-encoded commands or obfuscated shell execution
✓ No access to sensitive paths like ~/.ssh or ~/.aws
✓ No reverse shell, C2 communications, or data theft behavior
✓ Local-only operation documented (127.0.0.1 binding)
✓ External URLs use example.com domains, not real exfiltration endpoints
✓ File operations are standard web application patterns (upload/download/delete)