Negli ultimi mesi il team di ricerca ApoCert ha condotto audit di sicurezza su installazioni di software gestionali farmaceutici in uso presso farmacie italiane. Quello che abbiamo trovato è preoccupante, ma non sorprendente: un settore che tratta dati sanitari di prima categoria continua ad affidarsi a infrastrutture progettate nell'era pre-GDPR, aggiornate cosmeticamente ma mai riprogettate dal punto di vista della sicurezza.
Questo report sintetizza i finding più significativi. I nomi dei software e delle farmacie coinvolte non vengono divulgati in ottemperanza a una policy di responsible disclosure che prevede la notifica alle autorità prima della pubblicazione.
Il Contesto: Software Progettato per un'Altra Epoca
Il mercato dei gestionali farmaceutici italiani è dominato da un numero ristretto di vendor storici. Molti di questi software hanno architetture risalenti agli anni Novanta, costruite attorno a database proprietari e logiche client-server pensate per reti locali chiuse. Oggi quelle stesse applicazioni girano su macchine connesse a internet, con accesso remoto abilitato per il supporto tecnico del fornitore.
Il problema non è che questi software siano stati scritti male per i loro standard temporali: il problema è che non sono stati mai fondamentalmente riprogettati per il contesto attuale. Gli aggiornamenti distribuiti dai vendor negli ultimi anni riguardano quasi esclusivamente nuove funzionalità e adeguamenti normativi superficiali, non la sicurezza dell'architettura sottostante.
Il risultato è una superficie di attacco ampia, scarsamente monitorata, e spesso del tutto ignota ai titolari delle farmacie che li utilizzano.
Le Vulnerabilità Più Comuni
Tra i finding ricorrenti nelle installazioni analizzate:
- Password di database hardcoded nei file di configurazione, identiche su tutte le installazioni dello stesso vendor
- Connessioni al database non cifrate sulla rete locale, intercettabili con strumenti standard
- Account amministratore con password predefinite non modificate in fase di installazione
- Software di accesso remoto installati dal vendor senza consenso esplicito o documentazione
- File di log contenenti dati personali in chiaro, inclusi codici fiscali e dati anamnestici
- Mancanza di crittografia at-rest per i database contenenti dati sanitari
- Nessun meccanismo di audit trail per le operazioni sulle cartelle paziente
- Dipendenze di terze parti obsolete con vulnerabilità note e CVE pubblici
Nota sulla Metodologia
I dati presentati derivano da audit condotti con consenso esplicito dei titolari delle farmacie. I nomi dei software e delle strutture non vengono divulgati per rispettare la policy di responsible disclosure. Le autorità sono state notificate prima della pubblicazione di questo report.
Password in Chiaro e Dati Non Cifrati
Il finding più frequente riguarda la gestione delle credenziali di accesso al database. In tutti i casi rilevati, la password del database era memorizzata in chiaro in un file di configurazione accessibile senza privilegi elevati.
In alcuni casi si trattava dello stesso file .ini o .cfg che il software legge all'avvio, posizionato nella directory di installazione con permessi di lettura per tutti gli utenti del sistema. In altri casi la password era incorporata direttamente nel codice dell'eseguibile e recuperabile con un semplice dump dei binary.
Altrettanto critica la situazione della cifratura dei dati. Il 73% delle installazioni utilizzava database che salvavano i dati sanitari senza alcuna cifratura at-rest. In caso di furto fisico del server, o di accesso non autorizzato al filesystem, tutti i dati sarebbero immediatamente leggibili.
Le connessioni di rete tra client e database avvenivano in chiaro nel 68% dei casi analizzati. Su una rete locale questo potrebbe sembrare accettabile, ma nella pratica molte di queste farmacie hanno reti Wi-Fi condivise tra dipendenti e clienti, e dispositivi IoT connessi allo stesso segmento di rete.
Strumenti di Accesso Remoto
Una delle scoperte più problematiche riguarda la presenza sistematica di software di accesso remoto installati dai vendor per il supporto tecnico, senza che i titolari delle farmacie ne fossero consapevoli o avessero prestato consenso documentato.
In ventidue delle quarantatre installazioni analizzate abbiamo trovato almeno un software di accesso remoto attivo: nella maggior parte dei casi si trattava di versioni di TeamViewer o AnyDesk, ma in cinque casi erano presenti strumenti meno noti e potenzialmente più rischiosi.
Il problema non è l'esistenza degli strumenti di supporto remoto in sé, che sono spesso necessari e legittimi. Il problema è:
- L'assenza di documentazione nel DPS o nel registro dei trattamenti
- La mancanza di consenso esplicito e informato da parte del titolare
- L'impossibilità per la farmacia di verificare quando e da chi viene effettuato l'accesso
- L'assenza di log degli accessi conservati dalla farmacia stessa
Dal punto di vista del GDPR, questo configura un trasferimento di dati a un soggetto terzo (il vendor) senza le garanzie contrattuali richieste dall'art. 28, e potenzialmente senza un'idonea base giuridica.
Il Caso del File di Testo con le Password
Nel corso di un audit particolarmente istruttivo, abbiamo trovato nella directory di installazione di un gestionale un file denominato passwords.txt. Il file conteneva le credenziali di accesso per l'interfaccia web del pannello di gestione, il database principale, e un account FTP utilizzato per i backup automatici.
Il file era stato evidentemente creato dal tecnico del vendor durante l'installazione iniziale e mai rimosso. Era accessibile in lettura a tutti gli utenti del sistema operativo. Il sistema era in produzione da quattro anni.
Finding Critico
File passwords.txt trovato nella directory di installazione di un gestionale farmaceutico, contenente in chiaro: password database principale (accesso a 12 anni di dati sanitari), credenziali pannello amministrativo web, chiavi FTP per backup remoti. Il file era presente da quattro anni, mai rimosso, leggibile da qualsiasi utente del sistema. Il vendor, notificato, ha risposto che si trattava di una "procedura standard di installazione".
Le Responsabilità del Titolare del Trattamento
Il Regolamento Europeo 2016/679 (GDPR) è inequivocabile sul punto: il titolare del trattamento è responsabile della sicurezza dei dati personali che tratta, indipendentemente dalla tecnologia utilizzata e dal fatto che tale tecnologia sia stata fornita da terzi.
L'art. 32 GDPR impone l'adozione di misure tecniche e organizzative adeguate per garantire un livello di sicurezza commisurato al rischio. Per i dati sanitari, classificati come dati particolari ai sensi dell'art. 9, questo standard è particolarmente elevato.
Il fatto che sia il vendor a gestire il software non esonera il titolare dalla responsabilità. Al contrario, il titolare è tenuto a:
- Selezionare vendor che offrano garanzie sufficienti sull'implementazione di misure tecniche e organizzative adeguate
- Stipulare un contratto di responsabile del trattamento ex art. 28 GDPR
- Verificare periodicamente il rispetto delle garanzie contrattuali
- Documentare le proprie valutazioni nel registro dei trattamenti
Le sanzioni per violazione dell'art. 32 possono arrivare a 10 milioni di euro o al 2% del fatturato mondiale annuo, secondo il valore più alto. Per una farmacia, anche una sanzione di poche decine di migliaia di euro può essere economicamente devastante.
Cosa Fare Adesso
Se gestisci una farmacia e utilizzi un software gestionale, ecco le azioni immediate che raccomandiamo:
- Richiedere al vendor la documentazione di sicurezza: architettura del sistema, policy di gestione delle credenziali, politica di cifratura dei dati
- Verificare la presenza di software di accesso remoto: tramite il pannello di controllo del sistema operativo o con l'aiuto di un tecnico indipendente
- Controllare i file di configurazione nella directory di installazione del gestionale per trovare credenziali in chiaro
- Firmare o richiedere un contratto ex art. 28 GDPR con il vendor del software
- Aggiornare il Registro dei Trattamenti includendo tutti i software che trattano dati sanitari
- Effettuare un cambio di tutte le password degli account amministrativi con credenziali forti e uniche
- Abilitare la crittografia del disco sul server che ospita il gestionale (BitLocker su Windows, LUKS su Linux)
- Isolare la rete del gestionale dalla rete Wi-Fi dei clienti con VLAN o router separato
Analisi Gratuita
Per verificare la sicurezza del tuo gestionale farmaceutico, contatta ApoCert per un'analisi tecnica gratuita. Analizziamo la configurazione del software senza interruzione dell'operatività. Risposta entro 24 ore lavorative.
Conclusioni
I dati emersi dai nostri audit dipingono un settore che, pur trattando alcune delle informazioni più sensibili che esistono, ha accumulato un debito tecnologico e di sicurezza significativo. Le vulnerabilità trovate non sono sofisticate: sono elementari, ben note, e risolvibili.
La buona notizia è che la maggior parte dei problemi rilevati può essere affrontata senza sostituire il software gestionale: interventi di hardening della configurazione, segmentazione di rete, gestione corretta delle credenziali e contrattualistica adeguata con i vendor possono ridurre drasticamente l'esposizione al rischio.
La cattiva notizia è che questi interventi richiedono consapevolezza, tempo e una minima competenza tecnica che la farmacia media non ha internamente. È qui che il ruolo di un partner esterno specializzato diventa non solo utile, ma necessario.
Il costo di un audit preventivo è una frazione del costo di una violazione: sul piano economico, sul piano normativo, e sul piano della fiducia dei pazienti.