Auch genannt: Schwachstelle, Vulnerability.
Eine Sicherheitslücke ist ein Fehler oder eine Schwäche in Software, Hardware oder der Konfiguration eines Systems, die es ermöglicht, Schutzmechanismen zu umgehen, unautorisierten Zugriff zu erlangen oder den normalen Betrieb zu stören.
Kaum ein IT-System ist vollständig fehlerfrei. Programmierfehler, veraltete Software oder unzureichend abgesicherte Einstellungen können ungewollte Lücken öffnen, durch die Angreifende in ein System eindringen oder es manipulieren können. Eine Sicherheitslücke ist damit nicht der Angriff selbst, sondern die Schwachstelle, die einen Angriff erst möglich macht.
Sicherheitslücken entstehen etwa durch Programmierfehler, die Speicherbereiche falsch behandeln, durch fehlerhafte Rechtevergaben, die mehr Zugriff gewähren als nötig, oder durch veraltete Software, für die bereits bekannte Angriffswege existieren. Öffentlich bekannte Schwachstellen werden häufig über eindeutige Kennungen wie CVE-Nummern erfasst und mit einem Schweregrad versehen, damit Betreiberinnen und Betreiber von Systemen priorisieren können, welche Lücken zuerst geschlossen werden müssen. Hersteller veröffentlichen zur Behebung in der Regel Sicherheitsupdates, sogenannte Patches.
In einer weit verbreiteten Softwarebibliothek wird ein Fehler entdeckt, durch den Angreifende beliebigen Code auf fremden Servern ausführen können, ohne sich zuvor anmelden zu müssen. Der Hersteller veröffentlicht umgehend ein Update; Organisationen, die dieses Update verzögert einspielen, bleiben in der Zwischenzeit verwundbar.
Der Begriff dient dazu, Risiken in IT-Systemen systematisch zu erfassen, zu bewerten und zu priorisieren. Darauf aufbauend lassen sich Patch-Management-Prozesse, Penetrationstests und Bug-Bounty-Programme organisieren, mit denen Organisationen gezielt nach Schwachstellen suchen, bevor Angreifende sie finden.
Eine Sicherheitslücke führt nicht automatisch zu einem erfolgreichen Angriff; ob sie tatsächlich ausgenutzt wird, hängt von zusätzlichen Faktoren wie Erreichbarkeit des Systems und vorhandenen Schutzmaßnahmen ab. Häufig wird zudem angenommen, Software ließe sich vollständig lückenfrei entwickeln; tatsächlich zielt professionelles Sicherheitsmanagement darauf ab, Lücken schnell zu erkennen und zu schließen, statt ihr Entstehen vollständig auszuschließen.
Nicht zu verwechseln mit Malware: Malware ist die Schadsoftware, die eine Sicherheitslücke ausnutzt, während die Lücke selbst nur die Angriffsmöglichkeit darstellt. Ebenfalls abzugrenzen ist Penetrationstest: Ein Penetrationstest ist die gezielte, beauftragte Suche nach Sicherheitslücken, nicht die Lücke an sich.