Tipp
Dieser Artikel ist Teil einer Reihe über die Einführung GitHub Advanced Security in großem Maßstab. Eine Einführung in diese Reihe findest du unter Einführung in den umfassenden Einsatz von GitHub Advanced Security.
Klare Ziele für den Rollout deines Unternehmens festlegen
Um eine Grundlage für die Umsetzung des Rollouts in deinem Unternehmen zu schaffen, solltest du Ziele für GHAS in deinem Unternehmen formulieren und diese Ziele deinem Team mitteilen. Deine Ziele können einfach oder komplex sein, solange dein Team am gleichen Strang zieht. Wenn Sie Unterstützung bei Ihren Zielen benötigen, kann GitHub Professional Services Empfehlungen basierend auf unserer Erfahrung mit Ihrem Unternehmen und anderen Kunden bereitstellen.
Im Folgenden findest du einige Beispiele dafür, wie deine Ziele für den Rollout von GHAS lauten könnten:
- Verhindern der Kompromittierung von Geheimnissen: Viele Unternehmen möchten verhindern, dass wichtige Informationen kompromittiert werden, wie z. B. Softwareschlüssel oder Finanzdaten.
- Erfüllen von Complianceanforderungen: Wir haben festgestellt, dass in vielen Unternehmen im Gesundheitswesen GHAS zur Verhinderung der Preisgabe personenbezogener Gesundheitsdaten zum Einsatz kommt.
- Reduzierung der Anzahl von Sicherheitsrisiken: Dies kann ein allgemeines Ziel sein oder auf ein erhebliches Sicherheitsrisiko zurückgehen, von dem dein Unternehmen vor kurzem betroffen war und das deiner Meinung nach durch ein Tool wie GHAS hätte verhindert werden können.
- Repositorys mit hohem Risiko ermitteln: Einige Unternehmen möchten einfach die Repositorys mit dem größten Risiko gezielt anvisieren, um Sicherheitsrisiken in ihrem Code und der Lieferkette zu beseitigen.
- Behebungsrate erhöhen: Um die Anhäufung von Sicherheitsschulden zu verhindern, solltest du die Umsetzung von Erkenntnissen durch Entwickler fördern und sicherstellen, dass diese Sicherheitsrisiken rechtzeitig behoben werden.
Lassen Sie sowohl Ihre Sicherheits- als auch Ihre Entwicklungsgruppen die Leitung Ihres Rollouts übernehmen.
Unternehmen, die sowohl ihr Sicherheits- als auch ihr Entwicklungsteam in den Rollout von GHAS einbinden, sind meist erfolgreicher als Unternehmen, die nur ihre Sicherheitsabteilung einbeziehen und mit der Einbeziehung der Entwicklungsabteilung warten, bis die Pilotphase abgeschlossen ist.
Bei GHAS wird in puncto Softwaresicherheit durch die nahtlose Integration in den Entwicklerworkflow ein entwicklerorientierter Ansatz verfolgt. Wenn deine Entwicklungsabteilung schon am Anfang des Prozesses maßgeblich vertreten ist, werden die Risiken deines Rollouts verringert und die Akzeptanz in der Organisation gefördert.
Die frühzeitige Einbeziehung von Entwicklungsteams, idealerweise schon zum Zeitpunkt des Kaufs, hilft Unternehmen dabei, mithilfe von GHAS Sicherheitsbedenken in einem früheren Stadium des Entwicklungsprozesses aufzugreifen. Wenn beide Teams zusammenarbeiten, können sie sich frühzeitig im Prozess abstimmen, Silos beseitigen, ihre Arbeitsbeziehungen aufbauen und stärken und mehr Verantwortung für den Rollout übernehmen.
Informationen zu GHAS
Um realistische Erwartungen für den Rollout festzulegen, stelle sicher, dass alle Beteiligten mit den folgenden Fakten über die Funktionsweise von GHAS vertraut sind.
1. Bei GHAS handelt es sich um eine Sammlung von Sicherheitstools, die Maßnahmen zum Schutz deines Codes erfordern
Bei GHAS handelt es sich um eine Sammlung von Tools, deren Nutzen sich erhöht, wenn sie konfiguriert, gewartet und in täglichen Workflows sowie in Kombination mit anderen Tools eingesetzt werden.
2. GHAS muss sofort nach der Bereitstellung angepasst werden
Nachdem du GHAS für deine Repositorys eingerichtet hast, musst du die Lösung entsprechend den Anforderungen deines Unternehmens konfigurieren. Beispiel:
- Das Standardsetup für code scanning erkennt automatisch die zu scannenden Sprachen, Sie müssen jedoch möglicherweise andere Aspekte Ihrer code scanning Konfiguration anpassen, z. B. das Bedrohungsmodell der Anwendung, um die Ergebnisse zu verfeinern.
-
Secret scanning erkennt automatisch die muster, die von vielen häufig verwendeten Systemen verwendet werden, aber Sie können benutzerdefinierte Muster hinzufügen, um Token und andere geheime Schlüssel zu erkennen, die von internen Tools verwendet werden.
3. GHAS-Tools sind am effektivsten, wenn sie zusammen eingesetzt und in dein Anwendungssicherheitsprogramm integriert werden
GHAS ist am effektivsten, wenn alle Tools zusammen verwendet werden. Die Wirksamkeit deines Anwendungssicherheitsprogramms wird durch die Integration von GHAS und anderen Tools und Aktivitäten, wie z. B. Penetrationstests und dynamische Überprüfungen, weiter verbessert. Es wird empfohlen, immer mehrere Schutzebenen zu verwenden.
4. Benutzerdefinierte CodeQL Abfragen werden von einigen Unternehmen verwendet, um Scanergebnisse anzupassen und anzuzielen
Code scanning wird von CodeQLdem leistungsstärksten Codeanalysemodul der Welt unterstützt. Für viele unserer Kunden sind die Basisabfragen und zusätzlichen in der Community verfügbaren Abfragen mehr als ausreichend. Andere Unternehmen erfordern jedoch möglicherweise benutzerdefinierte CodeQL Abfragen, um unterschiedliche Ergebnisse zu erzielen oder falsch-positive Ergebnisse zu reduzieren.
Wenn Ihr Unternehmen an benutzerdefinierten CodeQL Abfragen interessiert ist, empfehlen wir, zuerst Ihren Rollout und die Implementierung von GHAS abzuschließen. Wenn Ihr Unternehmen bereit ist, kann GitHub Professional Services Ihnen bei der Navigation Ihrer Anforderungen helfen und sicherstellen, dass Ihr Unternehmen benutzerdefinierte Abfragen benötigt.
5. CodeQL scannt die gesamte Codebasis, nicht nur die Änderungen, die in einer Pullanforderung vorgenommen wurden
Wenn code scanning aus einem Pull-Request ausgeführt wird, umfasst der Scan die gesamte Codebasis und nicht nur die im Pull-Request vorgenommenen Änderungen. Die Überprüfung der gesamten Codebasis ist ein wichtiger Schritt, um sicherzustellen, dass die Änderung mit allen Interaktionen in der Codebasis in Einklang ist.
Tipp
Den nächsten Artikel in dieser Reihe findest du unter Phase 2: Vorbereiten auf das Aktivieren im großen Stil.