Scan Report
25 /100
community-os
Simple Telegram Bot management with LLM and knowledge base
A legitimate Telegram bot management skill with minor security flaws (authentication bypass, unpinned dependencies) but no malicious behavior detected.
Safe to install
Fix the require_auth() bypass in admin/app.py, pin dependency versions, and add SSRF protection for broadcast API endpoints before production use.
Findings 5 items
| Severity | Finding | Location |
|---|---|---|
| High | Authentication Bypass | admin/app.py:278 |
| Medium | Missing LLM Provider Modules | bot_engine/bot_instance.py:35 |
| Medium | SSRF Risk in Broadcast Feature | bot_engine/bot_instance.py:223 |
| Low | Unpinned Dependencies | requirements.txt:1 |
| Low | Missing Harness Integration | bot_engine/bot_instance.py:23 |
| Resource | Declared | Inferred | Status | Evidence |
|---|---|---|---|---|
| Filesystem | WRITE | WRITE | ✓ Aligned | SKILL.md describes knowledge base upload and config management |
| Network | READ | READ | ✓ Aligned | Telegram API calls in admin/app.py, broadcast API fetch in bot_instance.py |
| Shell | NONE | NONE | — | No subprocess, os.system, exec, or eval found |
| Environment | READ | READ | ✓ Aligned | .env loading in admin/app.py:22-30 for API keys |
| Skill Invoke | NONE | NONE | — | No skill invocation observed |
| Clipboard | NONE | NONE | — | No clipboard access |
| Browser | NONE | NONE | — | No browser automation |
| Database | READ | READ | ✓ Aligned | ChromaDB for vector search, JSON files for config storage |
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:1169 Medium External URL 外部 URL
https://api.example.com/v1 admin/lite.html:161 File Tree
11 files · 104.8 KB · 2577 lines Python 5f · 1818L
HTML 1f · 492L
JSON 2f · 139L
Markdown 2f · 121L
Text 1f · 7L
├─
▾
admin
│ ├─
app.py
Python
│ └─
lite.html
HTML
├─
▾
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 8 items
| Package | Version | Source | Known Vulns | Notes |
|---|---|---|---|---|
fastapi | 0.109.0 | pip | No | Pinned |
uvicorn | 0.27.0 | pip | No | Pinned with extras |
python-multipart | 0.0.6 | pip | No | Pinned |
requests | 2.31.0 | pip | No | Pinned |
pyyaml | 6.0.1 | pip | No | Pinned |
chromadb | 0.4.22 | pip | No | Pinned |
jinja2 | 3.1.3 | pip | No | Pinned |
httpx | * | imported | No | Used in app.py but not in requirements.txt - imported directly |
Security Positives
✓ No shell execution or command injection vectors found
✓ No base64 decode + exec patterns detected
✓ No credential exfiltration to external servers
✓ API keys stored in environment variables, not hardcoded
✓ File upload restricted to allowlisted extensions (.md, .txt, .pdf, .docx, .pptx, .xlsx, .csv, .pages)
✓ No access to sensitive paths like ~/.ssh or ~/.aws
✓ Session tokens use cryptographically secure secrets.token_urlsafe()
✓ No hidden functionality - behavior matches SKILL.md description