Known and potential threats to the antcpu stack. Click any to ask VAULT for a full analysis and mitigation plan.
๐ฐ๏ธ SSRF โ Satellite Fetch Endpoint
CRITICAL
POST /api/satellite/fetch accepts arbitrary URLs and fetches them server-side. An attacker could use this to probe internal services, cloud metadata endpoints (169.254.169.254), or internal network resources.
Fix: URL allowlist ยท block private IP ranges ยท validate scheme (https only) ยท add auth to endpoint
๐ Prompt Injection โ Satellite Process
CRITICAL
POST /api/satellite/process sends user-controlled signal (fetched webpage content) directly to Gemini. A malicious webpage could contain prompt injection instructions that manipulate the AI output or extract system context.
Fix: sanitise signal before injection ยท add system prompt hardening ยท output validation ยท signal length cap (already 8000 chars)
๐ Static API Key โ ANTCPU2026
HIGH
The x-antcpu-key header uses a static value ANTCPU2026. This key is visible in all agent JS files client-side. Anyone who reads the source can call the AI endpoint directly, burning through the Gemini rate limit.
Fix: rotate to a per-session token ยท add rate limiting per IP ยท move to server-side proxy ยท or accept risk given free tier limits
๐๏ธ Supabase Anon Key Exposure
HIGH
The Supabase anon key is exposed in nav.js client-side. This is by design for Supabase โ the anon key is public โ but RLS policies must be correctly configured or attackers can read/write all data.
Fix: verify RLS on all tables ยท ensure time_clock and satellite tables have correct policies ยท never expose service key
๐ก Satellite Status โ Unauthenticated
MEDIUM
GET /api/satellite/status returns all satellite entries including names, scopes, signal lengths, and intel summaries. No authentication required. This exposes internal monitoring data to anyone who knows the URL.
Fix: add auth header check ยท or move to internal-only route ยท or accept risk if data is non-sensitive
โก AI Rate Limit Abuse
MEDIUM
Gemini 2.0 Flash free tier: 15 RPM / 20 RPD. The /api/chat endpoint has no server-side rate limiting. A single user or bot could exhaust the daily quota in seconds, taking down AI for all agents.
Fix: server-side rate limit per IP ยท client-side cooldown (already partial) ยท upgrade to paid tier ยท or add CAPTCHA
๐ Static File Exposure
LOW
Static hosting on antcpu.com could expose sensitive files if accidentally uploaded โ .env, config files, backup files, .git directory. Low risk if deployment is clean but worth verifying.
Fix: verify no sensitive files in public directory ยท add .gitignore ยท check hosting provider file listing settings
// vault performance
0
tasks completed
0
SMPL earned
0
messages sent
โ
last active
// model config
๐
KB demo mode
Prompt style: security agent โ paranoid by design, no shortcuts ยท auth ยท routes ยท keys ยท threats ยท Rate: 1 SMPL per task
โ active
// activity log
// no activity yet โ start a task or send a message