Herausforderung: Automatisierung langwieriger Security Reviews für Open-Source-Software
Mit seinem „No Software“-Mantra ist Salesforce seit jeher einer der Cloud- und SaaS-Wegbereiter schlechthin. Auch heute ist man nach wie vor weltweit führend, nach Übernahme von Slack auch bei Instant-Messaging-Technologien und nach Integration von Tableau Software bei Analytics-Lösungen. Ebenso weiterhin auch mit seiner Plattform im Bereich Customer Relationship Management (CRM), die von Marketing und Sales bis hin zu E-Commerce, Services und IT sämtliche geschäftsrelevanten Daten in einer umfassenden 360°-Kundenansicht zusammenführt.
Strategisch setzt Salesforce auf Innovation durch Offenheit. So stellt es das Unternehmen seinen Teams frei, ihre Entwicklungen als Open Source in der Dev-Community veröffentlichen. Dies jedoch unter stringenten Vorgaben zur Qualitätssicherung: Jeder Open-Source-Release muss vor seiner Freigabe eine ganze Kette von Reviews rund um Security, Compliance und diverse weitere Anforderungen durchlaufen. Diese erfolgten in der Vergangenheit jedoch weitestgehend manuell, so etwa auch im Hinblick auf die Einarbeitung der Ergebnisse statischer Code-Analysen. Bei monatlich rund 20 Anfragen zur Open-Source-Veröffentlichung seiner Dev-Teams bestand hier also ein erheblicher Bottleneck.
„Jeder weiß, wie sich manuelle Reviews in die Länge ziehen können“, beginnt Amol Deshpande, Product Security Engineer bei Salesforce, die damalige Gemengelage zu kommentieren. „Gleich mehrere davon jeden Monat sind da zusätzlich zu all unseren anderen Aufgaben im Security-Team doch eine erhebliche Belastung – umso mehr bei teilweise äußerst engen Deadlines für diese. So eruierten wir Wege, wie wir das Ganze effizient würden automatisieren können.“
Lösung: Security-Scanning in Plug-and-Play-Manier
Straffen ließ sich der Review-Prozess für Open-Source-Releases schließlich mit der Hilfe von Snyk, um das man ein Framework zur Automatisierung der Scan-Ergebnisse der Lösung im Plug-and-Play-Stil aufzog. Den Ausgangspunkt hierzu bildete das interne Ticketing-System, über das man entsprechende Review-Anfragen via Webhook in eine Warteschlange in RabbitMQ einreihte.
Daran wiederum ist Snyk über seine API angebunden und kann so die Task-angehängten Code-Repositories zum Scan auf Schwachstellen abrufen. Und nicht nur das: Die Ergebnisse übermittelt es dann wieder zurück an das ursprüngliche Ticket, macht diese also direkt für die Entwickler verfügbar – ganz ohne dass diese an den Scanning-Tools selbst Hand anlegen müssen. Das Security-Team wiederum kann die Anfrage auf Grundlage der Scan-Reports direkt abnehmen oder binnen Minuten die Behebung ggf. noch bestehender Probleme veranlassen.
„Wir gehen einfach die Reports durch und arbeiten gemeinsam mit den Dev-Teams etwaige Probleme ab“, berichtet Deshpande. „Von der Anfrage bis zur Abnahme ist der Workflow höchst effizient: Die Security-Tools laufen bequem im Hintergrund, mit deren spezifischer Bedienung muss man sich also auch nicht beschäftigen. Was wir so an Zeit einsparen, ist tatsächlich enorm.“
Security-Scans für Open-Source-Releases mit Snyk
Seine Software als Open Source verfügbar zu machen, birgt für Unternehmen ein nicht unerhebliches Risiko, können so doch auch Cyberkriminelle den Code einsehen. Potenziell darin enthaltene Sicherheitslücken bilden also ein Sprungbrett für Angriffe auf proprietäre Anwendungen, innerhalb derer der entsprechende Code implementiert ist. Was so etwa auch bei Apache Struts, Tomcat oder OpenSSL geschehen ist, um nur drei prominente Beispiele zu nennen. Denn ganz generell werden Anfälligkeiten innerhalb von Open-Source-Software immer häufiger bekannt. Gegen diesen zweifelhaften Ruhm wollte sich Salesforce unbedingt absichern – dies nicht zuletzt auch deshalb, weil das Unternehmen so schließlich auch selbst zum Angriffsziel werden könnte.
„Sämtliche Anwendungen, die Open-Source-Software nutzen, sind über darin enthaltene Sicherheitslücken ebenfalls angreifbar. Dass dies heute zu den Top-Angriffsvektoren überhaupt gehört, ist da wenig verwunderlich“, führt Deshpande aus und ergänzt: „Erschwerend kommt hinzu, dass allein 2019 doppelt so viele Sicherheitslücken in Open-Source-Software gemeldet wurden wie noch im Vorjahr.“
Snyk Open Source deckt Schwachstellen sowohl in Open-Source-Code auf, den Dev-Teams innerhalb ihrer eigenen Projekte nutzen, als auch in solchem, der zur Freigabe für die Open-Source-Community vorgesehen ist. Dies zudem einschließlich Anleitung zur Behebung sämtlicher erkannter Probleme sowie einer Bewertung des jeweiligen Schweregrads, sodass Dev-Teams diese abhängig von ihren potenziellen Auswirkungen effizient priorisieren können. Genau das also, was Salesforce benötigte. Denn so konnte das Unternehmen nicht nur seine eigene Angriffsfläche erheblich verkleinern, sondern sich auch gewiss sein, dass die Community seine Open-Source-Releases bedenkenlos würde nutzen können.
„In punkto Security ist Automatisierung für mich die Zukunft, ein Shift Left dabei logische Konsequenz“, kommentiert Deshpande. „Snyk macht beides nicht nur möglich, sondern auch in großem Maßstab skalierbar. Künftig wollen wir etwa auch die Abnahme von Anfragen automatisieren, bei denen die Reports von Snyk keinerlei Schwachstellen aufweisen. So werden wir unsere neuen Security-Methodiken noch effektiver unternehmensweit etablieren und skalieren können.“
Ergebnis: Einsparung hunderter manueller Arbeitsstunden
Zeitaufwändige manuelle Reviews von Open-Source-Releases sind dank dem neuen Scanning-Framework rund um Snyk Geschichte. Wo das Security-Team in der Vergangenheit mehrere Stunden pro Review-Anfrage benötigte, liefert Snyk die Scan-Ergebnisse nun zu jeder einzelnen direkt via Ticket. Akkumuliert bedeutet dies pro Jahr beachtliche 150 Stunden, die dem Team nun für andere kritische Security-Projekte zur Verfügung stehen. So rollt Salesforce heute nicht nur Open-Source-Releases um ein Vielfaches schneller und sicherer aus, sondern stärkt auch seinen Security-Status insgesamt.
„Wo das Security-Team in der Vergangenheit mehrere Stunden pro Review-Anfrage benötigte, liefert Snyk die Scan-Ergebnisse nun zu jeder einzelnen direkt via Ticket.“