(Ne)bezpečnosť umelej inteligencie / 4. časť
V tejto časti seriálu doplníme informácie týkajúce sa sumarizácie a zhodnotenia bezpečnostných chýb a slabín technických prostriedkov a ich softvéru. Ďalej sa budeme venovať generatívnej AI (GenAI), ktorá sa zameriava na vytváranie nového obsahu. Konkrétne sa budeme zaoberať jej využitím a problémami súvisiacimi s tvorbou programového kódu. Uplatníme pri tom najnovšiu hodnotiacu správu spoločnosti Veracode (veracode.com), ktorá varuje pred rizikami GenAI.

Obr. 1 GenAI a kód s integrovanými chybami
MITRE CWE (cwe.mitre.org)
CWE (Common Weakness Enumeration) nie je len obyčajný zoznam (list) chýb, ale ide o komplexný klasifikačný systém, ktorý vnáša poriadok do sveta hardvérových a softvérových slabín. Pokiaľ známejšie CVE (Common Vulnerabilities and Exposures, cve.org) označujú konkrétne, už nájdené bezpečnostné diery a zraniteľnosti v špecifických produktoch, CWE sa zameriava na „jadro“ problému, teda na typologickú podstatu chyby, ktorá sa môže opakovať v akomkoľvek produkte. Systém CWE funguje ako rozsiahly katalóg, kde má každá slabina svoje unikátne ID. Tento katalóg umožňuje programátorom, bezpečnostným testerom a automatizovaným nástrojom komunikovať v jednotnom jazyku.
Špecifický rebríček CWE Top 25 (cwe.mitre.org/top25) vyberá zo záznamov CWE (records) 25 najnebezpečnejších a najčastejšie sa vyskytujúcich slabín v súčasnom softvéri. Slúži ako strategický základ na vzdelávanie vývojárov a nastavovanie priorít pri zabezpečovaní programového kódu. V prípade GenAI význam CWE rastie, a to najmä z dôvodu, že modely AI majú tendenciu klasické slabiny nevedome zavádzať do vygenerovaného kódu. CWE je teda jeden zo základných kameňov tvorby zabezpečených systémov (Security by Design), a to vrátane systémov vytvorených pomocou GenAI.
OWASP (owasp.org)
OWASP (Open Worldwide Application Security Project) je medzinárodná nezisková nadácia, ktorá sa stala celosvetovým štandardom v oblasti bezpečnosti webových aplikácií. Jej hlavným cieľom je zvyšovať povedomie o softvérových rizikách a poskytovať voľne dostupné, praktické zdroje pre vývojárov a bezpečnostných expertov. OWASP zastrešuje stovky rôznych projektov, ako napr. ASVS (Application Security Verification Standard) na overovanie bezpečnosti, a takisto nástrojov na automatizované testovanie zraniteľností.
Najznámejší projekt je OWASP Top Ten (owasp.org/www-project-top-ten). Ide o pravidelne aktualizovaný rebríček desiatich najkritickejších bezpečnostných rizík pre webové aplikácie. Tento zoznam slúži ako kľúčový referenčný podklad pre organizácie po celom svete, ktoré ho využívajú na priorizáciu testovania a vzdelávania svojich tímov.
V súčasnosti sa nadácia intenzívne venuje najmä novým výzvam, ako sú bezpečnosť API alebo špecifické riziká spojené s nasadzovaním modelov AI.
Spring 2026 GenAI Code Security Update (veracode.com)
Spoločnosť Veracode, jeden z lídrov v oblasti bezpečnosti aplikácií, zverejnila v marci 2026 svoju najnovšiu aktualizáciu správy o bezpečnosti kódu generovaného pomocou AI, pričom odhalila „krutú“ realitu. Dokument prichádza v čase, keď už takmer 90 % firiem priznáva, že ich vývojári pri svojej práci aktívne používajú AI asistentov ako ChatGPT, GitHub Copilot alebo Claude. Závery správy sú však jasným varovaním – rýchlosť vývoja, ktorú GenAI prináša, je na úkor kritického nárastu bezpečnostného dlhu.
1. Rozsah štúdie a metodika
Veracode podrobil analýze kód, ktorý bol buď kompletne vytvorený, alebo výrazne upravený pomocou nástrojov GenAI. Analýza sa zamerala na kombináciu vyše 150 rôznych LLMs (Large Language Models) a štyri konkrétne programovacie jazyky (Python, Javascript, C#, Java), pričom sledovala výskyt slabín definovaných v zoznamoch MITRE CWE a OWASP Top Ten.
2. Kľúčové zistenia
Najviac alarmujúce číslo reportu je fakt, že až 45 % úloh, pri ktorých vývojár požiadal AI o vygenerovanie funkčného kódu, viedlo k zavedeniu aspoň jednej známej bezpečnostnej zraniteľnosti. Modely AI sú trénované na obrovských množstvách open source kódu, ktorý však sám osebe obsahuje chyby. Výsledkom je, že AI nereprodukuje len funkčnú logiku, ale aj zastarané a nebezpečné postupy, ktoré komunita programátorov už roky označuje za rizikové. Z programovacích jazykov najhoršie dopadla Java, kde miera zraniteľnosti v AI kóde presiahla 70 %. AI často navrhuje použitie neexistujúcich bezpečnostných knižníc alebo zastaraných šifrovacích algoritmov, ktoré budia dojem validity, ale v skutočnosti nechávajú systémy otvorené útokom. Ďalšie nemenej dôležité zistenia boli, že LLMs ponúkajú zavedenie ochranných prvkov iba proti niektorým CWE. Navyše odolnosť vygenerovaného kódu nebola významne vyššia pri aplikácii väčších LLM.
3. MITRE CWE a najčastejšie slabiny GenAI
Veracode v správe zdôrazňuje, že systémy AI asistentov majú tendenciu opakovať tie isté typy chýb. Tieto chyby sú pre GenAI typické preto, lebo modely uprednostňujú funkčnosť (aby kód bežal) pred robustnosťou (aby bol kód bezpečný proti úmyselnému zneužitiu). Pri testovaní boli skúmané nasledujúce CWE:
|
CWE-327 Use of a Broken or Risky Cryptographic Algorithm |
Použitie zastaraných alebo prelomených šifrovacích algoritmov, ktoré už nie sú odolné proti moderným útokom a hrubá sila (brute force) ich dokáže prekonať v krátkom čase |
|
CWE-89 SQL Injection |
Nevhodná neutralizácia špeciálnych prvkov v príkaze SQL |
|
CWE-80 Improper Neutralization of Script-Related HTML Tags in a Web Page (Basic XSS) |
Prevzatie vstupu od používateľa a jeho priame vpísanie do kódu HTML stránky bez úpravy, teda bez odstránenia špeciálnych/neželaných znakov |
|
CWE-117 Improper Output Neutralization for Logs |
Zápis vstupu od používateľa priamo do logovacieho súboru bez ošetrenia, teda bez odstránenia neželaných znakov |
4. Odporúčania a závery
GenAI je úžasný urýchľovač, ale bez prísneho bezpečnostného rámca sa stáva nástrojom na masovú výrobu zraniteľností. Správa Veracode uvádza, že odolnosť kódu generovaného pomocou GenAI sa nijako významne nezvýšila. Najhoršie je, že tento deficit nebude možné ľahko napraviť, pretože novo generovaný kód bude obsahovať tie isté bezpečnostné slabiny a tie sa budú prenášať do ďalšej a ďalšej iterácie pri učení LLMs.
Práve preto by vývojári mali čo najrýchlejšie zaviesť povinné kontroly, resp. automatizované testovanie kódu, prípadne implementovať nástroje, ktoré skenujú kód v reálnom čase hneď, ako ho asistent GenAI vyprodukuje. Vývojári by mali do kontextových promptov GenAI pridávať bezpečnostné požiadavky, ako napr. „vygeneruj kód s dôrazom na ochranu proti CWE-89“.
Zobrazit Galériu