Dein VDP wird erstellt

Eine Programmrichtlinie ist für jedes VDP unerlässlich und muss sorgfältig entwickelt werden. Die Programmrichtlinien sind das Erste, was Sicherheitsforscher sehen, wenn sie an einem VDP teilnehmen. Sie legt den Ton für das Programm fest, definiert Erwartungen und definiert Ihr Engagement gegenüber Forschern, die sich für die Teilnahme entscheiden.

Programmrichtlinien erstellen und hosten

Verwende die folgenden Richtlinien, um die Programmrichtlinien für dein VDP zu entwerfen. Die Programmrichtlinien umfassen in der Regel nur ein bis drei Seiten und umfassen in der Regel folgende Themen:

  • Ein Versprechen
  • Testrichtlinien
  • Umfang des Programms

Die Programmrichtlinien müssen allen potenziellen Forschern zur Verfügung stehen. Wenn Sie das VDP privat nur einigen wenigen Forschern zur Verfügung stellen möchten, benötigt die Programmrichtlinie irgendeine Zugriffssteuerung, um es den eingeladenen Personen zur Verfügung zu stellen, aber auf alle anderen beschränkt. Forscher benötigen auch eine Möglichkeit, Berichte einzureichen, z. B. ein Webformular oder einen E-Mail-Alias, der mit einem Ticketsystem verbunden ist, um die Berichte zu verfolgen. Das solltest du beim Einrichten der Onlineressourcen des VDP berücksichtigen.

Die Plattformen zur Offenlegung von Sicherheitslücken und Bug-Bounty-Plattformen bieten in der Regel folgende Möglichkeiten:

  • Eine Möglichkeit zum Erstellen, Bearbeiten und Veröffentlichen einer Richtlinie
  • Zugriffssteuerung zum Erstellen eines privaten Programms
  • Automatisch einladende Hacker
  • Posteingangsfunktionen für die Verarbeitung eingehender Berichte

Plattformen von Drittanbietern bieten darüber hinaus eine Vielzahl von Beratungsdiensten an, die das Erstellen und Starten eines VDP erleichtern. Normalerweise sind die Plattformen und Beratungsdienste von Drittanbietern kostenpflichtig. Berücksichtigen Sie die Kosten und Vorteile der Verwendung eines Drittanbieters im Vergleich zur internen Entwicklung und Verwaltung Ihres Programms, um den besten Weg für Ihr Unternehmen zu ermitteln.

Weitere Anregungen für Ihre Programmrichtlinien finden Sie im A Framework for a Vulnerability Disclosure Program for Online Systems des US-amerikanischen Justizministeriums.

Interessenvertreter der Programmrichtlinien

Überlegen Sie beim Entwurf Ihrer Programmrichtlinien, wie Sie mit Ihren Interessenvertretern zusammenarbeiten können. Verschiedene Teams können Feedback zu Überlegungen zur Einbindung Ihrer Richtlinie geben.

Stakeholder Wichtige Hinweise
Legal
  • Entwerfen Sie zusammen mit Ihrer Rechtsabteilung Ihre Programmrichtlinien und die Bedingungen, unter denen Hacker teilnehmen werden.
  • Forscher werden nicht bezahlt, sodass es keinen guten Grund gibt, sich mit umfangreichen Onboarding-Anforderungen oder komplizierten Begriffen zu befassen.
IT
  • Arbeiten Sie mit Ihrem IT-Team zusammen, um Testanforderungen und -umfang zu entwickeln und beispielsweise keine Denial of Service-Bedingungen zu erstellen.
Entwicklung
  • Die Entwicklungsabteilung kann unter Umständen Angaben zu Testanforderungen und zum Umfang machen, einschließlich der Arten von Sicherheitslücken, die am meisten oder am wenigsten interessant sind.
PR
  • Arbeiten Sie mit Ihrem PR-Team zusammen, um die Richtlinien für die Offenlegung zu überprüfen.
