Using Components with Known Vulnerabilities (OWASP Top 10)

Using Components with Known Vulnerabilities (OWASP Top 10)

Copyright © Shutterstock/metamorworks

Was ist Using Components with Known Vulnerabilities?

Using Components with Known Vulnerabilities (“Nutzung von Komponenten mit bekannten Schwachstellen”) ist eine regelmäßig in der OWASP Top 10 gelistete typische Sicherheitsschwachstelle von Webanwendungen. Die OWASP Top 10 ist eine industrieweit anerkannte Auflistung derartiger am häufigsten festgestellter Schwachstellen.

Gefährdung durch anfällige Softwarekomponenten

“Using Components with Known Vulnerabilities” bezieht sich auf Sicherheitsprobleme mit Softwarekomponenten, welche eine Webanwendung benötigt. In der Entwicklung von Webanwendungen spielen solche Komponenten wie Bibliotheken und Frameworks eine wichtige Rolle. Entwickler nutzen deren Funktionalität und vermeiden damit redundante Arbeit. Angreifer können nach Schwachstellen in diesen Komponenten suchen. Wenn eine Komponente mit Sicherheitsschwachstellen mit denselben Rechten wie die Anwendung ausgeführt wird, kann die anfällige Komponente für Angriffe ausgenutzt werden. Die Abwehrmechanismen von Anwendungen und APIs, die solche Komponenten nutzen, können dadurch unterlaufen werden. Die Folgen von “Using Components with Known Vulnerabilities” können von schwerwiegendem Datenverlust bis hin zur Serverübernahme reichen. Solche Schwachstellen können auch absichtlich als Backdoor vorgesehen sein.

Beispiele der Ausnutzung bekannter Schwachstellen durch Hacker

Die Sicherheitsanfälligkeit der Spring Expression Language (SpEL) könnte ausgenutzt werden, um per Remote-Code-Ausführung fremde Server zu übernehmen. In dem Open-Source-Webservice-Framework Apache CXF konnte die Authentifizierung übergangen werden, indem bei Anfragen auf ein Identitäts-Token verzichtet wurde. Dadurch bestand voller Zugriff auf jeden Webservice des Frameworks.

Vermeidung

Kritisch ist bei der Anwendungsentwicklung, wenn nicht die Versionsnummern aller Komponenten bekannt sind und auf ihre Sicherheit hin verifiziert wurden. Insbesondere nicht mehr unterstützte und alte Versionen sind eine Gefahr. Das umfasst das Betriebssystem, den Server, Datenbankverwaltungssysteme, APIs, Laufzeitumgebungen, Frameworks und Bibliotheken. Wichtig ist daher das beständige Updaten bestehender Komponenten.

Zur Vermeidung von “Using Components with Known Vulnerabilities” sollten daher Versionsupdates sowohl Client– als auch Server-seitiger Komponenten ständig erfasst werden und zum Einsatz kommen. In der Regel korrigieren Komponentenanbieter bekannte Sicherheitsanfälligkeiten in neuen Versionen, anstatt Patches für ältere Versionen der Komponente zu veröffentlichen. Das bedeutet, dass ein Upgrade auf neue Versionen aller Komponenten so schnell wie möglich der beste Weg ist, um diese bekannten Schwachstellen zu überwinden. Release-Datenbanken, Projektnewsletter und Mailinglisten sollten genutzt werden, um sich auf dem Laufenden zu halten. Komponenten sollten nur von offiziellen Quellen über sichere Links bezogen werden, am besten als signierte Packages. Damit wird das Risiko modifizierter, bösartiger Komponenten reduziert. Sowohl bei der Anwendungsentwicklung als auch der späteren Pflege sollte ein Patch Management Prozess etabliert werden, der ungenutzte Abhängigkeiten und Features entfernt.

Tipp

Wenn Sie noch Fragen bezüglich eines Online Marketing Themas haben, dann können Sie gerne unseren Glossar besuchen und sich über das Thema informieren, wo Sie noch speziell Fragen haben.


Sie haben noch Fragen?

Kontaktieren Sie uns

Kostenloser SEO-Check der OSG


Weitere Inhalte