
CWE-Bench
CWE-Bench ist eine Sammlung von Testaufgaben, mit der man prüft, wie gut ein KI-System Sicherheitslücken in echtem Programmcode findet. Die Aufgaben stammen aus real dokumentierten Schwachstellen, deren Fehlerart nach dem Katalog CWE eingeordnet ist.
CWE-Bench ist eine Prüfsammlung für Programme, die selbstständig Sicherheitslücken in Software suchen sollen. Eine Sicherheitslücke ist ein Fehler im Programmcode, über den Angreifer Daten stehlen oder ein System übernehmen können. Der Name verweist auf einen öffentlichen Katalog namens CWE, der solche Fehler nach Typen sortiert, etwa „Passwort im Code hinterlegt“ oder „Eingaben werden nicht geprüft“. Die Sammlung enthält Ausschnitte aus echter Software, bei denen bereits bekannt ist, wo genau der Fehler steckt und welchem Typ er entspricht. Ein Prüfling bekommt den Code vorgelegt und soll die Stelle finden. Danach vergleicht man seine Antwort mit der hinterlegten Lösung und erhält eine Note in Zahlen.
Warum die Fehlersuche eine Messlatte braucht
Anbieter von KI-Werkzeugen behaupten gern, ihr System finde Sicherheitslücken zuverlässig. Ohne einheitliche Testaufgaben lässt sich das nicht überprüfen. Jeder könnte sich Beispiele aussuchen, bei denen sein Produkt gut aussieht. Eine feste Sammlung wie CWE-Bench nimmt diese Freiheit weg, weil alle dieselben Aufgaben lösen müssen.
Der Aufwand lohnt sich, weil Sicherheitslücken teuer sind. Große Firmen beschäftigen ganze Teams, die nichts anderes tun als Code auf Schwachstellen zu prüfen. Wenn eine KI diese Arbeit teilweise übernimmt, spart das viel Zeit. Umgekehrt richtet ein unzuverlässiges Werkzeug Schaden an: Es meldet harmlose Stellen als gefährlich und übersieht die echten Probleme.
Wichtig ist der Unterschied zwischen einem Benchmark und einem Beweis. Ein gutes Ergebnis auf CWE-Bench zeigt, dass ein System mit diesen konkreten Aufgaben zurechtkommt. Es garantiert nicht, dass es in einem fremden Firmenprojekt genauso arbeitet. Fachleute lesen solche Zahlen deshalb als Hinweis, nicht als Siegel.
Wie eine Aufgabe aufgebaut ist
Die Grundlage bilden dokumentierte Schwachstellen aus quelloffener Software, deren Programmcode jeder einsehen darf. Für jede Schwachstelle gibt es zwei Fassungen des Projekts: eine vor der Reparatur und eine danach. Aus dem Vergleich beider Fassungen ergibt sich, welche Zeilen fehlerhaft waren. Diese Zeilen bilden die Musterlösung.
Beim Test bekommt das KI-System nur die fehlerhafte Fassung zu sehen. Es soll Datei und Zeile der Schwachstelle nennen und häufig auch den passenden CWE-Typ. Anschließend zählt man aus, wie viele echte Lücken gefunden wurden und wie viele Meldungen ins Leere gingen. Diese zweite Zahl heißt Fehlalarmrate und ist in der Praxis oft entscheidender als die Trefferquote.
Eine bekannte Ausbaustufe ist CWE-Bench-Java, die sich auf Projekte in der Programmiersprache Java beschränkt. Die Beschränkung hat einen praktischen Grund: Jedes Projekt muss sich automatisch übersetzen und ausführen lassen, damit der Test reproduzierbar bleibt. Genau das ist bei alten Projekten oft mühsam einzurichten. Deshalb umfassen solche Sammlungen meist nur einige Dutzend bis wenige hundert Fälle.
Wo die Zahlen auftauchen
Am häufigsten begegnet einem CWE-Bench in Ankündigungen zu neuen Sprachmodellen, also KI-Systemen, die Text und Programmcode verarbeiten. Anbieter wie Google, OpenAI oder Anthropic veröffentlichen zu jedem Modell eine Tabelle mit Testergebnissen. Neben Aufgaben zu Mathematik und Textverständnis steht dort zunehmend auch die Fähigkeit zur Fehlersuche im Code.
Für Anlegerinnen und Anleger sind diese Zahlen interessant, weil dahinter ein wachsender Markt steht. Firmen für Software-Sicherheit verkaufen Werkzeuge, die genau diese Prüfung anbieten. Wenn allgemeine KI-Modelle solche Aufgaben plötzlich gut lösen, verändert das die Wettbewerbslage in der Branche.
In der Praxis läuft die automatische Prüfung meist im Hintergrund, wenn Entwickler neuen Code einreichen. Das System hinterlässt dann einen Kommentar mit einem Verdacht. Ein Mensch entscheidet, ob die Meldung stimmt. CWE-Bench misst im Grunde, wie oft dieser Mensch der Maschine vertrauen kann.