Sicherheit
  • Das Sicherheitsteam leitet in der Regel die Richtlinienerstellung.
  • Das Sicherheitsteam wird wahrscheinlich Feedback von Hackern erhalten und im Laufe der Zeit zusammen mit anderen Interessenvertretern die Richtlinie überarbeiten.

Versprechen

Das Forscherversprechen erklärt die Verpflichtung der Organisation gegenüber teilnehmenden Forschern, die nach Treu und Glauben handeln, indem sie die in der Richtlinie beschriebenen Testrichtlinien befolgt. Dies ist beispielsweise eine Zusage, auf alle eingehenden Sicherheitsberichte innerhalb eines bestimmten Zeitrahmens zu reagieren und zu kommunizieren, welche Berichte zu Sicherheitslücken akzeptiert und behoben werden.

Beispiel:

<Name Ihrer Organisation> arbeitet mit Sicherheitsforschern zusammen, um Sicherheitslücken in unseren Systemen und Diensten zu erkennen und zu beheben. Solange Sie in Treu und Glauben handeln und die Richtlinien in dieser Richtlinie einhalten, bemühen wir uns, Folgendes zu tun:
  • Erste Antwort auf Ihren Bericht zu Sicherheitslücken innerhalb von drei Werktagen
  • Bestimme, ob wir deinen Bericht zu Sicherheitslücken innerhalb von zehn Arbeitstagen akzeptieren (beheben) oder ablehnen (als falsch positives oder akzeptables Risiko kennzeichnen)
  • Sie werden über die Fortschritte bei der Behebung von Berichten informiert, die wir von Ihnen akzeptieren.

Die Verwendung des Safe-Harbor-Standards in Ihrer Programmrichtlinie trägt dazu bei, dass Forscher keine rechtlichen Schritte gegen sie zum Zweck des Testens Ihrer Systeme einleiten, solange diese in Treu und Glauben handeln und alle in der Richtlinie erläuterten Richtlinien einhalten.

Testrichtlinien

In den Testrichtlinien werden die Sicherheitstests beschrieben, die in den Geltungsbereich des VDP fallen, sowie Tests, die nicht in den Verantwortungsbereich fallen und von Forschern vermieden werden sollten. Wenn Sie möchten, dass sich die Nutzer auf bestimmte Sicherheitslücken konzentrieren, können Sie sie in diesem Abschnitt hervorheben.

Beispiel:
Halte dich beim Durchführen von Sicherheitstests bitte an die folgenden Richtlinien:

  • Teste nur mit deinen eigenen Konten und Daten (z.B. Testkonten). Wenn du eine Sicherheitslücke erkennst, die einen Zugriff auf die Daten anderer Nutzer zur Folge haben kann, melde dich bitte bei uns, bevor du weitere Tests durchführst.
  • Wenn Sie während der Tests versehentlich auf die Daten anderer Nutzer zugreifen, geben Sie uns Bescheid. Speichern Sie solche Nutzerdaten nicht.
  • Führen Sie keine Tests durch, die zu Denial-of-Service-Bedingungen oder einer Beeinträchtigung unserer Produktionsdienste führen.
  • Social Engineering ist nicht im Rahmen dieses Programms zulässig. Versuchen Sie nicht, Social-Engineering für unsere Organisation oder unsere Nutzer durchzuführen.


Wir sind besonders an den folgenden Arten von Sicherheitslücken und Auswirkungen interessiert:

  • Remote-Codeausführung
  • XSS, die Zugriff auf sensible Daten (z.B. Sitzungsinformationen) ermöglicht
  • SQL-Injection, die Zugriff auf sensible Daten oder Funktionen ermöglicht
  • Fehler in der Geschäftslogik, die Zugriff auf sensible Daten oder Funktionen ermöglichen


Wir interessieren uns weniger für die folgenden Arten von Sicherheitslücken, die mit größerer Wahrscheinlichkeit
als falsch positive oder akzeptable Risiken abgelehnt werden:

  • Fehlender X-Frame-Options-Header auf Seiten ohne Statusänderungsfunktionen
  • Unbestätigte Ergebnisse des automatischen Scanners
  • Probleme, die wahrscheinlich nicht ausgenutzt werden können und/oder keine realistischen Auswirkungen auf die Sicherheit haben

