Pietiek palūgt AWS kodēšanas aģentam Kiro apkopot vienu tīmekļa lapu vai izlasīt sveša projekta C faila komentāru, lai tas pats savā konfigurācijas failā ierakstītu ļaunu ierakstu un pēc tam palaistu svešu kodu ar izstrādātāja tiesībām. Uzbrucējam nevajag ne paroli, ne izstrādātāja apstiprinājumu. Pietiek ar tekstu, ko aģents izlasa.
To pašu shēmu drošības pētnieki Kiro atraduši vismaz trīs reizes nepilna gada laikā. Katru reizi mainās tikai fails, kuram aģents pieskaras. Kiro ir Amazon aģentiskā izstrādes vide, kas lielo valodas modeli darbina tieši atvērtajā projektā. Aģents drīkst lasīt failus, tos rediģēt un izpildīt komandas. Bīstami kļūst tad, kad tas rediģē tieši tos failus, kuri nosaka, ko tam vispār atļauts palaist.
Kā tīmekļa lapa pārraksta mcp.json
Pirmo reizi to parādīja Johans Rēbergers no Embrace The Red jau 2025. gada jūlijā, dienā, kad Kiro tika publicēts. Kiro savu ārējo rīku sarakstu nolasa no faila ~/.kiro/settings/mcp.json. Šis fails uzskaita Model Context Protocol serverus, ko aģents drīkst palaist, tāpēc kontrole pār to ir kontrole pār to, kāds kods datorā darbojas.
Rēbergers ļaunas instrukcijas paslēpa parasta C faila komentārā. Kad izstrādātājs palūdza aģentam paskaidrot šo failu, aģents izlasīja slēptās pavēles un ar savu edit_file rīku pievienoja mcp.json jaunu MCP serveri ar paša uzbrucēja kodu. Faila saglabāšanas brīdī uzreiz izpildījās Python kods, kas kā pierādījums atvēra kalkulatoru. Rēbergers to atklāja 15. jūlijā. Amazon caurumu aizvēra 5. augustā ar versiju 0.1.42.
Šo paņēmienu sauc par netiešo uzvednes injekciju. Ļaunās pavēles neievada cilvēks pie tastatūras. Tās guļ datos, ko aģents apstrādā pēc izstrādātāja lūguma: tīmekļa lapā, atkļūdošanas žurnālā, README failā vai koda komentārā. Aģents nešķiro pavēles no parasta satura, tāpēc niecīgs lūgums apkopot lapu var beigties ar komandu izpildi uz datora.
Tas pats stāsts ar tasks.json
Nākamā komanda pie tā paša tika 2026. gada sākumā. Drošības uzņēmums Cymulate atrada, ka Kiro pārmantojis VS Code paradumu: uzdevumus no faila .vscode/tasks.json redaktors palaiž pats, tiklīdz mapi atver. Ja valodas modelis šajā failā ieraksta čaulas komandu, tā izpildās jau nākamajā projekta atvēršanā ar pilnām lietotāja tiesībām, bez viena brīdinājuma vai apstiprinājuma loga.
Kiro tasks.json neizveido no nulles katru reizi. Pietiek, ka valodas modelis vienreiz ieraksta failu, kas paliek projektā. Nākamais, kas atver mapi, palaiž komandu, pat ja tas ir cits izstrādātājs vai nepārtrauktās integrācijas serveris.
Šai kļūdai piešķīra kodu CVE-2026-10591 ar bīstamības vērtējumu 8,8 no 10. Cymulate par to ziņoja 2. februārī. AWS labojumu izlaida Kiro versijā 0.11, kur aģentam tagad jāprasa izstrādātāja atļauja, pirms tas raksta izpildei jutīgos ceļos. Uzņēmuma pilnā izpēte publiskota 4. jūnijā.
Kāpēc viena kļūda atgriežas
Visām trim reizēm ir viena forma. Aģents klusi rediģē failu, kas izlemj, ko aģentam pašam atļauts palaist. Kiro drošības robeža dzīvo pašā projekta konfigurācijā, failos .vscode/settings.json un .kiro/settings/mcp.json. Tieši šos failus aģents drīkst mainīt bez lietotāja piekrišanas. Tā aģents pats sev noņem sētu, kas to tur iekšā.
Kiro ir arī uzticamu komandu saraksts, ko var atzīmēt kā automātiski apstiprināmas. Kad aģents pats raksta konfigurācijā, tas var šo sarakstu paplašināt. Tad nākamā ļaunā komanda paiet garām apstiprinājumam, jo aģents to jau ieskaitījis uzticamajās.
Aģenti, kas spēj mainīt savu konfigurāciju un tā panākt patvaļīga koda izpildi, atver ceļu izrāvienam no smilškastes, kur mākslīgais intelekts izlaužas ārā un pārņem izstrādātāja datoru, saka Rēbergers.
Blakus šīm divām kļūdām ir vēl trešā, CVE-2026-0830, kas ļāva palaist kodu caur Kiro GitLab palīgu. Un tas neaprobežojas ar vienu rīku. 2025. gada decembrī pētnieki saskaitīja vairāk nekā 30 līdzīgas kļūdas dažādos AI kodēšanas rīkos.
Vieni salabo, citi ne
Cymulate to pašu paņēmienu pārbaudīja arī pret citiem rīkiem: Cursor CLI, GitHub Copilot CLI, Gemini CLI uz Windows un Codex darbvirsmas lietotni. Pilnu labojumu izdeva vienīgi Amazon. Cursor un OpenAI ziņojumus aizvēra bez sarunas, GitHub bīstamību pazemināja uz zemu bez solījuma labot, bet Google problēmu atzina bez konkrēta termiņa.
Visos trīs Kiro gadījumos pētnieki caurumus atklāja atbildīgi un gaidīja labojumu, pirms rakstīja publiski. AWS labojums nemaina to, ka aģents joprojām var rakstīt failus. Tas pievieno apstiprinājuma soli, pirms aģents pieskaras ceļiem, no kuriem var palaist kodu.
Praktiskā mācība izstrādātājam ir vienkārša. Ja aģents drīkst rakstīt .vscode/tasks.json vai mcp.json bez tava apstiprinājuma, tad jebkurš teksts, ko tas izlasa, var kļūt par komandu. Kiro šobrīd ir 1.0 laidienā. Jaunākā versija 21. jūlijā bija 1.0.165.
Avoti
- The Hacker News: AWS Kiro Flaw Let a Poisoned Web Page Rewrite Its Config and Run Code
- Embrace The Red: AWS Kiro arbitrary code execution via indirect prompt injection
- Cymulate: zero-click RCE via prompt injection in AI tools
- AWS Security Bulletin 2026-037: CVE-2026-10591
- NeuralTrust: The Kiro agentic IDE vulnerability (CVE-2026-0830)
Komentāri
Šim rakstam vēl nav komentāru. Esi pirmais, kurš dalās ar savu viedokli.