Microsoft Threat Intelligence publiserte 7. mai en analyse som viser at en enkelt brukerprompt var nok til å starte calc.exe på maskinen som kjørte et Semantic Kernel-bygget agent-system. Forskerne beskriver to selvstendige hull, CVE-2026-26030 og CVE-2026-25592, som begge bygger bro fra LLM-output til kjørbare instruksjoner via tool-calls.
Bakgrunnen er at agentene er gitt plugins som leser filer, søker i databaser og kjører skript. Når modellen tolker en prompt og kaller et tool, er det rammeverket som mapper data inn i systemkall. Hvis den mappingen stoler på AI-kontrollerte parametere, blir prompt-injeksjon plutselig en RCE-primitiv.
For CVE-2026-26030 lå feilen i Search-pluginen mot In-Memory Vector Store. Standardfilteret bruker en Python-lambda som kjøres med eval(), og kwargs-verdiene var ikke saneret. En spesielt utformet prompt gikk gjennom AST-validatoren ved å pakke ondsinnet kode inne i et lovlig lambda-uttrykk, traverserte Pythons type-hierarki for å nå BuiltinImporter, og kalte os.system().
CVE-2026-25592 ligger i .NET-SDK-en. Funksjonen DownloadFileAsync var feilaktig markert med [KernelFunction]-attributtet, som gjorde den synlig for AI-modellen som et kallbart tool. Med to chained-prompts kunne en angriper først skrive en payload inne i den isolerte sandkassen via ExecuteCode, og deretter laste den ut til Windows\Start Menu\Programs\Startup-mappen på verten. Ved neste innlogging er hele maskinen kompromittert.
«AI-modellen din er ikke en sikkerhetsgrense. Hvilke tools du eksponerer definerer angriperens skopi. Enhver tool-parameter modellen kan påvirke må behandles som angriperkontrollert input.» (Microsoft Threat Intelligence)
Microsoft varsler at dette er første del i en serie. Neste blogginnlegg skal dekke strukturelt like RCE-hull i LangChain og CrewAI, ifølge selskapet. Det er et oppmerksomhetspunkt for alle som bygger agenter på de rammeverkene, fordi disclosure-prosessen pågår parallelt med at kjente angrepsmønstre nå publiseres.
Hva bør du gjøre?
- Oppgrader umiddelbart:
pip install --upgrade semantic-kernel>=1.39.4for Python, NuGet til 1.71.0 for .NET. Dette stenger begge CVEene uten kodeendringer. - Hunt etter retroaktiv kompromittering: hvis agenten din kjørte en sårbar versjon i prod, sjekk endpoint-telemetri for cmd.exe, powershell.exe eller bash.exe spawnet av agent-prosessen i sårbarhetsvinduet. Microsoft har publisert KQL-spørringer du kan tilpasse.
- Behandl alle tool-parametere som untrusted input: når du selv eksponerer plugins for en agent, bygg path-validering, allowlist for funksjonsnavn og deny på dynamic eval inn fra start.
Bakgrunn
Semantic Kernel har 27 000 stjerner på GitHub og er Microsofts svar på LangChain. At Microsofts egen sikkerhetsdivisjon finner kritiske hull i deres eget rammeverk er ikke flaut, det er sunt. Det er også et signal om at agent-rammeverkene som ble stresset gjennom 2025 nå går inn i en moden fase der security-teamet må behandle dem som operativsystem-komponenter, ikke biblioteker. Hvis du bygger noe på toppen, er supply-chain-tankegangen viktigere enn modellvalget.