Blog

Coders Conquer Security: Share & Learn-Reihe – Umgang mit Komponenten mit bekannten Sicherheitslücken

April 25, 2019
Jaap Karan Singh

Was haben alle Anwendungen gemeinsam? Komponenten, auch bekannt als Abhängigkeiten oder Bibliotheken. Es gibt weltweit kaum Code, der nicht irgendwann von anderem Code abhängt. Schon bei der Erstellung einer Anwendung beginnt man mit einer ganzen Reihe von Abhängigkeiten!

Da alle Anwendungen Komponenten verwenden, von denen Sie die meisten nicht selbst geschrieben haben, können Schwachstellen in diesen Komponenten zu einem Sicherheitsrisiko werden. Lassen Sie uns erörtern, was die Verwendung von Komponenten mit bekannten Schwachstellen bedeutet, wie gefährlich dies ist und wie man das Problem löst.

Verständnis der Verwendung von Komponenten mit bekannten Schwachstellen

Jede komplexe Software weist Schwachstellen auf. Das liegt in der Natur der Sache. Ihre Komponenten werden also nie zu 100 % sicher sein. Aber wissen Sie, wenn Schwachstellen in Ihren Komponenten gefunden werden? Sind Sie darauf vorbereitet?

Probleme entstehen meist dann, wenn Komponenten über ihre Lebensdauer hinaus verwendet werden oder nachdem Schwachstellen bekannt geworden sind. Die meisten Komponenten und Bibliotheken veröffentlichen Patches für Sicherheitslücken zeitgleich mit oder sogar vor der Bekanntgabe der Schwachstelle. Wenn also Schwachstellen in Komponenten entdeckt und veröffentlicht werden, ist es von größter Bedeutung, diese so schnell wie möglich zu aktualisieren. Lassen Sie keine anfällige Software in der Produktion.

Komponenten können aus verschiedenen Quellen stammen. Manchmal kaufen Sie Produkte von Drittanbietern, die direkt in Ihren eigenen Code integriert werden. Diese Komponenten werden Teil Ihres Codes und operieren mit derselben Berechtigungsstufe. Eine weitere Quelle sind Open-Source-Projekte, die auf Plattformen wie GitHub gehostet werden. Open Source kann riskant sein, da nicht alle Bibliotheken sorgfältig auf Schwachstellen geprüft oder auditiert wurden.

Angreifer nutzen Informationen über Komponentenschwachstellen zu ihrem Vorteil. Da Schwachstellen öffentlich bekannt gegeben werden, erfahren Angreifer zur gleichen Zeit davon wie Sie. Zudem verfügen Angreifer über Techniken, um herauszufinden, welche Komponenten Sie verwenden. Sobald sie diese Informationen haben, wissen sie, wie sie Ihre Anwendung angreifen können, falls diese nicht gepatcht ist.

Warum anfällige Komponenten gefährlich sind

Wenn Sie nach einem Beweis dafür suchen, wie gefährlich die Verwendung von Komponenten mit bekannten Schwachstellen ist, müssen Sie sich nur den Equifax-Datendiebstahl von 2017 ansehen.

Im Juli 2017 entdeckte Equifax, eine US-amerikanische Kreditauskunftei, einen massiven Datendiebstahl, bei dem die personenbezogenen Daten von über 147 Millionen Menschen entwendet wurden. Das Ausmaß und die Auswirkungen dieses Vorfalls sind beispiellos. Kürzlich wurden Berichte über die nachlässigen Sicherheitspraktiken von Equifax bekannt.

Eine dieser nachlässigen Praktiken war das Patch-Management. Equifax verfügte über keine guten Patch-Management-Prozesse, was dazu führte, dass ihre Komponenten über längere Zeit nicht aktualisiert wurden. Dies war die direkte Ursache für den Datendiebstahl.

Die Website von Equifax nutzte das Web-Framework Apache Struts. Mehrere Monate bevor die Angreifer in das Netzwerk eindrangen, wurde eine Schwachstelle im Struts-Framework entdeckt: Apache Struts CVE-2017-5638. Equifax hat diese Schwachstelle jedoch nicht gepatcht. Angreifer nutzten diese Lücke, um sich Zugang zum Netzwerk von Equifax zu verschaffen. Von dort aus gelangten sie an eine wahre Goldgrube an persönlichen Daten.

Viele Websites basieren auf Web-Frameworks, die nicht vom Unternehmen selbst entwickelt wurden. Dies ist gängige Praxis, da die Eigenentwicklung aller notwendigen Funktionen ein zu großer Aufwand wäre. Eine starke Abhängigkeit von einem Framework kann Sie jedoch anfällig für Sicherheitslücken machen. Werden Sie nicht zum nächsten Equifax.

Wie man sich gegen anfällige Komponenten schützt

Es gibt kein Allheilmittel gegen die Verwendung anfälliger Komponenten. Es gibt jedoch Richtlinien und Kontrollen, mit denen Sie das Risiko minimieren können, dass anfällige Komponenten zur Kompromittierung Ihrer Systeme genutzt werden.

Sie müssen wissen, welche Komponenten und welche Versionen der jeweiligen Komponenten Sie für den Aufbau Ihrer Anwendungen verwenden. Tools für das Abhängigkeitsmanagement wie OWASP Dependency-Check helfen Ihnen dabei, den Überblick über Ihre verwendeten Abhängigkeiten zu behalten. Dependency-Check zeigt Ihnen auch an, ob eine dieser Komponenten eine öffentlich bekannte Schwachstelle aufweist.

