Se tutti i computer utilizzano lo stesso sistema operativo, gli hacker devono concentrarsi solo su un sistema operativo, non sarebbe sicuro?
Se tutti i computer utilizzano lo stesso sistema operativo, gli hacker devono concentrarsi solo su un sistema operativo, non sarebbe sicuro?
Nel 2003, Dan Geer di @Stake ha pubblicato un documento fondamentale su questo stesso argomento: Sicurezza Cyber In : Costo del monopolio . Sorprendentemente (dato che all'epoca era impiegato da Microsoft) si reca direttamente nel campo affermando che la diversità è vitale per la sicurezza (enfasi mia):
Regardless of the topic – computing versus electric power generation versus air defense – survivability is all about preparing for failure so as to survive it. Survivability, whether as a concept or as a measure, is built on two pillars: replicated provisioning and diversified risk....
...redundancy has little ability to protect against cascade failure; having more computers with the same vulnerabilities cannot help if an attack can reach them all. Protection from cascade failure is instead the province of risk diversification – that is, using more than one kind of computer or device, more than one brand of operating system, which in turns assures that attacks will be limited in their effectiveness. This fundamental principle assures that, like farmers who grow more than one crop, those of us who depend on computers will not see them all fail when the next blight hits. This sort of diversification is widely accepted in almost every sector of society from finance to agriculture to telecommunications.
(Ha concluso dicendo che Microsoft era una minaccia in quanto ha introdotto una monocultura, che si è rivelata una mossa limitante per la sua carriera in Microsoft.)
Nei commenti, @Johnny suggerisce che questa è una risposta credenzialista. Mentre ho scelto di citare qui la carta ben scritta di un rispettato professionista, lo faccio perché rispecchia i miei oltre 20 anni di esperienza nel settore informatico e della sicurezza. (Che, diamine, sembra quasi un credenzialismo secondario, ma sto solo dicendo che sto facendo riferimento piuttosto che a pappagallo).
Ad esempio, l'architettura a 3 livelli (web / app / db) è diventata un miglioramento ampiamente accettato in termini di sicurezza molto tempo fa, perché la separazione tra le diverse funzioni ha aiutato a rafforzare la sicurezza. In questo senso, la mia esperienza è stata che esiste un compromesso tra il lavoro aggiuntivo che imposta i sistemi eterogenei (ad esempio, IIS con un backend MySQL su Linux) e l'ulteriore vantaggio della diversità durante gli attacchi ( o patch!) introducono interruzioni nello stack. E che mi sono rammaricato di avere un problema più grande più volte di quanto mi sia dispiaciuto per il lavoro extra:)
Le epidemie di campo Virgin - o perché non stai segmentando le tue reti, o perché stai usando le stesse password, o hai solo un provider [DNS / Hosting / Network], o perché stai usando il stesso SO ovunque - tutto finisce male.
Se tutti i sistemi sono uguali, allora c'è la prevedibilità di cosa potrebbe andare storto e come risolvere e correggere. Diventa molto più facile mitigare i problemi che conosci. Ad esempio, se la rete è tutta Windows, gli amministratori devono solo tenere a mente i rischi di Windows e implementare le mitigazioni per un singolo tipo di sistema.
Se si mischiano i sistemi, gli amministratori devono assicurare tale mix allo stesso livello di protezione. Si introducono molte incognite e molta incertezza, che aumenta i rischi. Sì, è possibile che alcuni sistemi siano più sicuri di altri, ma da una prospettiva olistica, più le cose sono le stesse, più facili, più economiche e più affidabili possono essere le protezioni.
Più sistemi diversi rendono più difficile la diffusione dell'infezione.
Meno sistemi diversi rendono più difficile l'avvio di un'infezione. **
Quindi, se lo scenario di errore è l'infezione di tutti i sistemi (ad es. se è necessario garantire l'uptime), l'utilizzo di più sistemi operativi può aiutare (se eseguito correttamente). Se lo scenario di errore è uno dei tuoi sistemi infetto (ad esempio se sei uno studio legale con documenti sensibili), l'utilizzo di più sistemi danneggerà.
* Un singolo difetto di sicurezza noto all'attaccante può potenzialmente consentire di compromettere molti o la maggior parte dei computer che eseguono lo stesso sistema operativo.
** Un unico difetto di sicurezza, su qualsiasi dei sistemi operativi, che è noto all'attaccante sarà sufficiente a consentire di compromettere una delle macchine con quel difetto.
Questa risposta ignora la possibilità di utilizzare diversi sistemi operativi per macchine con superfici di attacco intrinsecamente diverse (ad esempio server web Unix, router Cisco, workstation Windows), perché a quel punto la risposta diventa molto più complicata.
Come sottolinea schroeder, sarebbe molto più utile gestire la sicurezza di tale rete.
Ma anche se la gestione di una rete diversa non fosse un problema, gli umani sono ancora l'anello più debole di ogni sistema. Al giorno d'oggi l'ingegneria sociale è molto efficace e qualcuno su una scatola Linux può essere indotto a rinunciare alle proprie credenziali di accesso con la stessa facilità con cui qualcuno su una scatola di Windows può farlo.
E anche se tutti i tuoi utenti sono esperti di sicurezza e non cadono mai in cerca di trucchi, la rete non sarebbe ancora pratica da utilizzare. La maggior parte del software che gli utenti useranno per fare effettivamente i propri lavori probabilmente non è disponibile per più SO.
E anche se tutto il tuo software fosse multipiattaforma, non saresti ancora più sicuro. Gli hacker avrebbero appena iniziato a scrivere malware multipiattaforma.
È fattibile, ma non ne vale la pena.
La replica e la diversificazione proteggono da diversi tipi di attacchi.
La replica è il nucleo di qualsiasi strategia utilizzata per proteggere l'azienda da interruzioni di corrente, incendio, acqua e altri rischi in cui può essere fornita una distribuzione di probabilità per il verificarsi di guasti. Questa conoscenza viene quindi utilizzata per determinare i modelli di distribuzione per ridurre al minimo il rischio.
È una preoccupazione completamente diversa proteggere dagli attacchi intenzionali. La replica può salvare un'azienda da attacchi intenzionali solo se le risorse replicate sono completamente inaccessibili agli aggressori. Una volta che gli aggressori hanno scoperto come compromettere un'istanza di un sistema, si deve presumere che tutte le istanze configurate in modo identico possano essere compromesse in qualsiasi momento.
La diversità costringe gli attaccanti ad adattare la propria strategia a ciascun obiettivo. Naturalmente, se le differenze sono "banali" in una certa misura (1), l'adattamento potrebbe non richiedere molto sforzo. Poiché il termine "banale" dipende dalle capacità dell'attaccante, anche mettere troppa fiducia nella diversità come misura di sicurezza è rischioso.
(1) Debian vs. Ubuntu possono essere considerati troppo poco l'uno dall'altro.
Dipende da cosa stai cercando di ottenere.
Avere un insieme diversificato di sistemi operativi nella rete renderà più difficile per un utente malintenzionato compromettere i tutti computer nella rete. Ma ci sono pochissimi casi in cui questo è l'obiettivo di un aggressore.
Invece, di solito gli aggressori cercano di sabotare le operazioni disabilitando i servizi essenziali o tentano di rubare informazioni. In questi casi, compromettere un singolo sistema operativo su un singolo computer potrebbe essere sufficiente e disporre di più sistemi operativi diversi nella rete significa che un utente malintenzionato è libero (e deve solo) trovare una vulnerabilità in uno solo di questi sistemi operativi. In questo caso, la diversità rende l'attacco molto più semplice (ad esempio se i file importanti sono su una condivisione di rete accessibile dagli utenti di computer desktop Windows, Linux e MacOS, in cui uno qualsiasi di questi sistemi può consentire all'utente malintenzionato di accedere a tali file) .
Come tante cose, si tratta del tuo modello di minaccia.
Un ecosistema diversificato fornisce all'attaccante più di una sfida e l'exploit che lo ha coinvolto non lo porterà su tutti gli altri sistemi.
D'altra parte, hai le conoscenze e le risorse per mantenere una rete diversificata costantemente aggiornata e sicura?
Se hai un sacco di esperti di Windows veramente buoni, ma non persone Linux, quindi introdurre alcuni sistemi Linux solo per ottenere la diversità è probabile che riduca la tua sicurezza generale, dato che non hai nessuno per impostare correttamente su, indurire e mantenere tali sistemi e diventeranno una responsabilità.
Inoltre, è più semplice automatizzare la distribuzione delle patch e la gestione della configurazione in un ambiente meno diversificato.
L'opinione generale, AFAIK, è che se puoi eseguire una rete diversificata, dovresti farlo. Ma se ti manca l'esperienza o le risorse, non farlo solo per farlo.
Il sistema operativo è al livello più alto del modello OSI di rete. Il livello 7 è il livello di applicazione. Avere un sistema operativo monopolistico rende più efficiente sfruttare le vulnerabilità della sicurezza, ma consente anche di rendere più efficienti le patch e le risoluzioni della vulnerabilità della sicurezza.
Rendendo più sicuri i protocolli di rete di livello inferiore e i loro dispositivi, ovvero i router, possiamo compensare le vulnerabilità del sistema operativo nel livello dell'applicazione. La maggior parte delle intrusioni può essere prevenuta con un buon router firewall in grado di gestire la sicurezza dei livelli Session (Layer 5), Transport (Layer 4) e Network (Layer 3) del modello OSI prima che il sistema operativo veda persino i pacchetti.
Come analogia, immagina se tutti avessero lo stesso lucchetto - chiunque con la chiave potrebbe aprire tutte le porte.
Nel mio lavoro, abbiamo due sistemi operativi principali. Molti conoscono un sistema operativo ma pochi conoscono l'altro. Il sistema operativo ben versato sembra più incline a tentativi di hacking rispetto a quello meno noto. L'indicazione è che più il sistema è ben noto, più è probabile la necessità di precauzioni.
Inoltre, altre arene hanno dimostrato che un monopolio alimenta la compiacenza piuttosto che l'ingenuità. Nella storia di Ma Bell, il prezzo piuttosto che la capacità era la forza trainante. Una volta rotto (anche se un dolore), le aziende hanno rotto il pacchetto con l'innovazione. Penso che lo stesso sia vero per il sistema operativo di oggi.
Infine, alcuni sistemi operativi funzionano solo nei loro mercati. OS390 / 400 funziona alla grande per mainframe veloce "Transactions per second" ma non così bene per la nonna quando sta cercando la sua collezione di ricette. PC / DOS è ottimo per gli appassionati ma non può davvero fare nulla oltre la nostalgia che si agita. Anche se è vero che alcuni sistemi operativi si mimano l'un l'altro (specialmente nel mondo della console di gioco), ognuno ha ancora il proprio parco giochi.
Spero che ti aiuti.
Oh, ho dimenticato di menzionare ... un singolo SO in tutta l'azienda è più facile da mantenere con le patch e così via, ma rischia tutto. (Un virus potrebbe togliere tutti i sistemi.) Considerando che più sistemi operativi diversi sono più difficili da mantenere, ma separano o separano i rischi. Si applica l'adagio di "tutte le uova nello stesso paniere".
Nel mio lavoro, devo fornire più livelli di ridondanza da piccoli guasti a riprese di buche fumanti. Un buon backup è uno specchio dei sistemi attuali: server e applicazioni replicati. Un backup ancora migliore è uno specchio dei sistemi attuali che funzionano esattamente come i sistemi attuali ma su diversi sistemi operativi e infrastrutture. Il miglior backup possibile è i diversi sistemi operativi e un backup basato su un terzo cloud. Ciò indica la diversità come preferenza rispetto alla semplicità.
È questione di bilanciare le cose per adattarsi al meglio alla tua situazione.
Ci sono vantaggi per 1 per tutti i sistemi operativi: puoi sviluppare misure di sicurezza, impostazioni, patch e soluzioni identiche. Ma lo svantaggio è che se uno è compromesso, gli attaccanti possono ottenere il resto relativamente facile. Questo è valido per vulnerabilità e non solo.
Se disponi di molti sistemi operativi diversi, amministrare, applicare patch e mantenere la compatibilità generale potrebbe essere più difficile, ma se uno dei sistemi è compromesso, gli altri sistemi operativi saranno molto più sicuri rispetto al primo caso.
In entrambi i casi, hai bisogno di sicurezza e patch.
Importa anche quale sistema operativo sia. Se è facile prenderne di mira, è meglio se ne usi anche altri. Se è considerato abbastanza sicuro, va bene se è solo quello.
True.
Questo è simile al "single point of failure", l'errore qui è dovuto all'ambiente omogeneo.
Ma il livello di sicurezza dipende in realtà da molti fattori. Anche l'ambiente OS omogeneo non è così omogeneo come immagina, cioè hardware eterogeneo, versione del sistema operativo, versione dell'applicazione, ecc.
Quindi la mitigazione riguarda l'isolamento delle minacce. Ad esempio, un'organizzazione con più computer utilizzerà il bridging o la VLAN per isolare la rete in base alla funzione di gestione aziendale.
Certamente renderà più difficile il lavoro di un hacker per compromettere completamente una rete una volta che avrà accesso, se tutti i computer hanno sistemi operativi diversi. Tuttavia, se hanno già ottenuto l'accesso alla rete attraverso un computer, il loro lavoro è già stato semplificato. È dubbio che tutti i sistemi operativi saranno ugualmente induriti contro un attacco, quindi ci sarà sempre il collegamento più debole che può essere utilizzato per attaccare l'intera rete.
Devi anche considerare che compromettere l'intera rete non è necessariamente l'obiettivo finale di un hacker. Se tutto ciò che cercano sono i dati, è più probabile che l'intrusione passi inosservata, perché l'IT spenderà più risorse solo mantenendo la sicurezza per tutti i diversi sistemi operativi.
Leggi altre domande sui tag operating-systems network