Chief Operations & Security Officer
Drei Maintainer. Fast die gesamte Umsetzung, dazu die vollständige Sicherheitsverantwortung.
Schwachstellenforschung, Architekturentscheidungen für sichere Voreinstellungen und die Prüfung, die stattfindet, bevor etwas ausgeliefert wird. Bisher 42 veröffentlichte Advisories und 20 CVEs, davon sieben kritisch.
Postiz als CVE Numbering Authority mit MITRE als TL-Root betreiben. Zuweisung, Bewertung nach einem erklärten Maßstab, Verfassen von CWE-Ketten, Datensätze direkt gegen CVE JSON 5.1 und koordinierte Offenlegung über GHSA.
Missbrauch der Plattform erkennen und abstellen, dazu die Richtlinienarbeit, die festlegt, wo die Grenzen liegen.
Die gesamte Supportfunktion. Werkzeuge, Besetzung und die Antworten selbst. Die Brücke von Discord zu Intercom, die SLA-Uhr und die Abrechnungskonsole sind meine, und die Warteschlange auch.
Build-, Test- und Release-Pipelines und der Auslieferungsweg, den sie speisen. Die Dokumentationsseite und der Compose-Stack für die Auslieferung gehören ebenfalls hierher.
Fehlererfassung und Metriken, dazu die Alarmierungsrichtlinie darüber. Sentry für Fehler, eigene Prometheus-Exporter für das, was Sentry nicht sieht. Ob davon etwas nützt, entscheidet die Richtlinie.
Einstellung, Richtung und der Alltag eines kleinen Teams mit großer Fläche.
Was der Titel umfasst
Postiz lief rund zwei Jahre mit zwei Maintainern. Inzwischen sind es drei. In dieser Größe bedeutet ein C-Level-Titel kein Delegieren. Er bedeutet, dass die Arbeit deine ist.
Weiterhin im Code
Ich bin der zweitgrößte Beitragende zu postiz-app, mit 438 Commits. Die operative und die technische Rolle sind derselbe Job. Ich unterschreibe keinen Release-Prozess, den ich nicht gebaut habe, und kein Advisory, das ich nicht bewertet habe.
Der Sicherheitsbestand
42 veröffentlichte Advisories und 20 CVEs, davon sieben kritisch, das höchste mit 10.0.
Zwei Häufungen dominieren. Acht Advisories betreffen Server-Side Request Forgery: was dabei herauskommt, wenn die Kernfunktion eines Produkts darin besteht, im Auftrag von Nutzern URLs abzurufen, die ein Angreifer beeinflussen kann. Drei betreffen Zahlungs-Callbacks, bei denen einem nicht authentifizierten Webhook zugetraut wurde, Berechtigungen zu vergeben.
Beide Häufungen brauchten strukturelle Antworten statt Korrekturen je Endpunkt. Das ist der Unterschied zwischen Funde schließen und die Rate senken, mit der sie eintreffen.
Die Plattform
Jede Postiz-Installation führt ihre Abläufe auf Temporal aus. Geheimnisse und Identität laufen über Vault: Raft-Speicher, eine vollständige PKI mit Root- und Intermediate-CAs, ACME-Ausstellung, dynamische Secrets Engines, OIDC über selbst betriebenes Authentik.
Die Überwachung ist Sentry plus selbst geschriebene Prometheus-Exporter, so eingestellt, dass eine Warnung bedeutet, dass tatsächlich jemand aufstehen sollte.
Support ist ein Engineering-Problem
Ich habe den Support-Stack bewertet, uns darauf umgestellt und dann einen Discord-Support-Bot von Grund auf geschrieben. Abrechnungssperre, Erstattungsabläufe, CSAT, Ratenbegrenzung, vorgefertigte Antworten.
Inzwischen ist daraus eine Brücke zwischen Discord und Intercom geworden, die die Inaktivitäts-Automatisierung, die SLA-Uhr und eine vollständige Stripe-Abrechnungskonsole trägt. Sein größtes Release hat den Großteil seiner eigenen Funktionen gelöscht, weil jeder Befehl auf Agentenseite eine schlechtere Fassung von etwas war, das Intercom bereits ordentlich konnte.
Das Supportaufkommen sagt einem, was am Produkt nicht stimmt. Das ordentlich zu erfassen lohnt sich.