Security-Story vor Public Launch: SECURITY.md + Threat-Model-Doku #207

Open
opened 2026-07-16 21:59:51 +00:00 by chinux · 0 comments
Owner

Ziel

Vor der Veröffentlichung die Sicherheits-Dokumentation aufbauen, damit die Angriffsflächen-Skepsis (root-Agents, Command-Execution, Tunneling) beim Launch als Verkaufsargument statt als Kritikpunkt ankommt.

Kontext / Positionierung

  • theProx wird nie zentral gehostet – jeder Admin betreibt seine eigene Instanz. Betriebsverantwortung liegt beim Betreiber → das gehört so ins README.
  • ABER: "Zero Exposure" gilt für Hosts und VMs, nicht für den Server: im MSP-Szenario muss mindestens /ws/agent aus dem Internet erreichbar sein, sonst verbinden sich keine Agents von Kundenstandorten. Formulierung: ein gehärteter Endpunkt statt hunderte offene Ports.

Aufgaben

1. SECURITY.md (Root des Repos)

  • Meldeweg für Security-Researcher (E-Mail, ggf. PGP)
  • Supported Versions / Patch-Policy
  • Disclosure-Erwartungen (Zeitrahmen)

2. Threat-Model-Doku (docs/security.md o. ä.)

  • Was ist exponiert: Server-Endpunkt (API + /ws/agent), sonst nichts (Hosts/VMs nur ausgehend)
  • Agent-Enrollment dokumentieren: Token-Flow (POST /enroll/{token}, Pubkey-Registrierung, Token wird verbrannt), agent_identity
  • Revocation-Mechanismus beschreiben (auth/revocation.py): was passiert bei kompromittiertem Agent/Node
  • Szenario "Server kompromittiert": Blast Radius, Gegenmaßnahmen (Revocation, Key-Rotation), Empfehlung Betreiber-Härtung (Reverse Proxy, Fail2ban, MFA/OIDC)
  • RBAC-Scopes + Audit-Logging als Governance-Layer erklären (Command-Execution, Tunnel-Sessions)

3. Supply Chain

  • Releases signieren (Agents laufen als root → Update-Quelle ist kritisch)
  • Checksums für Installer/Agent-Binaries veröffentlichen
  • Install-Skripte: Download nur über TLS + Verifikation

4. README-Anpassung

  • Positionierung präzisieren: Zero Exposure für Hosts/VMs, Server als bewusst einziger exponierter Endpunkt
  • Self-hosted-only als Sicherheitsargument aufnehmen (kein zentraler Honeypot)

Definition of Done

Ein skeptischer r/Proxmox- oder HN-Leser findet innerhalb von 2 Minuten Antworten auf: Wie authentifizieren sich Agents? Was ist exponiert? Was passiert bei Kompromittierung? Wie melde ich eine Lücke?

## Ziel Vor der Veröffentlichung die Sicherheits-Dokumentation aufbauen, damit die Angriffsflächen-Skepsis (root-Agents, Command-Execution, Tunneling) beim Launch als Verkaufsargument statt als Kritikpunkt ankommt. ## Kontext / Positionierung - theProx wird **nie zentral gehostet** – jeder Admin betreibt seine eigene Instanz. Betriebsverantwortung liegt beim Betreiber → das gehört so ins README. - ABER: "Zero Exposure" gilt für Hosts und VMs, **nicht** für den Server: im MSP-Szenario muss mindestens `/ws/agent` aus dem Internet erreichbar sein, sonst verbinden sich keine Agents von Kundenstandorten. Formulierung: *ein* gehärteter Endpunkt statt hunderte offene Ports. ## Aufgaben ### 1. SECURITY.md (Root des Repos) - [ ] Meldeweg für Security-Researcher (E-Mail, ggf. PGP) - [ ] Supported Versions / Patch-Policy - [ ] Disclosure-Erwartungen (Zeitrahmen) ### 2. Threat-Model-Doku (`docs/security.md` o. ä.) - [ ] Was ist exponiert: Server-Endpunkt (API + `/ws/agent`), sonst nichts (Hosts/VMs nur ausgehend) - [ ] Agent-Enrollment dokumentieren: Token-Flow (`POST /enroll/{token}`, Pubkey-Registrierung, Token wird verbrannt), `agent_identity` - [ ] Revocation-Mechanismus beschreiben (`auth/revocation.py`): was passiert bei kompromittiertem Agent/Node - [ ] Szenario "Server kompromittiert": Blast Radius, Gegenmaßnahmen (Revocation, Key-Rotation), Empfehlung Betreiber-Härtung (Reverse Proxy, Fail2ban, MFA/OIDC) - [ ] RBAC-Scopes + Audit-Logging als Governance-Layer erklären (Command-Execution, Tunnel-Sessions) ### 3. Supply Chain - [ ] Releases signieren (Agents laufen als root → Update-Quelle ist kritisch) - [ ] Checksums für Installer/Agent-Binaries veröffentlichen - [ ] Install-Skripte: Download nur über TLS + Verifikation ### 4. README-Anpassung - [ ] Positionierung präzisieren: Zero Exposure für Hosts/VMs, Server als bewusst einziger exponierter Endpunkt - [ ] Self-hosted-only als Sicherheitsargument aufnehmen (kein zentraler Honeypot) ## Definition of Done Ein skeptischer r/Proxmox- oder HN-Leser findet innerhalb von 2 Minuten Antworten auf: Wie authentifizieren sich Agents? Was ist exponiert? Was passiert bei Kompromittierung? Wie melde ich eine Lücke?
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
chinux/theProx#207
No description provided.