nw  

AI-assisted Secure Coding

Zusammenfassung

Ein LLM dazu bringen, Code ohne Sicherheitslücken zu generieren.

Schlüsselbegriffe

AI, LLM, Secure Coding, Prompt Engineering, ChatGPT, OpenAI, Python, Semgrep, CodeQL, Bandit

Zielsetzung

Das LLM soll mittels Prompt Engineering und statischer Analysetools dazu gebracht werden, möglichst sicheren Code zu erzeugen.

Ausgangslage

LLMs und Tools zur statischen Analyse bestehen bereits. Es wurden verschiedene Arbeiten mit einem ähnlichen Ziel durchgeführt, auf diesen Arbeiten kann aufgebaut werden.

Ergebnisse

Um die Auswirkungen von verschiedenen Prompts auf die Sicherheit des Codes zu untersuchen wurde ein Testframework erstellt.
Link zum Framework: https://github.com/mbscit/sec_prompt_benchmark
Die Sicherheit des generierten Codes konnte nur minim erhöht werden. Probleme mit dem extrahieren des Codes aus den Antworten, sowie das automatisierte analysieren der Resultate haben deutlich mehr Zeit gefordert, als geplant war.

Projektdaten

Projektdauer: 1. Semester, Arbeitsaufwand: 12 ETCS (360 STD) pro Person, Team: 2 Personen

Auftraggeber

Technische Universität Clausthal

Projektteam

Marc Bruni (Informatik), Fabio Gabrielli (Informatik)

Kontakt

Martin Kropp, martin.kropp@fhnw.ch; Daniel Kröni, daniel.kroeni@fhnw.ch

<< zurück