Perché Monaco finanzia libexpat: la libreria invisibile dietro 2.700 server

Monaco di Baviera finanzia lo sviluppo di libexpat, libreria XML presente su almeno 2.700 server municipali. L'obiettivo è rafforzarne sicurezza e manutenzione.

Una piccola libreria C che analizza file XML può sembrare un componente troppo distante dalla politica tecnologica di una grande città. Eppure, Monaco di Baviera la pensa diversamente: per la seconda metà del 2026 ha assegnato il suo Open Source Sabbatical a libexpat, destinando risorse pubbliche al lavoro di manutenzione, sicurezza e sviluppo del parser. La scelta ha una ragione molto concreta. Le scansioni condotte dall’amministrazione hanno rilevato libexpat su almeno 2.700 server Linux municipali; la stessa libreria compare inoltre nella catena software di applicazioni come Firefox, QGIS, WinSCP, Audacity e Python, oltre che in prodotti proprietari utilizzati dalla città tedesca.

L’idea di un programma retribuito che permettesse agli sviluppatori di dedicare un periodo di lavoro a progetti open source risale a una proposta presentata al consiglio comunale nell’ottobre 2020. A febbraio 2023 Monaco approvò la creazione dell’Open Source Hub, poi confluito nelle attività dell’Open Source Programme Office cittadino. Il primo progetto selezionato arrivò nella prima metà del 2025 con Integreat-Chat. Nel 2026 il bersaglio cambia completamente: niente applicazione rivolta direttamente ai cittadini, ma una libreria di infrastruttura che lavora “dietro le quinte” senza far mostra di sé.

Monaco finanzia il lavoro sul codice che usa davvero

Il meccanismo del Munich Open Source Sabbatical parte da un principio abbastanza semplice: uno sviluppatore qualificato può dedicare un periodo limitato a un progetto libero utile alla città senza dover necessariamente svolgere quel lavoro nel tempo libero. Possono partecipare sia dipendenti dell’amministrazione sia sviluppatori esterni; per questi ultimi Monaco prevede forme di compensazione economica che permettano di sospendere temporaneamente la normale attività professionale.

La documentazione municipale indica, tra le possibilità per gli esterni, un’assunzione a termine tramite la società di consulenza digitale della città.

Monaco ha insomma costruito un meccanismo amministrativo per trasformare la manutenzione open source in un lavoro finanziabile, anziché affidarsi soltanto alla disponibilità volontaria degli sviluppatori. È un punto delicatissimo sul quale l’ideatore e principale sviluppatore di curl, altro componente parte integrante di miliardi di installazioni, ha scelto di non usare mezzi termini: “non ce la facciamo più“, ha dichiarato Daniel Stenberg.

Molte organizzazioni si servono del software libero attraverso distribuzioni Linux, linguaggi, browser, librerie e appliance senza avere un rapporto diretto con chi mantiene le dipendenze a monte. Monaco prova invece a risalire la catena: identifica un componente presente nella propria infrastruttura e investe tempo di sviluppo direttamente sul progetto che lo produce.

Cos’è libexpat e perché si trova praticamente ovunque

libexpat, spesso chiamata semplicemente Expat, è una libreria scritta in C per l’analisi di documenti XML 1.0. Opera secondo un modello orientato allo streaming: l’applicazione fornisce progressivamente i dati al parser ed Expat genera eventi attraverso funzioni di callback quando incontra, per esempio, l’apertura di un elemento, la sua chiusura, testo, attributi, dichiarazioni o entità.

Non serve quindi caricare necessariamente l’intero documento XML in memoria e costruire un albero completo come avviene con un parser DOM.

Tale caratteristica rende Expat adatto anche a flussi consistenti o a programmi nei quali contano consumi di memoria contenuti e tempi di elaborazione prevedibili.

La sua API C e la lunga storia del progetto ne hanno favorito un’enorme diffusione: Python, per esempio, espone Expat attraverso xml.parsers.expat e il modulo pyexpat sottostante. Mozilla mantiene una copia della libreria all’interno del codice di Firefox e continua ad aggiornarla quando arrivano nuove release. Altri programmi la collegano direttamente oppure la ricevono indirettamente attraverso pacchetti e dipendenze.

Il 2026 ha mostrato quanto costa mantenere sicuro un parser XML

La scelta di Monaco arriva durante un periodo particolarmente intenso per il progetto. Expat 2.7.4, pubblicato il 31 gennaio 2026, includeva già correzioni di sicurezza; la versione 2.7.5 del 17 marzo ne ha risolte altre tre, identificate come CVE-2026-32776, CVE-2026-32777 e CVE-2026-32778.

Uno degli obiettivi indicati consiste nel lavorare sulle vulnerabilità note che non hanno ancora una soluzione definitiva e sulle nuove segnalazioni arrivate durante quella che la città tedesca definisce come una lunghissima striscia che non è possibile sottovalutare per non incorrere in problemi ben più gravi.

Monaco ha scelto di partire dai componenti realmente presenti nella propria infrastruttura e sostenere lavoro che abbia effetti benefici direttamente sul codice pubblico. D’altra parte, il mondo delle imprese si è accorto (di recente) che una parte importante della sicurezza informatica dipende da codice open source poco visibile e da persone (solitamente non remunerate) che devono trovare il tempo per mantenerlo. Pagare quel tempo, quando il software sostiene direttamente migliaia di sistemi pubblici, non è beneficenza tecnologica: è manutenzione dell’infrastruttura digitale, soltanto eseguita qualche livello più in basso rispetto a quello che normalmente compare nei contratti IT.

Ti consigliamo anche

Link copiato negli appunti