Hardening
In informatica, Hardening la cui traduzione letterale significa (indurire, temprare), indica il processo che mira attraverso operazioni di configurazione specifica di un dato sistema e dei suoi componenti, a minimizzare l'impatto di possibili vulnerabilità, migliorandone quindi la sicurezza complessiva.
Descrizione
Nei paesi anglosassoni viene spesso indicata come SHID (Security Hardening Investigation & Defence), in Italia rientra nelle pratiche tecniche introdotte dal DPS 196/03 sulla sicurezza dei dati ed in generale enuncia i criteri da adottare per garantire l'adozione delle misure minime di sicurezza sui sistemi e sulle infrastrutture tecnologiche.
L'attività si divide in tre parti fondamentali:
1) pre-analisi sullo stato attuale
2) remedy
3) monitoring per un dato tempo
Per la parte di Remedy (==rimedio) vengono elencate delle attività tecniche mirate che poi devono essere opportunamente documentate (report) al fine di garantire la history sul singolo componente dell'infrastruttura e poter permettere un eventuale rollback in caso di blocco della funzionalità. La parte di report è poi soggetta ad un Audit successivo di verifica (da parte di un organo interno all' IT oppure spesso si ricorre a società specializzate di ethical hacker/security evangelist) atto a convalidare lo stato di sicurezza raggiunto (compliance) e la documentazione finale viene integrata
nel Dps aziendale.
Questa attività di remedy viene normalmente effettuata attraverso operazioni distinte:
1) la riduzione della superficie di attacco ottenibile ad esempio attraverso;
- rimozione di software non necessario dal sistema che dovrà ospitare il servizio;
- disabilitazione di servizi, moduli del kernel, protocolli, non necessari;
- installazione di un personal firewall;
2) la riconfigurazione dei servizi esistenti al fine di renderli maggiormente "robusti";
- applicazione di permessi restrittivi sui file;
- applicazione di policy per la complessità delle password;
- abilitazione dei log di sicurezza;
- installazione delle patch di sicurezza;
- rimozione degli utenti non necessari;
- etc.
Ogni componente erogante il servizio dovrà essere oggetto di hardening, (es. sistema operativo, webserver, applicazione web), etc. Una configurazione molto stringente, spesso richiede un discreto tempo di applicazione, a causa a volte della complessità o della scarsità di documentazione del servizio ospitato. Nelle aziende tipicamente viene definito un livello base di hardening da applicare a tutte le piattaforme, viene successivamente deciso in funzione di un'attività di analisi del rischio se incrementare e di quanto la profondità dello stesso.
Ad oggi esistono anche insiemi di script di hardening e tool come Security-Enhanced Linux, Bastille linux[1], Microsoft Group-Policy[2] JASS[3] per Solaris e Apache/PHP hardener[4], che possono, per esempio, disattivare funzionalità non necessarie nei file di configurazione e applicare misure protettive di varia natura.
Per la criticità delle attività da svolgere è necessario che il personale tecnico incaricato sia altamente qualificato in quanto si tratta di vera e propria azione investigativa e di difesa perimetrale , nulla può essere lasciato al caso anzi grazie a questo tipo di indagine spesso si riesce a scoprire vulnerabilità mai segnalate dai sistemi interni di Antivirus,Firewall,Antimalware etc.