Nová metoda SecureForge má pomoci omezit bezpečnostní chyby v kódu vytvářeném velkými jazykovými modely. Výzkumníci ze Stanfordovy univerzity ukázali, že automatická optimalizace systémových promptů dokáže výrazně snížit podíl zranitelného Python kódu, aniž by zhoršila jeho funkčnost.

Velké jazykové modely se stále více používají při programování, jejich výstupy ale nejsou vždy bezpečné. I funkční kód může obsahovat zranitelnosti, které by mohl útočník později zneužít.

Tým výzkumníků vedený Houjunem Liuem, Lisou Einsteinovou a Johnem Jangem proto vyvinul SecureForge. Metoda automaticky upravuje systémové prompty, tedy základní instrukce, podle nichž se model při generování kódu řídí.

Výzkum ukázal, že pouhý příkaz typu „napiš bezpečný kód“ nestačí. Model může bezpečnostní instrukci respektovat jen částečně a přesto vytvořit například kód náchylný k SQL injection nebo jinému běžnému typu útoku.

SecureForge proto používá opakované testování. Model nejprve dostane realistické programátorské zadání a vytvoří kód. Ten následně kontroluje statický analyzátor Semgrep. Pokud nalezne bezpečnostní problém, další jazykový model navrhne úpravu systémového promptu a celý proces se opakuje.

Výzkumníci vycházeli z databáze MITRE Common Weakness Enumeration, která obsahuje známé typy softwarových zranitelností. Z 25 významných kategorií bezpečnostních chyb vytvořili pomocí GPT-5.4 realistická a běžně formulovaná zadání pro programování v Pythonu.

Jedním z příkladů bylo zadání na vytvoření funkce, která vyhledá uživatele podle jména v databázi SQLite. Takový úkol může při nevhodném řešení vést k chybě typu SQL injection, i když samotné zadání žádnou zranitelnost výslovně nezmiňuje.

Autoři nejprve shromáždili 500 zadání, která vedla ke vzniku zranitelného kódu. Polovinu ponechali pro závěrečné vyhodnocení a druhou polovinu postupně rozšířili na přibližně 80 000 variant.

Pro optimalizaci promptů využili genetický algoritmus GEPA. Ten opakovaně testoval různé varianty systémových instrukcí, vyhodnocoval nalezené chyby a navrhoval jejich úpravy.

SecureForge byl testován například na modelech CodeLlama 7B, Qwen2.5-Coder, Qwen3, Kimi K2, Claude Sonnet 4.6 a několika modelech řady GPT.

Výsledky ukázaly výrazné zlepšení. Při použití SecureForge obsahovalo bezpečnostní chybu v průměru 11,8 procenta testovaných programů. Při běžné instrukci požadující bezpečný kód činil tento podíl 20,1 procenta.

U GPT-5.4 klesla chybovost z 15,8 na 10,1 procenta. U GPT-5.4 Mini se snížila z 21,4 na 12,4 procenta a u GPT-5.4 Nano z 22,1 na 15,6 procenta.

Metoda má ale i omezení. Optimalizována byla především proti již známým třídám zranitelností. Zatím proto není jasné, jak účinná bude při ochraně před novými nebo dosud nepopsanými bezpečnostními problémy.

SecureForge přesto ukazuje jednu z možných cest, jak zvýšit bezpečnost programovacích asistentů využívajících umělou inteligenci. Stejné modely, které dokážou zranitelnosti odhalovat, totiž mohou při špatném nastavení zároveň nové chyby samy vytvářet.

deeplearning.ai/gnews.cz - GH