SecCodePLT: Eine einheitliche Plattform zur Bewertung der Sicherheit von Code GenAI.
SecCodePLT: A Unified Platform for Evaluating the Security of Code GenAI
October 14, 2024
Autoren: Yu Yang, Yuzhou Nie, Zhun Wang, Yuheng Tang, Wenbo Guo, Bo Li, Dawn Song
cs.AI
Zusammenfassung
Bestehende Arbeiten haben mehrere Benchmarks etabliert, um die Sicherheitsrisiken im Zusammenhang mit Code-Generierungs-KI hervorzuheben. Diese Risiken spiegeln sich hauptsächlich in zwei Bereichen wider: dem Potenzial eines Modells, unsicheren Code zu generieren (unsicheres Codieren) und dessen Nützlichkeit bei Cyberangriffen (Cyberangriff-Hilfreichkeit). Obwohl diese Benchmarks bedeutende Fortschritte gemacht haben, bestehen weiterhin Möglichkeiten für Verbesserungen. Beispielsweise neigen viele aktuelle Benchmarks dazu, sich mehr auf die Fähigkeit eines Modells zu konzentrieren, Angriffsvorschläge zu liefern, anstatt auf seine Fähigkeit, ausführbare Angriffe zu generieren. Darüber hinaus stützen sich die meisten Benchmarks stark auf statische Evaluierungsmetriken, die möglicherweise nicht so präzise sind wie dynamische Metriken wie das Bestehen von Testfällen. Im Gegensatz dazu arbeiten von Experten überprüfte Benchmarks, obwohl sie qualitativ hochwertige Daten liefern, oft in kleinerem Maßstab. Um diese Lücken zu schließen, entwickeln wir SecCodePLT, eine vereinheitlichte und umfassende Evaluierungsplattform für die Risiken von Code-Generierungs-KIs. Für unsicheren Code führen wir eine neue Methodik zur Datenerstellung ein, die Experten mit automatischer Generierung kombiniert. Unsere Methodik gewährleistet die Datenqualität und ermöglicht gleichzeitig eine groß angelegte Generierung. Wir ordnen außerdem Beispiele Testfällen zu, um eine dynamische Evaluierung im Zusammenhang mit dem Code durchzuführen. Für die Cyberangriff-Hilfreichkeit richten wir eine reale Umgebung ein und erstellen Beispiele, um ein Modell zur Generierung tatsächlicher Angriffe zu veranlassen, zusammen mit dynamischen Metriken in unserer Umgebung. Wir führen umfangreiche Experimente durch und zeigen, dass SecCodePLT den State-of-the-Art-Benchmark CyberSecEval in Bezug auf Sicherheitsrelevanz übertrifft. Darüber hinaus identifiziert es die Sicherheitsrisiken von State-of-the-Art-Modellen besser im unsicheren Codieren und bei der Cyberangriff-Hilfreichkeit. Abschließend wenden wir SecCodePLT auf den State-of-the-Art-Code-Agenten, Cursor, an und identifizieren erstmals nicht-triviale Sicherheitsrisiken in diesem fortgeschrittenen Code-Agenten.
English
Existing works have established multiple benchmarks to highlight the security
risks associated with Code GenAI. These risks are primarily reflected in two
areas: a model potential to generate insecure code (insecure coding) and its
utility in cyberattacks (cyberattack helpfulness). While these benchmarks have
made significant strides, there remain opportunities for further improvement.
For instance, many current benchmarks tend to focus more on a model ability to
provide attack suggestions rather than its capacity to generate executable
attacks. Additionally, most benchmarks rely heavily on static evaluation
metrics, which may not be as precise as dynamic metrics such as passing test
cases. Conversely, expert-verified benchmarks, while offering high-quality
data, often operate at a smaller scale. To address these gaps, we develop
SecCodePLT, a unified and comprehensive evaluation platform for code GenAIs'
risks. For insecure code, we introduce a new methodology for data creation that
combines experts with automatic generation. Our methodology ensures the data
quality while enabling large-scale generation. We also associate samples with
test cases to conduct code-related dynamic evaluation. For cyberattack
helpfulness, we set up a real environment and construct samples to prompt a
model to generate actual attacks, along with dynamic metrics in our
environment. We conduct extensive experiments and show that SecCodePLT
outperforms the state-of-the-art (SOTA) benchmark CyberSecEval in security
relevance. Furthermore, it better identifies the security risks of SOTA models
in insecure coding and cyberattack helpfulness. Finally, we apply SecCodePLT to
the SOTA code agent, Cursor, and, for the first time, identify non-trivial
security risks in this advanced coding agent.Summary
AI-Generated Summary