Vergiftigde chatsjabloon ontsnapt aan de Jinja-zandbak via een geheugenfout in Python zelf
Beveiligingsbedrijf RunSybil toont aan hoe een kwaadaardig model code kan uitvoeren op servers die AI-modellen draaien, maar niemand wil het probleem echt opeisen.
Onderzoekers van het Amerikaanse beveiligingsbedrijf RunSybil hebben een geheugenfout gevonden in CPython, de standaardimplementatie van Python, waarmee een aanvaller kan ontsnappen uit de afgeschermde omgeving van de sjabloontaal Jinja. Dat meldt InfoWorld, dat het artikel deelt met CSO Online. De fout zit in de code die generieke types afhandelt: een controle op de grenzen van een lijst staat in gewone releaseversies uit, waardoor Python buiten het toegewezen geheugen kan lezen.
Veel servers die taalmodellen uitvoeren, gebruiken Jinja om de chatsjabloon van een model te verwerken. RunSybil liet zien dat een aangepaste sjabloon in een klein Qwen-model, geladen in de populaire inferentiesoftware vLLM, willekeurige code kon uitvoeren. Het grootste risico ligt volgens de onderzoekers bij aanbieders die klanten hun eigen modellen laten uploaden, omdat een aanvaller zo bij werklasten van andere klanten kan komen. AWS heeft volgens RunSybil een maatregel genomen in Bedrock.
De melding leidde tot een welles-nietesspel. Het Python-beveiligingsteam erkende de fout en nam de herstelling van RunSybil over voor Python 3.13 tot 3.15, maar beschouwt het ontsnappen uit een zandbak niet als een Python-kwetsbaarheid. De makers van Jinja wijzen op hun beurt naar Python, en Hugging Face reageerde niet binnen de termijn van negentig dagen. RunSybil raadt aan sjabloonsystemen en afgeschermde omgevingen enkel als bijkomende bescherming te zien, niet als een volwaardige veiligheidsgrens.