Aikido

Wie „Too Good To Go“ die Lieferkette vom Gerät bis zur Produktion sichert mit Aikido

~200
gescannte Repos
200+
gescannte Container
160
Entwickelnde mit Device Protection
1300
Geschützte Mitarbeitende

Auf einen Blick

  • Schädliche und anfällige Pakete werden bei der Installation auf jedem Gerät im Unternehmen gestoppt – einschließlich derer von Nicht-Entwickelnden, die mit KI-Tools Code schreiben 
  • Abhängigkeits- und Container-Scanning läuft über alle Repositories und Container hinweg 
  • Ein erforderlicher Aikido-Check in GitHub verhindert, dass anfälliger Code in die Produktion gelangt
  • Entwickelnde bleiben in ihrem gewohnten Workflow, anstatt ein weiteres Tool lernen zu müssen
  • Aikido speist die Compliance-Kette, erstellt datierte Tickets und macht verpasste SLAs transparenter

Das neue Risiko war Open Source, und das alte Setup überwachte nur die Produktion

Too Good To Go, das Unternehmen hinter dem weltweit größten Marktplatz für überschüssige Lebensmittel, nutzt Aikido, um schädliche und anfällige Open-Source-Pakete abzufangen, bevor sie ein Entwicklergerät oder die Produktion erreichen, und um seine Sicherheitsarbeit eng mit Compliance zu verknüpfen.

Robert Christiansen, Vice President of Engineering, ist für die Bereiche Technik, Entwicklererfahrung und „ compliance “ in allen Softwareteams des Unternehmens verantwortlich. Too Good To Go betreibt seinen Marktplatz für überschüssige Lebensmittel seit 2016 und verbindet mittlerweile mehr als 150 Millionen registrierte Nutzer mit über 200.000 aktiven Geschäftspartnern in 20 Ländern – unterstützt von einer Entwicklungsabteilung innerhalb eines Unternehmens mit rund 1.300 Mitarbeitern.

Vor anderthalb Jahren lag die Priorität des Teams noch darauf, infizierte Bibliotheken zu stoppen, bevor sie die Produktion erreichten. In den letzten sechs Monaten haben Angriffe auf Open-Source-Pakete und auf die Entwickelnden, die sie installieren, rasant zugenommen, und Open-Source-Projekte werden mit neuen Schwachstellen überhäuft. Das größere Risiko liegt mittlerweile weiter vorne in der Kette: ein Paket, das das Gerät einer Entwickelnden Person kompromittiert, noch bevor etwas ausgeliefert wird. Entwickelnde verfügen in der Regel über mehr Zugriffsrechte als alle anderen, was ihre Geräte zum wertvollsten Ziel macht.

Die Angriffsfläche hat sich zudem über die reine Softwareentwicklung hinaus ausgeweitet. Personen in anderen Geschäftsbereichen haben begonnen, mit KI-Tools Code zu schreiben, und holen sich Node- und Python-Pakete auf Geräte, für die nie Sicherheitsprozesse vorgesehen waren. Robert bezeichnet dies als noch gefährlicher. Die bisherigen Tools des Teams scannten erst nach dem Build. Das schützte zwar die Produktion, ließ aber die Entwicklung ungesichert.

Compliance hat die Anforderungen weiter verschärft. Too Good To Go arbeitet nach NIS2 und PCI, wobei PCI eigene Vorgaben dazu macht, wie schnell das Team auf eine Schwachstelle reagieren muss. Das Team benötigte ein einziges Produkt, das Probleme auf dem Endgerät sowie zum Zeitpunkt des Builds stoppen und nachweisen kann, dass die Fristen eingehalten wurden.

Ein einziges Tool vom Endgerät bis zur Pipeline

Aikido Safe Chain läuft mittlerweile auf jedem Gerät im gesamten Unternehmen. Es prüft, ob Node oder Python installiert ist, und überwacht den Installationsschritt, sodass ein fehlerhaftes Paket gestoppt wird, bevor es Fuß fasst – unabhängig davon, wer es installiert. Der Geräteschutz deckt die rund 160 Personen ab, die das Unternehmen dem Bereich Engineering zuordnet, ganz gleich, ob sie Code schreiben oder nicht.