Umfang

Der Umfang definiert die Assets, mit denen Forscher testen können, und welche Assets nicht im VDP enthalten sind. Der Umfang muss sorgfältig geprüft und so umfassend wie möglich sein, ohne Ihr Team zu überlasten. Je mehr Sie den Umfang festlegen, desto wahrscheinlicher ist es, dass sich Sicherheitsforscher mit Ihnen beschäftigen. Der Umfang sollte jedoch nicht so groß sein, dass Ihr Team nicht mit den eingehenden Berichten mithalten kann. Beginnen Sie mit einigen wenigen Assets. Erweitern Sie den Umfang, wenn Sie eine bessere Vorstellung davon haben, welches Berichtvolumen Sie erhalten werden. Bevor du dein VDP öffentlich zugänglich machst, solltest du alles im Blick behalten.

Wenn Sie den Umfang in Ihrer Programmrichtlinie definieren, können Sicherheitsforscher besser darüber informiert werden, was Ihnen wichtig ist und worauf sie sich konzentrieren sollten. Sie können auch Tipps dazu angeben, wie Sie Ihre Assets sicher testen können. Beispiel:

Asset mail.example.com
Beschreibung Primäre Domain, über die Nutzer auf ihre E-Mails zugreifen können.
Interessante Sicherheitslücken und Auswirkungen
  • Sicherheitslücken, die zu nicht autorisiertem Zugriff auf die E-Mails anderer Nutzer führen
  • Möglichkeit, die E-Mail-Adresse oder das gesamte Konto eines anderen Nutzers unwiderruflich zu löschen
Probleme, die wahrscheinlich abgelehnt werden
  • SPF
  • Phishing oder Probleme, die Phishing ermöglichen
  • Potenziell schädliche Anhänge senden
Richtlinien zum Testen Führen Sie den Test nur für Konten durch, die Ihnen gehören oder für die Sie eine ausdrückliche Einwilligung haben. Fügen Sie beim Erstellen von Testkonten an einer beliebigen Stelle „vdptest“ ein. Sie können Testkonten unter mail.example.com/neu erstellen.

Das ist eine ziemlich detaillierte Aufschlüsselung. Alternativ können Sie auch eine einfache Liste der Umfang- und nicht bereichsbezogenen Assets hinzufügen:

Zuständig

  • mail.beispiel.de
  • beispiel.de

Nicht zuständig

  • blog.beispiel.de

Beschaffung von VDP

Du benötigst bestimmte Ressourcen, um ein VDP starten zu können. Sie benötigen Ressourcen für:

  • Eingehende Berichte zu Sicherheitslücken prüfen
  • Kommunikation mit Hackern
  • Asset-Inhaber finden und Fehler melden
  • Fehler beheben
  • Verwaltung von Sicherheitslücken / Nachverfolgung von Maßnahmen

Wichtige Stakeholder neu bewerten

Falls noch nicht geschehen, solltest du dir noch einmal die Gespräche mit den wichtigsten Stakeholdern ansehen, mit denen du dein VDP besprochen hast. Außerdem solltest du alle nötigen Ressourcen für die Einführung in die Warteschlange stellen. Beispielsweise kann es sinnvoll sein, mit der Entwicklungsleitung zusammenzuarbeiten, damit die Teams in den ersten Wochen nach dem Start auf einen potenziellen Zustrom von Sicherheitslücken reagieren können. Achten Sie in Ihrem Sicherheitsteam darauf, dass die Warnbenachrichtigungen in Ihren Erkennungs- und Antwortsystemen das VDP-Einführungsdatum kennen, und weisen Sie mehr Zeit und Ressourcen für Testbeginn zu. Du musst auch ein Team zusammenstellen, das dich beim täglichen Betrieb deines VDP unterstützt.

Dein Team erweitern

