Blog

Coder Conquer Security: Share & Learn-Serie — Einsatz von Komponenten mit bekannten Sicherheitslücken

April 25, 2019
Jaap Karan Singh

Was ist die eine Sache, die alle Anwendungen haben? Komponenten, auch bekannt als Abhängigkeiten oder Bibliotheken. Es gibt sehr wenig Code auf der Welt, der nicht zu einem bestimmten Zeitpunkt von anderem Code abhängt. Sie beginnen sogar mit einem Berg von Abhängigkeiten ab dem Zeitpunkt, an dem Sie die Anwendung erstellen!

Da alle Anwendungen Komponenten verwenden, von denen Sie die meisten nicht geschrieben haben, können Sicherheitslücken in den von Ihnen verwendeten Komponenten zu Verbindlichkeiten werden. Lassen Sie uns besprechen, was es bedeutet, Komponenten mit bekannten Sicherheitslücken zu verwenden, wie gefährlich sie ist und wie sie behoben werden können.

Verstehen Sie die Verwendung von Komponenten mit bekannten Sicherheitslücken

Jede komplexe Software weist Sicherheitslücken auf. Das liegt in der Natur der Bestie. Ihre Komponenten werden also niemals zu 100% sicher sein. Wissen Sie jedoch davon, wenn Sicherheitslücken in Komponenten gefunden werden? Bist du darauf vorbereitet?

Probleme treten am häufigsten auf, wenn Komponenten nach ihrer Nutzungsdauer verwendet werden oder wenn Sicherheitslücken gefunden wurden. Die meisten Komponenten und Bibliotheken veröffentlichen Patches für Sicherheitslücken zum oder vor der Bekanntgabe der Sicherheitslücke. Wenn Sicherheitslücken in Komponenten entdeckt und gemeldet werden, ist es daher von größter Bedeutung, die Komponenten so schnell wie möglich zu aktualisieren. Lassen Sie anfällige Software nicht in der Produktion.

Komponenten können aus verschiedenen Quellen stammen. Manchmal kaufen Sie Produkte von Drittanbietern, die sich direkt in Ihren benutzerdefinierten Code integrieren lassen. Diese Komponenten werden Teil Ihres Codes und funktionieren mit derselben Rechteebene. Eine weitere Quelle sind Open-Source-Projekte, die auf Websites wie GitHub gehostet werden. Open Source kann gefährlich sein, da nicht alle Open-Source-Bibliotheken sorgfältig auf Sicherheitslücken überprüft oder geprüft wurden.

Angreifer nutzen Informationen zu Sicherheitslücken in Komponenten zu ihrem Vorteil. Da die Sicherheitslücken öffentlich bekannt gegeben werden, wissen die Angreifer genau wie Sie von den Sicherheitslücken. Angreifer verfügen auch über Techniken, mit denen sie herausfinden können, welche Komponenten Sie verwenden. Sobald sie diese Informationen kennen, wissen sie, wie sie Ihre Anwendung angreifen können, wenn sie nicht gepatcht ist.

Erfahren Sie, warum anfällige Komponenten gefährlich sind

Wenn Sie nach Beweisen dafür suchen, wie gefährlich die Verwendung von Komponenten mit bekannten Sicherheitslücken ist, sind Sie bei der Equifax-Datenschutzverletzung von 2017 genau richtig.

Im Juli 2017 Equifax, ein Kreditbüro der Vereinigten Staaten, entdeckte eine massive Datenschutzverletzung, bei der die personenbezogenen Daten von über 147 Millionen Menschen durchsickerten. Das Ausmaß und die Auswirkungen dieser Datenschutzverletzung sind beispiellos. Vor Kurzem wurden Neuigkeiten veröffentlicht über Die laxen Sicherheitspraktiken von Equifax.

Eine dieser laxen Praktiken war das Patch-Management. Equifax hatte keine guten Patch-Management-Praktiken, was bedeutete, dass ihre Komponenten eine ganze Weile ohne Patches auskamen. Dies war die direkte Ursache des Verstoßes.

Die Website von Equifax verwendete die Apache Struts Webframework. Einige Monate bevor sich die Angreifer in das Netzwerk hackten, wurde eine Sicherheitslücke im Struts-Framework, Apache Struts CVE-2017-5638, gefunden. Equifax hat die Sicherheitslücke jedoch nicht gepatcht. Angreifer nutzten diese Sicherheitslücke, um sich Zugriff auf das Netzwerk von Equifax zu verschaffen. Von dort aus erhielten sie Zugriff auf eine Fundgrube persönlicher Informationen.

Viele Websites basieren auf Web-Frameworks, die nicht vom Unternehmen geschrieben wurden. Dies ist gängige Praxis, da es ein zu großes Unterfangen wäre, alle erforderlichen Funktionen von Grund auf neu zu integrieren. Eine starke Abhängigkeit von einem Framework kann jedoch zu Sicherheitslücken führen. Werde nicht der nächste Equifax.

