
Offline jQuery CVE-2020-11023 Behebungskit für Legacy Spring/JSP – nur Node.js Built-ins (kein npm, kein Internet)
Ein Automatisierungswerkzeug zur Behebung von jQuery CVE-2020-11023, das im geschlossenen Netz allein mit Node.js läuft (für Legacy-Java/Spring/JSP-Projekte · kein npm install erforderlich · kein Internet erforderlich · 0 externe Abhängigkeiten)
Der gesamte Prozess, der beim Upgrade von jQuery auf 3.5+ in alten Legacy-Webanwendungen (Spring/JSP-Familie + jQuery 1.x) nötig ist, wird lokal abgewickelt: vollständige statische Analyse → sichere automatische Korrektur (TO-BE-Erzeugung) → Austausch gegen jQuery 3.5.1 + Migrate → Runtime Probe für die Oberfläche → mock Lab-Server → KI-Entscheidungspaket → Gate-Prüfung vor der Produktivübernahme → Bericht.
--target-TO-BE-Ordner erzeugt. Überprüfung und Übernahme erfolgen über den AS-IS/TO-BE-Split-Diff beim Dateiklick in report/index.html..bind→.on, .size()→.length, boolean .attr→.prop. XSS-Kandidaten wie .html(response) werden niemals automatisch korrigiert, sondern nur klassifiziert.patch-jquery jquery-3.5.1.min.js und jquery-migrate-3.6.0.min.js automatisch in den TO-BE-Baum legt, ist die Standardkombination ohne separate Dateivorbereitung ausführbar. Die unkomprimierte jquery-migrate-3.6.0.js ist für temporäres Tracing/Debugging ebenfalls enthalten.rules/*.json ausgelagert. So lässt sich jede Auslieferungsstelle durch Ändern nur des Rulepacks tunen, ohne den JS-Code zu ändern.@RequestMapping-Familien und XML-Konfigurationen gelesen, um ajaxToServerMap.csv, serverEndpoints.csv, hermes_server_evidence.json zu erzeugen und Mock-Routen mit Controller-Hinweisen zu versehen.id/class/name/Button-Text aus JSP/HTML werden mit JS-Selektoren abgeglichen, um in runtime_scenarios.html Verhaltensweisen für code-only/static im 1. Netz, Chrome smoke im 2. Netz und die finale Sample-Prüfung im Edge IE mode zu erzeugen.LOCAL_LAB_OK, CHROME_SMOKE_REQUIRED, IE_FINAL_SAMPLE_REQUIRED gemeldet sowie runtime_parity.html, runtimeParity.csv, ieModeRisk.csv erzeugt.runtime-lab/-Scaffold, mit dem sich auf Codex/lokalen PCs ein WAR aufsetzen und experimentieren lässt.voyager_packet.txt Zusammenfassung/Szenarien/Selektor/AJAX komprimiert, und in ai_verdict_packet.txt wird auf höchstens 1000 Zeichen die Beurteilungsfrage „menschliche Prüfung ausreichend / zusätzliche Runtime erforderlich / IEDriver-Prüfung erforderlich“ verdichtet.airgap_manifest.json/txt wird der Nachweis von Abhängigkeits- und Kommunikationsfreiheit festgehalten, und mit --mode release-zip wird ein ZIP für die öffentliche Verteilung erzeugt.실행0_웹대시보드.bat oder --mode ui werden im Browser Pfad-Browse, automatische Pfadberechnung, die Pipeline plan/autofix/patch/Hermes/report, Local Lab und das Öffnen bestehender Berichts-HTMLs abgewickelt.index.html sehen Sie zuerst die Diagramme nach Typ (event-shortcut-load usw.) und die Verteilung nach Verzeichnistiefe; beim Klick auf eine Datei werden die umgebenden AS-IS/TO-BE-Codes in einem Modal verglichen.--mode self-test erstellt ein temporäres Beispielprojekt und validiert den gesamten Zyklus. v5.6.10 umfasst die automatische Source-only-Einrichtung, die Web-Konsolen-Schrittnamen S1~S11, die Pfad-/Typ-Aggregation, die automatische Korrektur unter Beibehaltung der AS-IS/TO-BE-Zeilenumbrüche, die automatische Platzierung des gebündelten jQuery, die Bereinigung alter Core-Dateien, Laufzeitszenarien auf Basis von UI-Elementen, die Runtime-Parität von code-only/Chrome-Smoke/IE-Final-Sample sowie die Erzeugung von Copy-&-Paste-Paketen für Voyager-/KI-Entscheidungen.node run-jquery35-v5.js --mode self-test
node run-jquery35-v5.js --mode ui --port 18088
node run-jquery35-v5.js --source "C:\work\legacy-app" --target "C:\work\legacy-app_jquery35_tobe" --report "C:\work\jquery35_report_v5" --mode plan
Das Browser-Konsolenfenster öffnet sich unter http://127.0.0.1:18088/. Wenn Sie dort nur die Quelle durchsuchen oder eingeben, werden die Standardpfade für TO-BE/report/profile/server-source/verify-source automatisch berechnet, und Sie können die einzelnen Schritte S1~S11 oder Pipeline ausführen.
Wenn Ihnen die Befehlszeilenmethode lieber ist, öffnen Sie das Dashboard report\index.html, um den Status zu prüfen, und folgen Sie der Reihenfolge in README_FIRST.txt (Analyse → automatische Korrektur → jQuery-Ersetzung → Probe → Lab → verify-clean).
Windows-Benutzer müssen nur den Pfad am Anfang der mitgelieferten Dateien 실행0_웹대시보드.bat bis 실행9_배포ZIP생성.bat anpassen und sie dann ausführen.
Für die öffentliche Verteilung bzw. die Anwendung an anderen Standorten kopieren Sie project-profile.public.sample.json und erstellen daraus project-profile.json; bei Bedarf ändern Sie nur rules/public-defaults.json, rules/vendor-compat.json und rules/mock-defaults.json.
node run-jquery35-v5.js --report ".\release" --mode release-zip