Ein VDP erfordert eine gewisse operative, betriebsunterbrechungsorientierte Arbeit. Wenn Sie versuchen, jeden eingehenden Sicherheitslückenbericht zu überprüfen, technisch zu prüfen und darauf zu reagieren sowie jeden Fehler zu melden, den Status zu verfolgen und die Forscher selbst über Aktualisierungen zu informieren, könnte es zum Ausbrennen kommen. Auch wenn Sie kein großes Sicherheitsteam haben, können Sie sicherheitsbewusste Freiwillige finden, die Ihnen bei der Operationalisierung und Durchführung Ihres VDP helfen. Du benötigst weiterhin die Definition eines „Inhabers“ oder „Leiters“ deines VDP, das letztlich für den Erfolg deines VDP verantwortlich ist, aber du benötigst auch ein Team, das diesen Leader unterstützt.

Zeitplan für Aufgaben erstellen

Sobald du genügend Mitarbeiter hast und dir bei deinem VDP helfen kannst, solltest du einen dienstspezifischen Zeitplan aufstellen. Sie können dies beliebig erstellen, aber eine wöchentliche Rotation ist ziemlich üblich. Wenn du diese Woche im Einsatz bist, bist du dafür verantwortlich,

  • Triage – Eingehende Sicherheitslückenberichte prüfen
    • Validieren Sie den Bericht technisch und treffen Sie eine „Annehmen“- oder „Ablehnen“-Entscheidung.
    • Informieren Sie den Hacker, der das Problem gemeldet hat, über Ihre Entscheidung.
    • Wenn Sie das Problem nicht reproduzieren können, bitten Sie den Hacker um weitere Informationen.
    • Wenn die Sicherheitslücke gültig ist, reiche einen Groomed Bug mit dem richtigen Inhaber ein
  • Sicherheitslückenverwaltung – Vorhandene Sicherheitslücken nach vorn bringen
    • Prüfen Sie die Programmfehler, die in den letzten Dienstwochen gemeldet wurden, um sicherzustellen, dass Sie gemäß Ihren Schwerestandards und Behebungsfristen Maßnahmen ergreifen.
    • Mithilfe der Tipps von Inhabern finden kannst du Inhaber davon überzeugen, diese Fehler zu bearbeiten
  • Kommunikation: Stellen Sie Sicherheitsexperten aktuelle Berichte zur Verfügung.
    • Forscher können proaktiv nach Updates zu vorhandenen Berichten fragen. Suchen Sie danach und reagieren Sie nach Bedarf.
    • Wenn eine Sicherheitslücke behoben ist, sollten Sie das dem Forscher mitteilen, dass seine harte Arbeit zu einer positiven Veränderung in Ihrem Unternehmen geführt hat. Sie können sogar Vorlagenvorlagen hinzufügen, in denen der Forscher Sie informieren soll, ob Sie etwas in Ihrer Korrektur übersehen haben oder ob Ihre Korrektur irgendwie umgangen werden könnte.

Je nach Anzahl der Berichte, der Komplexität dieser Berichte und den Fähigkeiten und Kenntnissen der einzelnen Mitarbeiter kann es einige Stunden dauern, bis sie alle Aufgaben erfüllen. Tipps für eine erfolgreiche Rotation im Dienst sind:

  • Sorgen Sie dafür, dass Ihr Team bereit ist, in den schweren Wochen einzugreifen.
  • Richten Sie einen guten Übergabeprozess ein. Wenn es Probleme gibt, die sofort vom nächsten Ansprechpartner erledigt werden müssen, notieren Sie sich einige Übergabenotizen oder führen Sie am Ende der Woche eine Live-Unterhaltung.
  • Mit einer automatisierten Terminplanung wissen alle, wann sie im Einsatz sind. Dazu können Sie einfach wiederkehrende Kalendereinträge für jeden Nutzer erstellen.
  • Besonders zu Beginn des VDP solltest du dich an die zuständige Person wenden und sie fragen, ob sie an der Woche ist und ob sie Hilfe benötigt. Wenn in der Rotation mehr Nachwuchskräfte verfügbar sind, sollten Sie mit ihnen zusammen arbeiten, damit sie sich wohlfühlen und während der Anlaufzeit Fragen stellen können.
  • Ein flexibler Prozess zum Wechseln von Wochen Es ist unvermeidlich, dass jemand in seiner Woche Zeit hat oder sich mal in den Urlaub zieht. In diesem Fall sollten Sie das Team ermuntern, Wochen zu tauschen, damit alle Termine berücksichtigt werden.
  • Erstellen Sie einen Spickzettel für die Aufgabenstellung, in dem beschrieben ist, welche Pflichten abgedeckt werden müssen, einschließlich einer Dokumentation zur Vorgehensweise.