In der Pipeline muss jede Änderung eine Aikido-Prüfung in GitHub durchlaufen, bevor sie in die Produktion übernommen werden kann. Da diese Prüfung direkt in den gewohnten Entwicklungsworkflow integriert ist, wird Sicherheit nie zu einem separaten Schritt, an den man denken muss. Aikido verfolgt anfällige Abhängigkeiten und Container-Images über knapp 200 Repositories und mehr als 200 Container hinweg – einschließlich der tiefen Ketten transitiver Abhängigkeiten, die selbst gehärtete Docker-Images mit sich bringen.

Die Entwickelnden, deren Aufgabe die Aktualisierung von Bibliotheken ist, nutzen das IntelliJ-Plugin, um zu sehen, ob ein Fund ein echtes Problem darstellt und ob ein Update voraussichtlich etwas beschädigen wird, bevor sie es überhaupt anfassen.

Entwickelnde müssen nicht einmal ständig Aikido öffnen. Es ist einfach Teil des Workflows geworden.

Warum sich Too Good To Go für Aikido entschieden hat

  • Schutz auf dem Endgerät und zur Build-Zeit (die beiden Bereiche, die das alte Setup offen ließ)
  • Ein schnelles, unkompliziertes Setup
  • Eine einfache Benutzeroberfläche und transparente Preisgestaltung

Aikido fängt das ab, was sonst durchrutschen würde

Die größte Veränderung ist das, was nun nicht mehr unbemerkt bleibt. Safe Chain und der Geräteschutz haben bereits Pakete auf Entwicklergeräten gestoppt, und auf die Frage, ob Aikido echte Bedrohungen erkennt, lautet Roberts Antwort: „Definitiv, es fängt Dinge ab, die sonst durchgegangen wären.“

Wir haben jetzt vollständige Transparenz darüber, welche Bibliotheken wir sowohl für die Infrastruktur als auch für den Code patchen müssen.

Robert nennt einen geschäftlichen Erfolg, der über allen anderen steht: Das Team hatte noch keinen einzigen Vorfall durch eine kompromittierte Bibliothek.

Im Bereich Compliance erstellt Aikido Tickets mit Datumsangaben, sodass bei Überschreitung einer SLA für einen Fix sofort alle Beteiligten Bescheid wissen. Da PCI strenge Erwartungen an Reaktionszeiten stellt, hilft dieser Verlauf Too Good To Go dabei, Compliance-Anforderungen einzuhalten, ohne den Status manuell hinterherlaufen zu müssen.

Wie Too Good To Go Aikido heute einsetzt

Derzeit im Einsatz

  • Scan von Softwareabhängigkeiten
  • Container-Scanning
  • Aikido Safe Chain im gesamten Unternehmen
  • Geräteschutz im gesamten Engineering-Bereich
  • GitHub-Pipeline-Prüfung
  • Das IntelliJ-Plugin für Entwickelnde, die Fehlerbehebungen durchführen

Als Nächstes geplant

  • Ein Schweregradmodell, das jeden Fund mit dessen tatsächlicher Gefährdung abgleicht, sodass interne Dienste ohne Internetzugang monatlich gepatcht werden, während exponierte Dienste sofort korrigiert werden

Wird evaluiert

  • KI-Penetrationstests, die der Security Engineer des Teams testen möchte, um automatisierte Tests neben den ohnehin jährlich stattfindenden Penetrationstests häufiger durchführen zu können

Fazit

Das Produkt war leicht einzurichten und funktioniert. Ich bin froh, dass wir uns dafür entschieden haben, und hätte es am liebsten schon früher gehabt.

Sicherheit jetzt implementieren

Sichern Sie Ihren Code, Ihre Cloud und Ihre Laufzeit in einem zentralen System.
Finden und beheben Sie Schwachstellen schnell und automatisch.

Keine Kreditkarte erforderlich | Scan-Ergebnisse in 32 Sek.