Eine Methodik für das Patch-Management ist ebenfalls unerlässlich. Wenn Schwachstellen entdeckt werden, sollten Sie über ein System verfügen, mit dem Patches reibungslos heruntergeladen, getestet und in der Produktion bereitgestellt werden können. Wenn Sie Ihre Software stets auf dem neuesten Stand halten, verhindern Sie, dass Angreifer monatelang bekannte Schwachstellen ausnutzen können.

Implementieren Sie schließlich Richtlinien für die Nutzung von Open-Source- und Drittanbieter-Komponenten. Entwickler mögen keinen bürokratischen Aufwand, was verständlich ist. Dennoch muss es einen Prüfungsprozess für Code geben, der nicht aus Ihrem Unternehmen stammt. Dieser muss nicht kompliziert sein, ist aber unerlässlich, um die Verwendung unbekannter Komponenten zu verhindern. Zumindest sollte ein aktuelles Verzeichnis aller verwendeten Komponenten geführt werden.

Schützen Sie sich vor Risiken durch Drittanbieter-Komponenten

Komponenten weisen Sicherheitslücken auf. Ihre Geschäftsanwendungen nutzen Komponenten, sei es von einem Anbieter oder aus einer Open-Source-Bibliothek. Das bedeutet jedoch nicht, dass Ihr Unternehmen anfällig für Angriffe sein muss.

Auch wenn Angreifer gleichzeitig mit Ihnen von Sicherheitslücken erfahren, werden Patches meist zeitgleich mit der öffentlichen Bekanntmachung bereitgestellt. Informieren Sie sich daher genau darüber, was Ihre Anwendung verwendet. Wissen Sie, welche Komponenten anfällig sind. Halten Sie Ihre Komponenten stets auf dem neuesten Stand!

Bereit, anfällige Komponenten zu entdecken (und zu eliminieren)? Begeben Sie sich in die Arena und nehmen Sie den Kampf auf: [Hier starten]

Slogan

Kontrollieren Sie KI-gestützte Entwicklung, bevor sie in Produktion geht

Bewerten Sie KI-gestützte Risiken, setzen Sie Richtlinien für sicheren Code direkt beim Commit durch und beschleunigen Sie die sichere Bereitstellung über Ihren gesamten SDLC hinweg.

Demo buchen
Ressourcenbibliothek

Weitere Blogs entdecken

Erhalten Sie Zugang zu Experteninhalten über sichere Programmierung, KI-Governance und Software-Risikomanagement.

alle anzeigen
Fallstudie
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Supercharged Security Awareness: How Tournaments are Inspiring Developers at Erste Group

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

Mehr erfahren
Fallstudie
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Security as culture: How Blue Prism cultivates world-class secure developers

Learn how Blue Prism, the global leader in intelligent automation for the enterprise, used Secure Code Warrior's agile learning platform to create a security-first culture with their developers, achieve their business goals, and ship secure code at speed

Mehr erfahren
Fallstudie
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Eine Sicherheitskultur: Wie Sage sein Champions-Programm aufgebaut hat

Erfahren Sie, wie Sage die Sicherheit durch einen flexiblen, beziehungsorientierten Ansatz gestärkt, über 200 Security Champions ausgebildet und eine messbare Risikoreduzierung erzielt hat.

Mehr erfahren
Blog
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Cybersecurity Awareness Month 2026: Das Verständnis von KI-Sicherheit ist entscheidend für die Unternehmensverteidigung

Wir haben einen Punkt erreicht, an dem die meisten führenden KI-Unternehmen öffentlich eine weltweite Verlangsamung der KI-Entwicklung gefordert haben, damit die Sicherheitsvorkehrungen Schritt halten können. Doch die Wahrheit ist: Ernsthafte Sicherheitsprobleme sind bereits Realität geworden. Dies bringt unzählige Sicherheitsverantwortliche und Führungsteams in eine dringliche Lage, da die finanziellen Kosten und Risiken durch die Implementierung von KI stetig steigen.

Mehr erfahren
Blog
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Enabler 8: Branding für Ihr Programm

Ein Programm für sicheres Programmieren braucht mehr als nur großartige Inhalte, um erfolgreich zu sein. Enabler 8 zeigt, wie Branding die Teilnahme zu einem begehrten, statusorientierten Erlebnis macht.

Mehr erfahren
Blog
Filterbezeichnung
Dies ist ein Text innerhalb eines Div-Blocks.

Jeder Mitarbeiter steht jetzt an vorderster Front der KI-Cybersicherheit

Die Unternehmenslandschaft wandelt sich mit einer Geschwindigkeit, die kaum jemand vorhergesehen hat, bis es zu spät war. Wir haben offiziell die Schwelle von handgeschriebenem Code und einfacher Copilot-Unterstützung hin zur Ära des Agentic Development Lifecycle (ADLC) überschritten. Während autonome KI-Agenten eine beispiellose Effizienz in vielen Bereichen versprechen, bringen sie auch eine völlig neue Klasse von Sicherheits- und Regulierungsrisiken mit sich.

Mehr erfahren

Sichere KI-gestützte Entwicklung vor dem Release

Erkennen Sie Entwicklerrisiken, setzen Sie Richtlinien durch und verhindern Sie Schwachstellen über den gesamten Softwareentwicklungszyklus hinweg.

Demo buchen
Keine Elemente gefunden.