Entscheidung zwischen internen und Drittanbieterlösungen

Der Großteil der bisherigen Anleitung basiert darauf, wie du dein VDP intern entwickelst und verwaltest. Es gibt eine Reihe von Beratungsdiensten und -plattformen, die dir beim Erstellen und Ausführen eines VDP helfen können. Für diese Drittanbieter fallen in der Regel Kosten an. Sie können dir aber dabei helfen, dein VDP zu erstellen, zu starten und auszuführen. Einige bieten sogar Möglichkeiten zum Erkennen von Sicherheitslücken an, um die Kommunikation mit Hackern zu vereinfachen und nur gültige Berichte an Ihr Team zu eskalieren. Ob Sie diesen Prozess intern entwickeln oder eine Drittanbieterplattform verwenden, hängt von Ihren Anforderungen und verfügbaren Ressourcen ab. Wenn Sie ein großes Budget, aber nicht viel Personal haben, kann es sinnvoll sein, einen Drittanbieter mit der Durchführung Ihres Programms zu beauftragen. Wenn es andersherum ist, kann es sich lohnen, das Programm selbst zu erstellen.

Berichte empfangen

Wenn Sie sich für die Verwendung einer Drittanbieterplattform entscheiden, sollten diese eine Möglichkeit für Hacker haben, Berichte direkt an Sie zu senden. Wenn Sie Ihr Programm intern entwickeln, müssen Sie dies selbst tun. Das kann eine E-Mail-Adresse sein, über die automatisch ein Ticket oder ein Programmfehler in Ihrer Problemverfolgung erstellt wird (z.B. sicherheit@beispiel.de), oder es kann ein Webformular mit Pflichtfeldern für Formulare sein, die entweder mit oder auf der Seite Ihrer Programmrichtlinien verknüpft sind. Wie auch immer Sie vorgehen, am besten informieren Sie Hacker darüber, in welchem Format Sie Ihre Berichte erhalten möchten. Wenn Sie Hacker bitten, Berichte in einem bestimmten Format einzureichen, ist dies nicht unbedingt eine Garantie dafür, es ist auch nicht schadet zu fragen. Hier ist ein Beispiel dafür, was Sie in einem Formular zum Einreichen eines Berichts fragen können:

Titel: [Fügen Sie eine einzeilige Beschreibung des Problems hinzu, z.B. „XSS in mail.beispiel.de
erhältt eine Sitzung“

Zusammenfassung: [Bitte fügen Sie eine kurze Beschreibung der Sicherheitslücke hinzu und erläutern Sie, warum sie relevant ist. Beispiel: Aufgrund fehlender Maskierungen können Sie eine E-Mail an einen anderen Nutzer mit einer XSS-Nutzlast senden, mit der ein Angreifer die Cookies eines anderen Nutzers stehlen kann, die Sitzungsinformationen enthalten. Dadurch könnte sich der Angreifer im Konto des Opfers anmelden.] Reproduktionsschritte: [Fügen Sie eine schrittweise Anleitung zum Reproduzieren der Sicherheitslücke hinzu.]
1.
2.
3

Angriffsszenario und Auswirkungen: [Wie könnte man diese ausnutzen? Welche Auswirkungen auf die Sicherheit hat dieses
Problem?] Ratempfehlung: [Optional: Wenn Sie einen Ratschlag dazu haben, wie dieses Problem behoben oder behoben werden könnte, fügen Sie es hier hinzu.]