Um eventuelle Sicherheitsschwachstellen in TXTWerk zu erkennen, ist der Vulnerability Management Scanner Trivy in die CI/CD Pipeline integriert worden. So kann dauerhaft die Sicherheit der Text Mining Software gewährleistet werden.
TXTWerk ist ein komplexes NLP-Framework, das verschiedene State-of-the-Art NLP-Module kombiniert und so ein breites Spektrum an Text Mining Anwendungen unterstützt. Dabei ist TXTWerk als SaaS-Lösung und als On-Premise Lösung verfügbar. Neben Verbesserungen an der Qualität und dem Ressourcenverbrauch ist das Thema Sicherheit ein Fokusthema. IT-Sicherheit ist eine Aufgabe, die viele Organisationseinheiten und Maßnahmen betrifft und die Systeme vor Cyberangriffen und anderen Bedrohungen schützen soll. Dazu zählen unter anderem Zugriffskontrollen, Rechtemanagement, Firewalls, Proxies, Virenscanner sowie das Vulnerability Management. Während wir bei On-Premise Lösungen selten auf alle Maßnahmen Einfluss haben, ist gerade das Vulnerability (Schwachstellen) Management eine Aufgabe, die wir bei der Auslieferung von TXTWerk in der Hand haben.
Continuous Integration mit Schwachstellenanalyse
Da TXTWerk aus einer Menge an unterschiedlichen Containern besteht, die die Komponenten kapseln, ist eine Analyse auf Schwachstellen (Vulnerabilities) nicht ganz einfach. Zusammen mit unserem Partner, dem ITZBund haben wir deswegen die CI/CD Pipeline von TXTWerk, um eine automatische Sicherheitsanalyse erweitert. Das ITZBund ist der IT Dienstleister des Bundes und für den Betrieb vieler sicherheitsrelevanter Systeme des Bundes zuständig. Gemeinsam mit dem ITZBund haben wir bei der Auslieferung eine automatisierte Analyse auf sogenannte CVEs eingebaut. Bei Common Vulnerabilities and Exposures (CVE) handelt es sich um eine standardisierte Liste von Schwachstellen und Sicherheitsrisiken von Computersystemen. Dank der eindeutigen Benennung wird der Datenaustausch über Schwachstellen und Sicherheitsrisiken vereinfacht. Laufende Nummern identifizieren eindeutig die verschiedenen Einträge.
Trivy CVE-Scanner
Für einfache aber umfassende Vulnerability Scans von Containern haben wir uns für Trivy entschieden. Der Trivy Scanner erkennt zuverlässiger und schneller neue kritische Sicherheitslücken im Vergleich zu anderen Lösungen wie Clair oder auch Anchor. Zudem ist Trivy auch Teil der Docker-Registry Harbor, die wir zum Ausliefern von TXTWerk an Kunden nutzen.
Einfluss auf unsere Entwicklungsprozesse
Das Erweitern der CI/CD Pipeline mit Trivy war in unserem Setup schnell durchgeführt und hatte auf unseren Entwicklungsprozess großen Einfluss. Die ersten Analysen mit Trivy haben zunächst einige neue Schwachstellen offenbart. Sie lagen in Softwarepaketen vor, die von uns nicht mehr genutzt wurden, aber noch immer mit den Containern ausgeliefert wurden. Basierend auf diesen Ergebnissen haben wir die Container “aufgeräumt” und nicht benötigte Software entfernt. Andere Schwachstellen wurden durch ein Anpassen von Softwareversionen gelöst. In einigen Fällen musste auch ein Umbau unserer Komponente erfolgen, z.B. wenn keine Version einer Software ohne CVE vorlag. Dieser initiale Aufwand wurde einmalig durchgeführt.
Um nicht nur vergangene Probleme zu lösen, wird Trivy jetzt bei jedem Deployment eingesetzt. Bei der Detektion von neuen kritischen Lücken führt dies zu einem automatischen Stop. Damit stellen wir sicher, dass keine neuen bekannten CVE vorliegen, bzw. ausgeliefert werden.
Sicherheit ist immer ein wichtiges Thema bei ontolux und natürlich bei unseren Kunden. Dabei liegt ist die größten Herausforderungen für die Sicherheit darin, Schwachstellen und Sicherheitslücken zu identifizieren, zu klassifizieren, zu priorisieren und schnellst möglichst zu schließen.
Ein Tool für das Finden dieser Schwachstellen sind Scanner, welche speziell die Software oder komplette Ökonomien prüfen können. Die Ergebnisse können in den Kontext eingeordnet und professionell ausgewertet, sodass eine detaillierte und umfangreiche Beurteilung des Sicherheitsniveaus möglich wird.
Diese Scans unterstützen unsere manuellen Tests bei der Entwicklung von TXTWerk.
Trivy und TXTWerk
Gerade bei TXTWerk als sehr komplexes Textanalyse-Framework aus verschiedenen Services sind Scans sehr aufwendig und schwer zu bewerten. Mit Trivy können wir diese Analysen schneller und besser durchführen, bzw. können wir die Schwachstellen und Sicherheitslücken besser schließen.
In der Praxis setzen wir Trivy bei unseren Qualitätsprozess und bei der Bereitstellung von TXTWerk ein, in dem unsere lokale Container-Images und Services gescant werden. Mit den kontinuierlichen Scans bei der Entwicklung können wir besser „in die Breite“ prüfen.
Trivy können wir mit TXTWerk gleich in der Docker Registry ausliefern, so dass unsere Kunden effizienter unsere Textanalyse Software in Ihrer Systemökonomie bewerten können.
Datum: 05.03.2021
Autor
Jan-Tilman Seipp
Als ML-Consultant und -Engineer erarbeitet Jan in enger Abstimmung mit unseren Kunden NLP- und Machine Learning Lösungen. Seit 2016 ist er im Bereich Data Science tätig und hat sowohl als wiss. Mitarbeiter an der TU Berlin als auch in Firmen wie Bosch oder Mayato an Analysen und Automatisierungsprozessen mitgewirkt.