GHSA-xfqj-r5qw-8g4j
## Summary Several API endpoints in `authenticated` mode have no authentication at all. They respond to completely unauthenticated requests with sensitive data or allow state-changing operations. No account, no session, no API key needed. Verified against the latest version. Discord: sagi03581 ## Steps to Reproduce ### 1. Unauthenticated issue data access `GET /api/heartbeat-runs/:runId/issues` returns issue data for a heartbeat run with zero authentication. Every other endpoint in `server/src/routes/activity.ts` calls `assertCompanyAccess`, but this one was missed. ```bash curl -s http://<target>:3100/api/heartbeat-runs/00000000-0000-0000-0000-000000000001/issues # -> [] (HTTP 200, not 401 or 403) ``` If an attacker obtains a valid run UUID (from logs, error messages, shared URLs, or by probing), they can read issue data without any credentials. ### 2. Unauthenticated CLI auth challenge creation `POST /api/cli-auth/challenges` creates a CLI authentication challenge with no actor check at all. The handler at `server/src/routes/access.ts:1638-1659` skips any auth verification. ```bash curl -s -X POST -H "Content-Type: application/json" \ -d '{"command":"test"}' \ http://<target>:3100/api/cli-auth/challenges # returns challenge ID, token, and a pre-generated board API key ``` The response includes a `boardApiToken` that becomes active once the challenge is approved. Combined with open registration (separate report), this enables persistent API key generation. ### 3. Unauthenticated agent instruction / system prompt leakage These endpoints in `server/src/routes/access.ts` require no authentication: ```bash curl -s http://<target>:3100/api/skills/index # returns all available skill endpoints curl -s http://<target>:3100/api/skills/paperclip # returns the FULL agent heartbeat procedure including: # - every API endpoint and its parameters # - authentication mechanism (env var names, header formats) # - the complete agent coordination protocol #
Properties
- ghsa_id
- GHSA-xfqj-r5qw-8g4j
- summary
- Paperclip: Unauthenticated Access to Multiple API Endpoints in Authenticated Mode
- severity
- high
- cvss_score
- 8.3
- cve_id
- GHSA-xfqj-r5qw-8g4j
- cvss_vector
- CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:L
- is_ghsa_only
- true
- ghsa_published
- 2026-04-16T22:47:05Z
- source_url
- https://github.com/advisories/GHSA-xfqj-r5qw-8g4j
- ghsa_updated
- 2026-04-16T22:47:05Z
Related Entities (4)
REPORTED_BY (1)
VULNERABLE_TO (1)
AFFECTS (1)
HAS_WEAKNESS (1)
Explore deeper with Ninja Signal's threat intelligence graph