La compatibilità software è la capacità di un programma di funzionare correttamente in un ambiente specifico, come un particolare sistema operativo, un'architettura CPU, un modello di dispositivo, un browser o un insieme di librerie. Un programma compatibile può avviarsi, elaborare gli input e produrre l'output previsto senza arresti anomali, corruzione dei dati o funzionalità mancanti.
Nella sicurezza informatica, la compatibilità è importante perché gli strumenti di sicurezza, le patch e le applicazioni devono funzionare su sistemi diversi. Gli attaccanti spesso cercano lacune di compatibilità: componenti obsoleti possono rimanere non patchati perché il software più recente non vi gira sopra, e ambienti insoliti possono compromettere i controlli di sicurezza, la registrazione dei log o gli agenti di rilevamento. I difensori testano la compatibilità durante il deployment per assicurarsi che gli aggiornamenti non disabilitino funzioni critiche e per verificare che il software portabile si comporti in modo sicuro su dispositivi limitati o modificati. Una buona gestione della compatibilità riduce i sistemi fragili e rende più difficile per gli attaccanti sfruttare comportamenti legacy o derive di configurazione.


