Trotz der weit verbreiteten Verwendung von JavaScript bleibt das Schreiben von sicherem Code eine Herausforderung, was zu Schwachstellen in Webanwendungen führt.
Experimente mit realen Schwachstellen zeigen, dass LLMs vielversprechend für die automatisierte Reparatur von JavaScript-Programmen sind. Um korrekte Korrekturen zu erreichen, ist jedoch häufig die Bereitstellung einer angemessenen Menge an Kontextinformationen in der Eingabeaufforderung an das LLM erforderlich.
Die folgenden Cybersicherheitsforscher der Simon Fraser University haben kürzlich enthüllt, wie chatgpt und Bard die JavaScript-Schwachstellen beheben:–
- Tan Khang Le
- Saba Alimadadi
- Steven Y.Ko
Kostenloses Webinar: Schwachstellen und Zero-Day-Bedrohungen mindern
Alert Fatigue hilft niemandem, da Sicherheitsteams Hunderte von Schwachstellen aussortieren müssen. :
- Das Problem der Verletzlichkeitsmüdigkeit heute
- Unterschied zwischen CVSS-spezifischer Schwachstelle und risikobasierter Schwachstelle
- Bewertung von Schwachstellen basierend auf den geschäftlichen Auswirkungen/Risiken
- Automatisierung zur Reduzierung der Alarmmüdigkeit und zur deutlichen Verbesserung der Sicherheitslage
AcuRisQ, das Ihnen hilft, Risiken genau zu quantifizieren:
JavaScript-Fehler beheben
Trotz der Verwendung von Techniken wie statischer Analyse und Fuzzing ist es aufgrund der dynamischen, asynchronen Natur von JavaScript manchmal immer noch schwierig, Programme zu verstehen und zu analysieren.
Während des Entwicklungsprozesses schaffen viele Programmierer Schwachstellen, ohne sie überhaupt zu kennen, während sie versuchen, ihre Programme sicher zu machen.
Darüber hinaus haben große Sprachmodelle (BLMs) bei Verwendung mit den richtigen Tools das Potenzial, die Entwicklereffizienz zu verbessern und gleichzeitig neue Sicherheitslücken zu reduzieren.
Es gibt jedoch nur sehr wenige Untersuchungen darüber, wie effektiv solche LLMs im Hinblick auf die Identifizierung und Behebung von Schwachstellen in JavaScript im Vergleich zu den Sprachen C/C++ und Verilog sind.
Aufgrund zunehmender Systemschwachstellen hat sich die automatisierte Programmreparatur zu einem Forschungsgebiet entwickelt, das sich auf Techniken zur Generierung von Quellcode-Patches konzentriert.
Zu den klassischen Ansätzen gehören die Verwendung genetischer Programmierung zur Suche nach Programmvarianten, die Fehler beheben, ohne die Funktionalität zu verändern, und der Einsatz semantischer Analyse zur automatischen Patch-Erstellung.
Der Aufstieg großer Sprachmodelle (LLMs) hat zu großen Fortschritten bei der automatisierten Programmreparatur geführt.
Die Genauigkeit von LLMs bei der Identifizierung und Behebung von Sicherheitslücken in JavaScript wird von Forschern untersucht, die ihre Reaktionen auf die Behebung einer bestimmten „Out-of-bound Write“-Schwachstelle in einem bestimmten Code untersuchen.
Obwohl es möglicherweise viele verschiedene Möglichkeiten gibt, dieses Problem zu beheben, sind wir daran interessiert, herauszufinden, ob LLMs einen funktionierenden, sicheren Patch bereitstellen können, anstatt alle möglichen Lösungen erschöpfend zu prüfen.
Durch diese Bewertung werden die Fähigkeiten von LLM zur automatisierten JavaScript-Fehlerbehebung offenbart.
Um die Auswirkungen kontextbezogener Informationen auf die Fähigkeit von LLMs, Reparaturen zu generieren, zu untersuchen, wurden drei Eingabeaufforderungsvorlagen mit unterschiedlichen Kontextebenen entworfen:–
- Kontextfrei, nur mit Reparaturanweisungen und anfälligem Code
- Kontextsensitives Hinzufügen des erwarteten Schwachstellentyps
- Kontextreich, einschließlich ausführlicher Kommentare, die die Schwachstelle und mögliche Exploits erläutern
Hier entschieden sich Cybersicherheitsanalysten für 20 beliebte JavaScript-Schwachstellen, die lokalisiert wurden, und drei Vorlagen mit unterschiedlichen Kontextebenen generierten 60 Reparaturaufforderungen.
Die Auswertungen der Leistung von ChatGPT und Bard bei der automatischen Behebung dieser fehlerhaften Codes zeigten, dass ChatGPT eine höhere Genauigkeitsrate aufwies und 71,66 % erreichte, verglichen mit dem zweiten, Bard, das einen fast ähnlichen Prozentsatz von 68,33 % aufwies.
Diese Erkenntnisse zeigen dass große Sprachmodelle in der Lage sind, automatisierte JavaScript-Schwachstellen zu reparieren und Beweise für die Rolle liefern, die kontextbezogene Hinweise bei der Generierung geeigneter Antworten spielen.
Bleiben Sie über Neuigkeiten, Whitepapers und Infografiken zur Cybersicherheit auf dem Laufenden. Folge uns auf LinkedIn & Twitter.