In sintesiUna vulnerabilità critica, valutata 10 su 10 nella scala CVSS, è stata scoperta nel progetto open source Prompty di Microsoft. Il team AppSec Research di Positive Technologies ha identificato che un file .prompty appositamente preparato poteva eseguire codice JavaScript arbitrario con i privilegi del processo Node.js.
Una vulnerabilità critica è stata riscontrata in Prompty, un progetto open source di Microsoft per lo sviluppo di applicazioni basate su grandi modelli linguistici. L’errore permetteva a un file .prompty appositamente preparato di uscire dai limiti della normale elaborazione del template e di eseguire codice JavaScript arbitrario con i privilegi del processo Node.js. La vulnerabilità ha ricevuto la valutazione massima di 10 su 10 nella scala CVSS.
Il problema è stato scoperto dagli esperti del team AppSec Research di Positive Technologies durante il test di uno strumento basato su intelligenza artificiale per la ricerca di vulnerabilità. Il difetto è stato registrato come CVE-2026-73299. La vulnerabilità interessava il pacchetto TypeScript @prompty/core nelle versioni fino a 0.1.4 incluso, nonché il ramo fino a 2.0.0-beta.4 incluso. Microsoft ha chiuso la falla nelle versioni 0.1.5 e 2.0.0-beta.5.
Prompty combina il formato dei file .prompty e gli strumenti per la creazione, il test e l’esecuzione di prompt nelle applicazioni basate su IA generativa. Il file consiste in una configurazione YAML e nel corpo del prompt in Markdown, e può contenere anche parametri del modello, dati di input, strumenti e costruzioni di template. Lo sviluppatore è in grado di utilizzare un singolo file in diverse ambienti e di collegare vari fornitori di LLM.
La vulnerabilità appartiene alla classe SSTI, o Server-Side Template Injection. Durante l’elaborazione dei file .prompty, il motore di template Nunjucks non limitava adeguatamente l’accesso agli oggetti JavaScript. Un template appositamente formato permetteva di accedere alle proprietà constructor e prototype, di uscire dai limiti della logica prevista e di ottenere l’esecuzione di JavaScript all’interno del processo Node.js.
Le conseguenze dello sfruttamento dipendevano dai privilegi del processo in cui funzionava l’applicazione. Con privilegi sufficienti, un attaccante avrebbe potuto potenzialmente accedere ai dati e ai segreti dell’applicazione, modificare file e impostazioni, interferire con il funzionamento dei servizi o comprometterne la disponibilità. La possibilità di eseguire codice arbitrario con i privilegi dell’applicazione è stata la causa della valutazione massima di pericolo.
Un semplice testo di richiesta al modello linguistico non è sufficiente per sfruttare la CVE-2026-73299. L’attacco richiede che l’applicazione utilizzi una versione vulnerabile di @prompty/core, elabori un file .prompty tramite Nunjucks e riceva un template appositamente preparato. Microsoft ha indicato separatamente i file .prompty non attendibili, ottenuti dalla comunità, clonati e generati da LLM.
Un file con prompt può includere configurazione, espressioni di template e altri elementi che influenzano il funzionamento dell’applicazione, quindi l’ottenimento di tali file da fonti esterne crea rischi caratteristici della catena di fornitura del software.
Gli utenti delle versioni vulnerabili di @prompty/core devono passare almeno alla versione 0.1.5 nel vecchio ramo o alla 2.0.0-beta.5 nel nuovo.
Ricercatore di sicurezza informatica con esperienza nell’analisi delle vulnerabilità, nella mitigazione del rischio cyber, nelle attività di red teaming ed ethical hacking e nella protezione di sistemi complessi. Specializzato in penetration testing e Threat Intelligence, contribuisce al rafforzamento della resilienza digitale di infrastrutture e reti aziendali.
Aree di competenza: Penetration Testing, Threat Intelligence, Red Teaming, Vulnerability Assessment, Incident Response