So schützen Sie sich vor anfälligen Komponenten

Es gibt keine Wunderwaffe zum Schutz vor der Verwendung anfälliger Komponenten. Es gibt jedoch Richtlinien und Kontrollen, mit denen Sie das Risiko mindern können, dass anfällige Komponenten Ihre Systeme gefährden.

Sie müssen wissen, welche Komponenten und welche Version jeder Komponente Sie verwenden, um Ihre Anwendungen zu erstellen. Tools für das Abhängigkeitsmanagement wie Die Abhängigkeitsprüfung von OWASP hilft Ihnen dabei, die von Ihnen verwendeten Abhängigkeiten in den Griff zu bekommen. Dependency Check teilt Ihnen auch mit, ob eine dieser Komponenten eine öffentlich gemeldete Sicherheitslücke aufweist.

Eine Patch-Management-Methode ist ebenfalls unerlässlich. Wenn Sicherheitslücken entdeckt werden, sollten Sie über ein System verfügen, mit dem die Patches problemlos heruntergeladen, getestet und für die Produktion freigegeben werden können. Wenn Sie Ihre Software auf dem neuesten Stand halten, wird verhindert, dass monatelange Sicherheitslücken von Angreifern ausgenutzt werden.

Und schließlich sollten Sie über Richtlinien verfügen, die die Verwendung von Open-Source-Komponenten und Komponenten von Drittanbietern regeln. Entwickler mögen keine Bürokratie, und das ist verständlich. Es muss jedoch ein Überprüfungsverfahren für Code geben, der nicht von Ihrer Organisation geschrieben wurde. Es muss nicht schwergewichtig sein, ist aber ein Muss, um zu verhindern, dass unbekannte Komponenten verwendet werden. Zumindest muss ein Inventar der verwendeten Komponenten auf dem neuesten Stand gehalten werden.

Lassen Sie sich nicht vom Drittanbieter-Bug beißen

Komponenten werden Sicherheitslücken aufweisen. Ihre Geschäftsanwendungen werden Komponenten verwenden, unabhängig davon, ob sie von einem Anbieter oder aus einer Open-Source-Bibliothek stammen. Das bedeutet nicht, dass Ihr Unternehmen anfällig für Angriffe sein muss.

Obwohl die Angreifer gleichzeitig mit Ihnen wissen, welche Sicherheitslücken bestehen, werden Patches in der Regel gleichzeitig mit den öffentlichen Ankündigungen zur Verfügung gestellt. Informieren Sie sich also unbedingt darüber, was Ihre Anwendung verwendet. Wissen Sie, was anfällig ist. Sorgen Sie dafür, dass Ihre Komponenten gepatcht sind!

Bereit, einige anfällige Komponenten zu entdecken (und zu besiegen)? Begib dich in die Arena, um an Kämpfen teilzunehmen: [Fangen Sie hier an]

Slogan

Govern AI-driven development before it ships

Measure AI-assisted risk, enforce secure coding policy at commit, and accelerate secure delivery across your SDLC.

book a demo
Slogan

Explore more blogs

Lorem ipsum diam quis enim lobortis scelerisque fermentum dui faucibus in ornare quam viverra orci sagittis eu volutpat odio facilisis.

browse all
Case Study
Filter Label
This is some text inside of a div block.

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.

Learn More
Case Study
Filter Label
This is some text inside of a div block.

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

Learn More
Case Study
Filter Label
This is some text inside of a div block.

One Culture of Security: How Sage built their security champions program with agile secure code learning

Discover how Sage enhanced security with a flexible, relationship-focused approach, creating 200+ security champions and achieving measurable risk reduction.

Learn More
Blog
Filter Label
This is some text inside of a div block.

Enabler 7: Developer Recognition

Recognition fuels participation. Enabler 7 celebrates developer achievement loudly, with rewards and exclusive swag that mark real, earned secure coding wins.

Learn More
Blog
Filter Label
This is some text inside of a div block.

Named in the Gartner® Hype Cycle™ for Application Security 2026

Secure Code Warrior is named in the Gartner® Hype Cycle™ for Application Security, 2026 for Agentic Coding Security and Secure Coding Training. Here's why.

Learn More
Blog
Filter Label
This is some text inside of a div block.

Are you a CISO or Engineering Leader worried about the Security and Cost of LLM code generation?

Review the SCW AI Trust Index, our proprietary LLM benchmarking data, before going all-in on an AI model.

Learn More

Secure AI-driven development before it ships

See developer risk, enforce policy, and prevent vulnerabilities across your software development lifecycle.

Demo buchen
No items found.