Code Intelligence bringt frühe Version von Jazzer.js Open-Source-Tool fürs JavaScript-Fuzzing

Von Stephan Augsten

Anbieter zum Thema

Der Code-Testing-Spezialist Code Intelligence hat mit Jazzer.js einen prozessintegrierten Fuzzer für die Node.js-Plattform und JavaScript-Projekte bereitgestellt. Er nutzt libFuzzer als Industriestandard-Engine und basiert auf seinem JVM-orientiertem Namensvetter Jazzer.

Überblick über die beim Jazzer.js-Fuzzing beteiligten Komponenten und ihr Zusammenspiel.
Überblick über die beim Jazzer.js-Fuzzing beteiligten Komponenten und ihr Zusammenspiel.
(Bild: Code Intelligence)

Überblick über die beim Jazzer.js-Fuzzing beteiligten Komponenten und ihr Zusammenspiel.
Überblick über die beim Jazzer.js-Fuzzing beteiligten Komponenten und ihr Zusammenspiel.
(Bild: Code Intelligence)

Jazzer.js befindet sich laut Code Intelligence noch in einem frühen Stadium, bietet aber trotzdem umfassende Fuzzing-Funktionen für JavaScript- und Node.js-Projekte basierend auf libFuzzer. Dieser wurde von Google entwickelt und integriert abdeckungsgesteuerte Fuzzer-Logik eng mit Code Sanitizern. Er stellt die grundlegende Fuzzing-Logik, während Jazzer.js die Lücke zwischen seinen C/C++-APIs und der JavaScript-Laufzeit schließt.

Die libFuzzer-Integration wird durch ein natives Node.js-Add-on realisiert, die Fuzzing-Logik wird dabei im Hintergrund ausgeführt und greift nicht in das normale JavaScript-Ausführungsmodell ein. Während des Fuzzings verwendet Jazzer.js den geladenen Code, um ihm Feedback-Mechanismen zur Abdeckung hinzuzufügen. Dadurch kann der Fuzzer erkennen, wenn neue Codepfade erreicht werden und in diese Richtung weitergehen.

Jazzer.js soll sich nahtlos in den JavaScript-Entwicklungsworkflow integrieren, ein How-To zum JavaScript-Fuzzing findet sich im Blog des Anbieters. Einige der geplanten Features von Jazzer.js sind ein dediziertes Hooking-Framework, um benutzerdefinierte Fehlerdetektoren zu ermöglichen, wie die, die bereits sehr erfolgreich von Jazzer verwendet werden, z.B. SQL Injections, Remote Code Executions (RCEs) und XSS. Außerdem wird Jazzer.js eine bessere Integration des Test-Frameworks erhalten, um Fuzzing so einfach wie Unit-Tests zu machen.

(ID:48607597)

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zur IT-Sicherheit

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung