In diesem Abschnitt wird ausführlich erläutert, wie Sie Ihre Organisation auf die Einführung und Durchführung eines erfolgreichen Programms zur Offenlegung von Sicherheitslücken vorbereiten können. Außerdem erhalten Sie praktische Tipps dazu, wie Sie die von Ihnen ermittelten Lücken schließen können.
Fehler finden
Die Erweiterung deines vorhandenen Sicherheitsprogramms mit externen Sicherheitsexperten ist eine hervorragende Möglichkeit, komplexe Probleme zu finden und Sicherheitslücken zu verschleiern. Die Verwendung eines VDP zur Ermittlung grundlegender Sicherheitsprobleme, die intern erkannt werden können, ist jedoch eine Verschwendung von Ressourcen.
Immobilienverwaltung
Wenn es darum geht, Programmfehler zu finden, ist die einzige Möglichkeit herauszufinden, wo man anfangen soll, wenn du eine gute Vorstellung davon hast, was da draußen ist. Sie können hundert Sicherheitstools kaufen, es macht aber keinen Unterschied, ob Teams ohne Ihr Wissen Anwendungen, Systeme und Dienste direkt bereitstellen, insbesondere wenn Sie keine Sicherheitsprüfungen für diese Assets finden und ausführen können. Erkundigen Sie sich bei den Personen und Teams, die für die Einrichtung neuer Anwendungen, Systeme und Dienste zuständig sind, um zu erfahren, ob diese über einen Prozess zum Erstellen und Verwalten eines Inventars dessen verfügen, was eingerichtet wird und wem das Unternehmen gehört. Wenn es keinen aktuellen Prozess gibt, ist dies eine gute Gelegenheit, mit diesen Teams zusammenzuarbeiten. Es ist der beste Ausgangspunkt, um die Assets Ihrer Organisation zu verstehen, um die Angriffsfläche zu identifizieren. Im Rahmen dieses Prozesses sollte das Sicherheitsteam an der Entwicklung einer neuen Infrastrukturimplementierung für Sicherheitsüberprüfungen beteiligt sein. Es empfiehlt sich, ein umfangreiches Inventar an Assets und Rechteinhabern zu verwenden. Diese Art von Inventar ist nützlich, wenn Sie neue Patches anwenden, die erfordern, dass bestimmte Systeme vorübergehend heruntergefahren werden. Sie bietet eine Roadmap für Einzelpersonen oder Teams, die informiert werden müssen und welche Systeme betroffen sind. Mit einem zuverlässigen Asset-Management-Prozess werden die Inhaber früher im Prozess identifiziert, regelmäßig aktualisiert und dafür gesorgt, dass alle Systeme im gesamten Unternehmen wie vorgesehen funktionieren.
Neben der proaktiven Asset-Verwaltung solltest du überlegen, welche reaktiven Maßnahmen du umsetzen kannst, um Assets zu identifizieren, die zu deiner Organisation gehören, aber die Lücken deiner standardisierten Prozesse zur Asset-Verwaltung durchlaufen haben. Dazu können die gleichen Prozesse zur Aufklärung gehören, die auch für Sicherheitsforscher verwendet werden, die an VDPs und Programmen zu Bug-Bounty-Programmen teilnehmen. Beispielsweise können Sie kostenlose und Open-Source-Tools nutzen, die IP-Bereiche oder Domains, die Ihrer Organisation angehören, im Internet scannen und aufzählen. Eine Google-Suche nach Programmfehlerprämien liefert eine Reihe von Tipps und Tricks zur Identifizierung von Assets Ihrer Organisation, die Sie noch nicht kennen.
Grundlegendes Scannen auf Sicherheitslücken
Nachdem Sie sich damit vertraut gemacht haben, wo Sie Sicherheitsprobleme finden können, sehen wir uns diese Anleitung an. Je nach Ressourcen Ihrer Organisation können Sie eine unterschiedliche Tiefe wählen. Sie müssen jedoch im Rahmen des Programms zur Offenlegung von Sicherheitslücken ein Gleichgewicht zwischen Ihren internen Sicherheitsmaßnahmen und der externen Hacking-Community finden. Dieses Guthaben ist je nach Organisation unterschiedlich.
Tools auswählen
Es gibt viele verschiedene Tools zur Identifizierung von Sicherheitslücken. Einige Tools zum Scannen auf Sicherheitslücken sind kostenlos, andere kostenpflichtig. Welche Tools Sie auswählen können, hängt von Ihren individuellen Anforderungen ab.
- Anforderungen Ihrer Organisation
- Wie gut erfüllt jedes Tool diese Anforderungen?
- Wenn die Vorteile des Tools schwerer sind als die Kosten (Finanz- und Implementierung).
Mit dieser Anforderungsvorlage (OpenDocument-.ods, Microsoft Excel .xlsx) können Sie verschiedene Tools anhand Ihrer Anforderungen bewerten. Die Vorlage enthält einige Beispielanforderungen, aber Sie sollten mit Ihren Sicherheits-, IT- und Entwicklungsteams über die erforderlichen Funktionen sprechen. Bevor Sie ein Programm zur Offenlegung von Sicherheitslücken starten, sollten Sie zumindest Scans auf Sicherheitslücken für alle extern zugänglichen Assets (Websites, APIs, mobile Apps) durchführen können. So können Sie leicht auffindbare Sicherheitslücken finden und beheben, bevor Sie externe Sicherheitsforscher zum Testen dieser Assets und Dienste einladen.
Scaneinrichtung
Bei automatischen Scans auf Sicherheitslücken können viele Probleme auftreten, sie können jedoch auch falsch positive Meldungen verursachen. Aus diesem Grund benötigen Sie Ressourcen, um die Ergebnisse zu überprüfen, bevor Sie sie mit den betroffenen Teams teilen. Sie müssen Prozesse implementieren, damit Scans regelmäßig ausgeführt werden und die Ergebnisse dieser Scans tatsächlich adressiert sind. Dies sieht für jede Organisation anders aus, Sie sollten jedoch mindestens Folgendes ermitteln:
- Scanhäufigkeit
- Kontinuierlich
- Wöchentlich
- Monatlich
- Welche Assets werden gescannt
- Anmeldedaten
- Authentifizierte und nicht authentifizierte Scans im Vergleich
- Hinweis: Wenn du keine Anmeldedaten angibst und ein Sicherheitsforscher beim Start deines VDP mit Anmeldedaten testet, kann es zu einer starken Zunahme von identifizierten Sicherheitslücken kommen.
- Rollen und Verantwortlichkeiten
- Teammitglieder identifizieren, die für die Scans zuständig sind
- Bei Bedarf eine Rotation einrichten
- Scanergebnisse
- Scanergebnisse prüfen
- Programmfehler für bestätigte Sicherheitslücken melden
- Identifizieren von Inhabern, um Fehler zu beheben
- Kontaktaufnahme mit Inhabern zur Problembehebung
Weitere Informationen dazu, wie Sie ermittelte Sicherheitsprobleme beheben können, finden Sie weiter unten in diesem Leitfaden im Abschnitt Programmfehler beheben.
Prozess der Sicherheitsüberprüfung
Das Scannen auf Sicherheitslücken ist eine hervorragende Möglichkeit, sicherheitsrelevante Probleme in Ihrer Organisation reaktiv zu identifizieren. Durch die Implementierung von Prozessen zur Sicherheitsprüfung können Sie jedoch verhindern, dass Sicherheitslücken von vornherein eingeführt werden. In diesem Leitfaden bezieht sich der Begriff Sicherheitsüberprüfung auf jede Situation, die eine manuelle Überprüfung durch ein Mitglied Ihres Sicherheitsteams auslöst. Dazu gehört in der Regel auch die Befugnis, eine Änderung zu blockieren, wenn sie als zu riskant eingestuft wird. Wenn Ihr Sicherheitsteam nicht in der Lage ist, riskante Änderungen zu blockieren, sollten Sie Prozesse einrichten, um das Risiko zu dokumentieren. So kann sichergestellt werden, dass die Person, die die Änderung vorantreibt, das entsprechende Risiko kennt und proaktiv dieses Risiko akzeptiert.
Kriterien für die Sicherheitsüberprüfung
Wann finden Sicherheitsprüfungen statt? Wenn Sie mehrere Kriterien erstellen, die eine Sicherheitsüberprüfung auslösen, sorgen Sie dafür, dass alle auf dem gleichen Stand sind. Im Folgenden finden Sie einige Beispiele für Szenarien, die eine Sicherheitsüberprüfung auslösen können.
- Es werden neue Funktionen im Zusammenhang mit sensiblen Nutzerdaten vorgeschlagen.
- Eine neue Funktion, mit der Nutzer ihren Standort auf der Karte teilen können
- Anfordern potenziell vertraulicher Informationen von Nutzern, z. B. Privatadresse, Geburtsdatum oder Telefonnummer
- Größere Aktualisierungen bestehender Funktionen
- Bestehende Nutzerdaten auf eine neue Art und Weise nutzen, die Nutzer möglicherweise nicht erwarten würden, ohne ihnen die Möglichkeit zu geben, die Funktion zu deaktivieren
- Änderungen an Funktionen im Zusammenhang mit Authentifizierung, Autorisierung und Sitzungsverwaltung
- Änderungen an der Produktionsumgebung des Unternehmens
- Änderungen der Netzwerkkonfiguration, insbesondere Änderungen, die dazu führen können, dass Dienste extern verfügbar gemacht werden
- Installation neuer Software zur Verarbeitung vertraulicher Nutzerdaten, die kompromittiert sein könnte, um auf vertrauliche Nutzerdaten zuzugreifen
- Einrichtung neuer Systeme oder Dienste
- Mit einem neuen Anbieter interagieren oder die Zusammenarbeit mit einem vorhandenen Anbieter ändern
- Einrichtung eines neuen Anbieters, der mit sensiblen Nutzerdaten umgeht
- Änderungen an der Zusammenarbeit mit einem vorhandenen Anbieter, der dazu führt, dass der Anbieter sensible Nutzerdaten verarbeitet
Dies ist keine vollständige Liste, Sie sollten sich aber überlegen, für welche Änderungen eine Sicherheitsüberprüfung erforderlich ist. Wenn Sie die Kriterien definieren, für die eine Sicherheitsüberprüfung erforderlich ist und nicht erforderlich ist, besprechen Sie diese mit den wichtigsten Stakeholdern im Unternehmen:
- Stakeholder haben die Möglichkeit, die Kriterien zu prüfen und Feedback dazu zu geben.
- Die Interessenvertreter stimmen den Kriterien zu
- Stakeholder stimmen zu, proaktiv Sicherheitsüberprüfungen anzufordern
Dokumentieren Sie diese Kriterien und erklären Sie, wie Sie eine Sicherheitsüberprüfung anfordern (z. B. indem Sie einen Fehler in eine Warteschlange stellen, die das Sicherheitsteam überwacht), damit Ihr Unternehmen diesen Prozess so einfach wie möglich durchführen kann.
Beschaffung von Sicherheitsüberprüfungen
Im Gegensatz zu automatischen Scans können Sicherheitsprüfungen ressourcenintensiver sein. Jedes Sicherheitsteam hat nur so viel Zeit am Tag, um unzählige Aufgaben zu erledigen. Daher müssen Sie abschätzen, wie viele Sicherheitsprüfungen basierend auf Ihren Kriterien generiert werden können. Wenn Sie denken, dass Ihr Team überfordert ist und ins Stocken geraten ist, werden alle, die auf die Einführung ihrer Funktionen warten, verärgert sein. Dies kann zu einem kulturellen Wandel in der Organisation führen, wodurch das Sicherheitsteam nicht als Partner, sondern als Blocker betrachtet wird. Wenn der Prozess der Sicherheitsprüfung nicht effizient ist, werden viele Personen und Teams versuchen, ihn vollständig zu umgehen. Sind die Ressourcen knapp, sollten Sie die Kriterien für eine obligatorische Sicherheitsprüfung lockern und ein gewisses höheres Restrisiko annehmen. Wenn Vorfälle aufgrund fehlender Ressourcen zur Durchführung von Sicherheitsprüfungen auftreten, wird die Notwendigkeit zusätzlicher Sicherheitsressourcen gerechtfertigt.
Sicherheitsüberprüfungen durchführen
Wenn Sie entscheiden möchten, welche Sicherheitsprüfungen ausgeführt und wie sie durchgeführt werden sollen, benötigen Sie eine priorisierte Warteschlange. Erstellen Sie eine standardisierte Methode, mit der andere Nutzer in Ihrer Organisation eine Sicherheitsüberprüfung anfordern können, und zwar mit den Informationen, die Sie benötigen, um sie entsprechend zu priorisieren. Nehmen wir zum Beispiel einen Fragebogen, der Elemente wie die Art der Änderung enthält, einschließlich einer kurzen Zusammenfassung der Änderung und welche Arten von Nutzerdaten betroffen sein können. Sie können potenzielle Sicherheitsprüfungen anhand der Antworten auf diese Fragen automatisch in Änderungen mit hohem, mittlerem oder niedrigem Risiko kategorisieren. Wenn eine Änderung ein hohes Risiko darstellt, ist unter Umständen eine umfassendere Sicherheitsüberprüfung erforderlich. Wenn eine Änderung ein geringeres Risiko darstellt, können Sie möglicherweise einen einfacheren Prozess für die Sicherheitsprüfung implementieren, um die erforderlichen Ressourcen zu reduzieren und den Prozess zu beschleunigen. Dies ermöglicht das Unternehmen. Richten Sie eine Rotation innerhalb Ihres Teams ein, die für die Verwaltung der Warteschlange für Sicherheitsprüfungen verantwortlich ist, um sicherzustellen, dass neue Sicherheitsprüfungen von den Mitgliedern Ihres Teams angenommen werden, und dass Sie den Fortschritt bestehender Sicherheitsüberprüfungen verfolgen. Der tatsächliche Prozess der Sicherheitsüberprüfung hängt davon ab, was untersucht wird. Für eine neue Funktion in Ihrer mobilen App könnte beispielsweise ein Sicherheitstechniker den Code prüfen und nach potenziellen Sicherheitslücken suchen. Neue Software, die installiert wird, muss möglicherweise überprüft werden, damit die Zugriffssteuerung richtig eingerichtet ist. Die Zusammenarbeit mit externen Anbietern kann einen völlig anderen Prozess bedeuten. Weitere Informationen finden Sie im Fragebogen zur Sicherheitsbewertung von Anbietern von Google.
Fehler beheben
Es ist wichtig, Fehler zu finden, aber die Sicherheit verbessert sich erst, nachdem diese Fehler behoben wurden. Es ist gut, zu wissen, welche Risiken für Ihr Unternehmen bestehen, aber in der Lage zu sein, dieses Risiko effizient zu beheben.
Sicherheitslückenverwaltung
Sicherheitslücken stammen aus einer Vielzahl von Ressourcen, darunter interne Bemühungen (z. B. Scans auf Sicherheitslücken und Sicherheitsüberprüfungen), Penetrationstests und -audits von Drittanbietern oder sogar externe Sicherheitsforscher, die Sie über Supportkanäle informieren, bevor Ihr VDP offiziell eingeführt wird. Ihre Organisation braucht eine Möglichkeit, neue und vorhandene Sicherheitslücken zu kategorisieren, damit sie den richtigen Stakeholdern kommuniziert, ordnungsgemäß priorisiert und zeitnah behoben werden können. Beim Start deines VDP gibt es einen neuen Stream von Sicherheitslücken, die in die Prozesse zum Verwalten von Sicherheitslücken eintreten. Mit soliden Prozessen zum Umgang mit diesen Sicherheitslücken können Sie den Fortschritt bei der Problembehebung verfolgen und auf Anfragen von externen Sicherheitsforschern nach Aktualisierungen reagieren. Wenn Sie eine Sicherheitslücke schnell priorisieren und mit VDP-Teilnehmern über den Zeitplan für die Problembehebung informieren, können Sie die Interaktion mit der Sicherheitsforscher-Community erhöhen und den Ruf der Sicherheit Ihres Unternehmens verbessern. In den folgenden Abschnitten werden verschiedene Aspekte deines Sicherheitslückenverwaltungsprogramms beschrieben, die du vor dem Start deines VDP einsetzen solltest.
Standards für Schweregrade und Fristen für die Behebung festlegen
Wenn Sie eine einheitliche Formulierung für den Schweregrad der Sicherheitslücken und die idealen Abhilfefristen für jeden Schweregrad erstellen, können Sie mit Ihrem Unternehmen leichter Standarderwartungen festlegen. Wenn jede Sicherheitslücke wie ein Notfall behandelt wird, erschöpft Ihre Organisation ihre Ressourcen und wächst gegenüber dem Sicherheitsteam. Wenn jede Sicherheitslücke als niedrige Priorität eingestuft wird, werden Sicherheitslücken nie behoben und das Risiko einer Sicherheitslücke erhöht sich. Da jede Organisation nur begrenzte Ressourcen hat, müssen Sie ein Ranking nach Schweregrad festlegen. Dieses Ranking enthält Kriterien, mit denen Ihre Organisation besser nachvollziehen kann, in welchem Schweregrad eine Sicherheitslücke liegt, und welche Fristen für die Behebung den entsprechenden Schweregrad haben. Entwerfen Sie eine Reihe von Richtlinien für den Schweregrad und geben Sie sie für die wichtigsten Stakeholder in Ihrem Unternehmen frei. Wenn das Entwicklungsteam beispielsweise an der Ausarbeitung Ihrer Schweregrade beteiligt ist, ist es wahrscheinlicher, dass sie diese Standards akzeptieren und einhalten, wenn es Zeit wird, eine Sicherheitslücke innerhalb eines bestimmten Zeitraums zu beheben. Diese Richtlinien können sich je nach Geschäftsrisiko unterscheiden. Sie können eine Bedrohungsmodellierungsübung in Betracht ziehen, um darüber nachzudenken, welche Bedrohungen am wahrscheinlichsten und wirkungsvollsten für Ihre Organisation sind, und Beispiele für Probleme hinzuzufügen, die in die einzelnen Schweregrade fallen. Im Folgenden finden Sie ein Beispiel für die Wichtigkeitsstandards und Abhilfefristen für eine Finanzorganisation.
Schweregrad | Beschreibung | Zeitplan für die Problembehebung | Beispiel(e) |
---|---|---|---|
Kritisch | Probleme, die eine unmittelbare Bedrohung für unsere Nutzer oder unser Unternehmen darstellen. | Inhaber: Ein primärer Inhaber, der sicherstellt, dass die Sicherheitslücke behoben wurde, sollte innerhalb von 8 Stunden identifiziert werden. Anruf- und Seitenressourcen nach Bedarf, auch außerhalb der normalen Geschäftszeiten. Problem: Das Problem selbst sollte so schnell wie möglich oder spätestens innerhalb von drei Werktagen behoben oder zumindest minimiert werden. |
Manipulation einer Produktionsdatenbank mit Finanzdaten aller Nutzer Ein Angreifer, der Zugriff auf Geschäftsgeheimnisse wie unsere proprietären Investitionsalgorithmen erhält Ein aktiver Vorfall, einschließlich eines Angreifers, der Zugriff auf unser internes Netzwerk oder sensible Produktionssysteme erhält. |
Hoch | Probleme, die ausgebeutet werden könnten, wenn sie ausgenutzt würden. | Inhaber:Ein primärer Inhaber sollte innerhalb eines Arbeitstags identifiziert werden. Lösung: innerhalb von 10 Werktagen (~2 Wochen) |
Sicherheitslücken, die dazu führen könnten, dass vertrauliche Nutzerdaten oder Funktionalität nicht mehr zugänglich sind (z.B., dass jeder Nutzer Geld von einem anderen Nutzer stehlen kann). |
Mittel | Probleme, die schwerer auszunutzen oder zu direkten Schäden führen können | Inhaber:Ein primärer Inhaber sollte innerhalb von fünf Werktagen identifiziert werden. Lösung: innerhalb von 20 bis 40 Werktagen (~1 bis 2 Monaten) |
Bestätigte Probleme, die durch automatische Scanner identifiziert werden, z. B. Patches für Sicherheitsupdates ohne bekannte Exploits. Probleme bei der Offenlegung von Informationen, die wahrscheinlich zu weiteren Angriffen beitragen würden. Ratenbegrenzungsprobleme, die ausgenutzt werden könnten (z.B. in der Lage, Passwörter für einen Nutzer kontinuierlich zu erraten). |
Niedrig | Probleme mit minimalen Auswirkungen; werden hauptsächlich zum Protokollieren bekannter Probleme verwendet. | Es müssen keine Anforderungen erfüllt werden, um einen Inhaber zu finden oder das Problem innerhalb eines bestimmten Zeitraums zu beheben. | Offenlegung von Informationen, die wahrscheinlich kein Risiko darstellt, aber nicht extern zugänglich sein muss |
Insektenpflege
Wir sprechen hier nicht von Haarschnitten, sondern von der korrekten Formatierung von Fehlern, damit sie sich leicht beheben lassen. Definieren Sie anhand der vorherigen Tabelle Ihre eigenen Definitionen für Schweregrade. Diese Definitionen werden verwendet, um Programmfehler in verschiedene Schweregrade zu klassifizieren und sie den Inhabern mitzuteilen.
Zusätzlich zum Zuweisen der einzelnen Schweregrade müssen Sie dafür sorgen, dass Ihre Programmfehler in einem Standardformat vorliegen, das die Aufnahme von Teams durch die Teams erleichtert. Sicherheitslücken werden in den Prozessen zum Verwalten von Sicherheitslücken in verschiedenen Formaten eingegeben, z. B. in automatischen Scannerergebnissen oder manuellen Schreibvorgängen aus Sicherheitsüberprüfungen. Wenn Sie sich die Zeit nehmen, jede Sicherheitslücke in ein Standardformat umzuwandeln, erhöht sich die Wahrscheinlichkeit, dass das empfangende Team das Problem schnell versteht und beheben kann.
Dieses Format oder diese Vorlage kann je nach Organisation und den Informationen, die für Inhaber am wichtigsten sind, um Fehler zu beheben, variieren. Im Folgenden finden Sie eine Beispielvorlage, die Sie verwenden können. Sie können diese Vorlage später wiederverwenden, wenn Sie ein Formular zum Einreichen von Sicherheitslücken für Forscher erstellen.
Titel: <Eine Zeile mit einer Beschreibung des Problems. In der Regel ist der Typ der Sicherheitslücke betroffen und besagt, welches Asset/welcher Dienst/usw. betroffen sind. Optional: Geben Sie den Schweregrad an oder ordnen Sie den Schweregrad einem Feld in Ihrer Problemverfolgung zu> Zusammenfassung: <kurze Beschreibung der SicherheitslückeHier ein Beispiel für eine potenzielle Sicherheitslücke mit hohem Schweregrad:
Titel: [HIGH] Unsichere direkte Objektreferenz (IDOR) auf Profilseiten Zusammenfassung: In den Funktionen der Profilseiten unserer App wurde ein IDOR gefunden, der jedem Nutzer unbefugten Zugriff auf die Anzeige und Bearbeitung des Profils eines anderen Nutzers ermöglicht, einschließlich des vollständigen Namens, der Privatadresse, der Telefonnummer und des Geburtsdatums des anderen Nutzers. Wir haben die Protokolle geprüft und festgestellt, dass dieses Problem noch nicht ausgenutzt wurde. Dieses Problem wurde intern ermittelt. Schritte für die Reproduktion:
- Richten Sie einen Proxy ein, z. B. die Burp Suite, um Traffic auf einem Mobilgerät abzufangen, auf dem die App installiert ist.
- Rufen Sie Ihre Profilseite auf und fangen Sie die zugehörige HTTP-Anfrage ab.
- Ändern Sie profileID=###### in profileID=000000 (dies ist ein Testnutzer) und senden Sie die HTTP-Anfrage.
- In der App wird das Profil des Nutzers 000000 angezeigt. Sie können die zugehörigen Informationen ansehen und bearbeiten.
Angriffsszenario/Auswirkungen: Jeder Nutzer kann diese Sicherheitslücke verwenden, um das Profil eines anderen Nutzers aufzurufen und zu bearbeiten. Im schlimmsten Fall könnte ein Angreifer den Prozess zum Abrufen der Profilinformationen aller Nutzer in unserem gesamten System automatisieren. Obwohl wir der Meinung sind, dass dies noch nicht ausgenutzt wurde, ist es wichtig, dass wir dies als Standardproblem mit hohem Schweregrad behandeln. Wenn wir Hinweise auf Ausbeutung feststellen, kann dies zu einem schwerwiegenden Schweregrad führen. Abhilfemaßnahmen: Implementieren Sie serverseitige Überprüfungen, damit der Nutzer, der die Anfrage stellt, Zugriff auf das Profil haben kann, das über den Wert von profileID angefordert wird, um es zu bearbeiten. Wenn beispielsweise Alice angemeldet ist und die Profil-ID 123456 hat, aber Alice die Profil-ID 333444 anfordert, wird ein Fehler angezeigt und dieser Versuch, auf das Profil eines anderen Nutzers zuzugreifen, sollte protokolliert werden. Weitere Informationen zu IDOR und zu dessen Behebung finden Sie in den OWASP-Materialien zu diesem Fehler.
Sie sparen Zeit und manuellen Aufwand, wenn Sie Möglichkeiten zur Automatisierung von Konvertierungen aus verschiedenen Quellen in Ihr Standardformat suchen. Wenn Sie mehr Sicherheitslücken erstellen, werden in den Abhilfemaßnahmen möglicherweise gängige Themen aufgeführt. Neben der generischen Vorlage für Fehlerformate möchten Sie möglicherweise zusätzliche Vorlagen für gängige Arten von Sicherheitslücken erstellen.
Inhaber finden
Einer der schwierigsten Aspekte des Managements von Sicherheitslücken ist das Identifizieren von Inhabern, um Fehler zu beheben, und das Mitarbeiten an den Ressourcen, damit sie Fehler gemäß Zeitplan rechtzeitig beheben können. Wenn Sie Prozesse für die Asset-Verwaltung eingerichtet haben, ist das etwas einfacher. Falls nicht, kann dies die Motivation dafür sein. Je nach Größe Ihres Unternehmens kann die Suche nach einem Inhaber ziemlich einfach oder ungeheuer komplex sein. Wenn Ihr Unternehmen wächst, steigt auch der Aufwand, um zu bestimmen, wer für die Behebung neu entdeckter Sicherheitsprobleme verantwortlich ist. Erwägen Sie die Implementierung einer operativen Rotation im Dienst. Jede zuständige Person ist dafür verantwortlich, nicht zugewiesene Sicherheitslücken zu prüfen, Inhaber zu ermitteln und Prioritäten zu setzen. Selbst wenn Sie die Person identifizieren können, die für die Behebung einer Sicherheitslücke verantwortlich ist, und sie dem Programmfehler zuweisen können, müssen Sie die Person auch davon überzeugen, Zeit in die Behebung des Problems zu investieren. Dieser Ansatz kann je nach Team oder Person sowie den anderen Aufgaben, an denen er arbeitet, variieren. Wenn Sie in Bezug auf die Wichtigkeitsstandards und Abhilfefristen die Zustimmung der Organisation erhalten haben, können Sie darauf verweisen. Manchmal kann es jedoch zusätzliche Überzeugung erfordern, jemanden zur Behebung eines Fehlers zu bewegen. Hier sind einige allgemeine Tipps zur Behebung von Sicherheitslücken:
- Grund: Wenn einem Nutzer eine Sicherheitslücke zugewiesen wird, die behoben werden muss, ist dies normalerweise unerwartet. Erklären Sie, warum dieses Problem zeitnah behoben werden muss (z.B. Auswirkungen / Angriffsszenario) und dass der Inhaber das Problem nachvollziehen kann.
- Kontext erfassen: In einigen Fällen hat nur eine Person das Wissen, das zur Behebung eines Fehlers erforderlich ist, und sie hat möglicherweise andere Aufgaben, an denen sie arbeitet. Nehmen Sie sich die Zeit, um herauszufinden, was diese sind. Es ist möglich, dass die anderen Aufgaben wichtiger sind als die kurzfristige Behebung dieser Sicherheitslücke. Wenn Sie Empathie und Flexibilität im Umgang mit Behebungsfristen demonstrieren, können Sie den Firmenwert steigern und Ihre Beziehung zu denjenigen stärken, die Sie zur Behebung von Sicherheitslücken benötigen. Achten Sie aber darauf, nicht zu viel Spielraum einzuräumen. Andernfalls nimmt Ihr Unternehmen Ihre Behebungsfristen nicht ernst.
- Erkläre, wie das geht: Auch wenn du im Rahmen des Programmfehlers Abhilfevorschläge eingibst, ist der Inhaber des Problems möglicherweise verwirrt oder benötigt Hilfe bei der Behebung des Fehlers. Wenn Ihr Kind Hilfe braucht, um es zu beheben, können Sie ihm beibringen. Es reicht einfach, Programmfehler an Inhaber zu senden, ohne ihnen dabei zu helfen, die Beziehung der Organisation zum Sicherheitsteam zu beeinträchtigen. Wenn du anderen so gut wie möglich hilfst, können sie aktuelle und zukünftige Sicherheitslücken beheben und anderen helfen.
- Anfrage anpassen: Verschiedene Teams und Einzelpersonen haben möglicherweise Prozesse, um eingehende geschäftliche Anfragen anzunehmen und zu priorisieren. Einige Teams möchten möglicherweise, dass alle eingehenden Anfragen über ihre Administratoren eingehen. Andere möchten in einem Standardformat um Hilfe bitten. Einige funktionieren nur für vordefinierte Sprints. In jedem Fall wird es wahrscheinlicher, dass Ihre Anfrage priorisiert und bearbeitet wird. Dies nimmt einige Zeit in Anspruch, wenn Sie die Anfrage an das Format anpassen, das das Team oder die Person normalerweise zur Unterstützung von Anfragen nutzt.
- Eskalieren Sie den letzten Ausweg: Wenn Sie alle oben genannten Schritte durchgeführt haben und die Person oder das Team, die für die Behebung einer Sicherheitslücke verantwortlich sind, sich nicht einfach die Zeit nehmen wird, ein schwerwiegendes Sicherheitsproblem zu beheben, sollten Sie die Führungsebene entsprechend eskalieren. Dies sollte immer nur die letzte Option sein, da dies Ihre Beziehung zur betreffenden Person oder dem betreffenden Team beeinträchtigen kann.
Ursachenanalyse
Mit der Ursachenanalyse können Sie nicht nur einzelne Sicherheitslücken finden und beheben, sondern auch systemische Sicherheitsprobleme erkennen und beheben. Jeder hat nur begrenzte Ressourcen, daher ist es verlockend, diesen Schritt zu überspringen. Es kann jedoch Zeit gespart werden, Trends in Ihren Sicherheitslückendaten zu analysieren und weitere kritische und schwerwiegende Fehler genauer zu untersuchen, um Zeit zu sparen und das Risiko langfristig zu reduzieren. Nehmen wir beispielsweise an, dass immer wieder dieselbe Sicherheitslücke (z. B. Intent-Weiterleitung) in der gesamten Anwendung auftritt. Sie beschließen, mit den Teams zu sprechen, die diese Sicherheitslücke in Ihrer Anwendung einführen, und erkennen, dass die meisten von ihnen nicht wissen, was die Intent-Weiterleitung ist, warum dies wichtig ist oder wie sie verhindert werden kann. Sie haben einen Vortrag und einen Leitfaden zusammengestellt, um Entwickler in Ihrer Organisation über diese Sicherheitslücke zu informieren. Diese Sicherheitslücke verschwindet wahrscheinlich nicht vollständig, aber die Rate sinkt wahrscheinlich. Wenn du dein VDP startest, hat jede Sicherheitslücke, die dir von Dritten gemeldet wurde, deine bestehenden internen Sicherheitsprozesse nicht mehr durchlaufen können. Wenn Sie RCA für Fehler in Ihrem VDP durchführen, erhalten Sie noch mehr Informationen darüber, wie Sie Ihr Sicherheitsprogramm systematisch verbessern können.
Erkennung und Reaktion
Erkennung und Reaktion bezieht sich auf alle Tools und Prozesse, die Sie eingerichtet haben, um potenzielle Angriffe auf Ihre Organisation zu erkennen und darauf zu reagieren. Dies kann in Form gekaufter oder selbst entwickelter Lösungen geschehen, die Daten auf verdächtiges Verhalten analysieren. Im Bereich Grooming Bugs ging es beispielsweise um das Logging, wenn ein Nutzer versucht, nicht autorisierten Zugriff auf das Profil eines anderen Nutzers zu erlangen. Sie erhalten möglicherweise ein Signal oder eine Benachrichtigung, wenn ein Nutzer in kurzer Zeit eine große Anzahl von fehlgeschlagenen Versuchen versucht, auf die Profile anderer Nutzer zuzugreifen. Sie können sogar den Prozess blockieren, den dieser Nutzer für einen bestimmten Zeitraum oder für unbegrenzte Zeit daran hindert, auf Ihre Dienste zuzugreifen, bis die Situation überprüft und der Zugriff manuell wiederhergestellt werden kann. Wenn Sie noch keine Erkennungs- und Reaktionsmechanismen haben, sollten Sie mit einem Experten zusammenarbeiten, der Sie beim Erstellen eines DFIR-Programms (Digital Forensics and CIR) für Ihre Organisation unterstützt. Wenn Sie bereits Erkennungs- und Reaktionsmechanismen haben, sollten Sie sich über die Folgen von fünf, zehn oder sogar einhundert Sicherheitsforschern im Hinblick auf Angriffe auf Ihre Angriffsflächen im Internet Gedanken machen. Dies kann einen großen Einfluss auf Ihre vorhandenen IDS/IPS-Systeme (Intrusion Detection and Prevention) haben.
Zu den potenziellen Risiken gehören:
- Überlastung in Form von Benachrichtigungen:Eine Flut von Benachrichtigungen oder Signalen, die wie böswillige Angriffe aussehen, aber normale, genehmigte Tests von Sicherheitsexperten sind, die an deinem VDP teilnehmen. Es kann so viel Rauschen generiert werden, dass es schwierig wird, echte Angriffe von legitimen Sicherheitstests zu unterscheiden.
- Fehlalarme bei Vorfallreaktionen:Wenn die betreffenden Personen am Samstag um 02:00 Uhr Prozesse durchführen, sind sie nicht froh darüber, einen potenziellen Verstoß zu erkennen und zu untersuchen, der eigentlich ein Sicherheitsforscher war und legitime Tests durchführt.
- Blockieren von Sicherheitsexperten:Wenn Sie aggressive IPS (Intrusion Prevention Systeme) haben, blockieren Sie möglicherweise die IP-Adresse eines Sicherheitsexperten, der versucht, Scans, manuelle Tests usw. auszuführen, um Sicherheitslücken zu identifizieren und sie Ihnen zu melden. Besonders bei einem VDP kann es passieren, dass ein Sicherheitsforscher nach 5 Minuten Tests das Interesse verliert und sich stattdessen auf das Programm einer anderen Organisation konzentriert. Dies kann dazu führen, dass die Sicherheitsexperten insgesamt nicht in Ihrem Programm mitwirken. Dadurch steigt das Risiko, dass Sicherheitslücken unentdeckt und für Ihre Organisation unbekannt sind. Sie können Ihr IPS zwar nicht selbst abschwächen, aber es gibt andere Maßnahmen, mit denen Sie das Risiko der Deaktivierung von Forschern verringern können.
Die Behebung dieser Risiken hängt weitgehend davon ab, welchen Ansatz Sie bei der Zusammenarbeit mit externen Sicherheitsforschern verfolgen möchten. Wenn Sie einen eher Blackbox-Stil von Tests verwenden möchten, die reale Angriffe simulieren, könnten Sie nichts tun. In diesem Fall generiert der Traffic des Forschers Benachrichtigungen und Ihr Team kann Maßnahmen ergreifen, um dies zu untersuchen und entsprechend zu reagieren. So kann Ihr Team besser auf reale Angriffe reagieren, aber das Engagement mit Sicherheitsforschern wird möglicherweise reduziert, insbesondere wenn sie für Tests blockiert sind. Außerdem kann es zu einem echten Angriff kommen, während Sie Zeit damit verbringen, legitime Tests zu untersuchen. Wenn Sie einen Grauenrahmen verfolgen möchten, können Sie mit Sicherheitsforschern zusammenarbeiten, um ihren Testtraffic selbst zu identifizieren. So können Sie den Traffic aus den Tests und daraus resultierenden Benachrichtigungen auf die weiße Liste setzen oder anderweitig herausfiltern. Ihr Team kann reale Angriffe besser von genehmigten Tests unterscheiden und Forscher können Sicherheitslücken finden und melden, ohne dass sie durch Ihre Systeme zur Eindämmung von Eingriffen behindert werden. Einige Organisationen bitten die Sicherheitsexperten, ein Formular einzureichen, um eine eindeutige Kennung zu beantragen, die in Foren, die vom Forscher generiert werden, an Header anhängen kann. So kann die Organisation den Traffic für den Forscher auf die weiße Liste setzen und feststellen, ob der Forscher über den vereinbarten Umfang des Tests hinausgeht. Wenden Sie sich in diesem Fall an den Forscher und bitten Sie ihn, sich zurückzuhalten, bis Sie gemeinsam einen Testplan erstellen können.