CveTest
Testfall zur Reproduktion des Node.JS V0.10.31 v8 backport CVE-2013-6668 Absturzes.
Der Test ruft eine SQL-Stored-Procedure ("GetSomething") auf, um Daten aus einer Tabelle ("Table1") in der Datenbank "SQLDB" abzurufen. Der Absturz tritt auf, wenn mehr als 52 Zeilen zurückgegeben werden und nach mehrfachen Aufrufen derselben Abfrage.
Umgebung
- Windows 7 64-Bit
- MS SQL 2005
- Node.JS V0.10.31 x64
- tedious node module V1.4.3 oder früher
Tests mit verschiedenen Varianten von Node
- Release mode node: Skript beendet sich unerwartet ohne explizite Fehlerausgabe.
- Debug mode node: Assertion und Stacktrace werden ausgegeben.
- Debug mode Node mit temporärem Patch, vorgeschlagen in Node.JS Issue #8208: stürzt wie oben ab.
- Release-Modus ist in Ordnung.
- Die aufgetretene Assertion befindet sich in HInstruction::Verify(), die nur im DEBUG-Build verfügbar ist. Daher scheinen die alternativen Release-Build-Codes nicht vom CVE-Patch betroffen zu sein.
- Node V0.10.31 mit deps/v8 von V0.10.30: Kein Absturz, funktioniert einwandfrei.
Somit scheint der v8-Backport-Patch CVE-2013-6668 das Problem zu verursachen.
Möglicherweise verwandt