Linux o Windows: il problema di sicurezza [duplicato]

11

Quasi tutti quelli che sono cresciuti su Windows devono aver avuto l'idea (che io avevo) di Linux più sicuro di Windows - una delle ragioni per cui non devi preoccuparti di usare un antivirus su Linux !!

Qual è la base di questa nozione? E fino a che punto è vero?

Questo ha qualcosa a che fare con la natura open source di Linux? Il suo supporto per la comunità? La sua architettura di base (e la differenza da Windows)?

    
posta pnp 28.06.2012 - 07:09
fonte

7 risposte

11

Ho intenzione di soffermarmi su alcune delle cattive nozioni qui:

1) Linux è più sicuro a causa della minore condivisione del mercato.

Non nel mercato dei server, dove le macchine pubbliche vengono sbattute da bot, virus, hacker, ecc. tutto il giorno:

link

2) Windows è più sicuro nelle versioni recenti.

Almeno a livello di kernel, vengono visualizzati più report CVE di exploit di esecuzione remota e escalation di privilegi in Windows, più attacchi DoS locali a un ambiente multiutente in Linux, inoltre sono disponibili CVE più critici su Windows (Ho avuto un sacco di guasti statistici da un database CVE ma non riesco a trovare quel post che ho fatto mesi fa, così frustrante! Google non mi sta aiutando a trovarlo ...).

Come puoi vedere Server 2008 ha una media ponderata molto più alta di CVE:

link (più, tutte le vulnerabilità di Linux dagli 1,2 giorni rispetto agli ultimi 5 anni di sviluppo 2008!)

Ovviamente usi qualcosa come Ubuntu che viene fornito con un po 'di software e pre-configurazione, sono al capriccio del software in esecuzione su di esso.

La mia opinione sull'argomento: Linux è costruito attorno a molti concetti Unix, 40 anni di sviluppo software e le persone picchiano queste scatole fino alla morte, è sicuro principalmente dalla prova di Unix a causa del fuoco, e questo ha aiutato immensamente, molte lezioni sono state apprese e applicate direttamente a Linux.

Has this got anything to do with the Open-source nature of Linux?

Molto ha a che fare con questo, almeno con la velocità alla quale viene indirizzato il volume più alto di CVE. Questo permette anche di trovare e risolvere molti problemi minori (principalmente a causa della sua popolarità , perché open-source senza popolarità significa pochi occhi sul codice e poco interesse da risolvere).

Its underlying architecture (and the difference from Windows)?

Essere costruiti attorno a un ambiente multiutente aiuta un sacco, questi sistemi sono stati creati per avere tonnellate di persone su di loro in una volta, e nessun utente dovrebbe essere in grado di interromperne un altro.

    
risposta data 28.06.2012 - 21:29
fonte
8

Motivi validi:

  1. La più piccola base utente in Linux rende Linux desktop un target meno attraente. Se solo lo 0,1% dei computer esegue Ubuntu 10.04 e il tuo cavallo di Troia funziona solo su quella specifica versione di Linux, probabilmente non prenderà mai piede. Se il tuo cavallo di Troia funziona solo su Windows XP, puoi comunque attaccare il ~ 25% del mercato.
  2. Spesso (non sempre) più userled più informato e più attento alla sicurezza. Detto questo, i sistemi operativi come Ubuntu hanno reso Linux più accessibile e puoi trovare persone che fanno cose stupide su di esso.

Inoltre, ragioni abbastanza discutibili si potrebbe sostenere che Linux ha spesso un design più sicuro (che potrebbe non essere più così vero come altri sistemi operativi hanno giocato a catchup).

  1. Buona separazione dei privilegi e controlli di accesso con su / sudo , che in realtà non esiste nelle versioni precedenti di Windows.
  2. Supponiamo che tu abbia bisogno di un nuovo software (editor di immagini, LaTeX, o Python, ecc.) che non sia preinstallato nel tuo sistema operativo. In Linux, il 99% delle volte si utilizza il gestore pacchetti per scaricare e installare automaticamente il software crittografato con firma convalidato da una catena di trust. Lo userà automaticamente anche per gli aggiornamenti (quindi è facile mantenere aggiornato tutto il software a livello di sistema, rattoppando rapidamente i buchi di sicurezza). In Windows, la maggior parte delle volte in cui ho bisogno di installare qualcosa di nuovo, devo cercare sul web, scaricare e installare da qualche sito Web http che potrebbe caricare il loro software con spyware / bloatware / trojan horse o potrei essere soggetto ad un attacco MITM e scaricare / installare alcuni virus, e ogni applicazione ha il proprio (diverso) programma di installazione / aggiornamento automatico. (Detto questo, trovo che le persone si fidino troppo dei PPA, script casuali su Internet o aggiungono estensioni del browser come principali vulnerabilità di sicurezza di entrambi i sistemi Linux / Windows).
  3. %codice%. La connessione standard ad un'altra macchina remota tramite ssh è molto comoda e potente, che è di gran lunga superiore a qualsiasi autenticazione remota Windows in termini di sicurezza. Ogni volta che ci si connette a una macchina SSH, si verifica in modo crittografico che la chiave host dell'altra macchina non sia stata modificata dalla chiave utilizzata in precedenza; puoi usare la tua chiave privata ssh per rispondere a un token di sfida senza lasciare che gli intercettatori utilizzino gli attacchi di riproduzione o i keylogger vedano la tua password. Quindi tutto il traffico viene inviato crittografato tra le due macchine; inoltre è banale da configurare su una scatola Linux.
  4. Una varietà di strumenti di sicurezza Linux gratuiti: SELinux, AppArmor, wireshark, iptables (o un wrapper come ufw), ssh, cron, top (davvero htop), fail2ban, tripwire, GPG, OpenSSL, md5sum / sha256sum, ecc. È anche molto facile configurare script, eseguire la scansione di un file di registro e inviare un avviso via email, e fare tutto dalla riga di comando, ecc. Concessi la maggior parte (tutti?) Di questi probabilmente hanno equivalenti di Windows, ma tendono a non essere liberi oa cambiare molto tra le versioni. L'impostazione di un cronjob è fondamentalmente per automatizzare alcune attività è praticamente la stessa che era negli ultimi 20 anni; mentre l'impostazione di un'attività automatica in Windows avrà notevoli cambiamenti tra i sistemi operativi.

Motivi non validi:

  1. La legge di Linus: "dato abbastanza occhio, tutti i bug sono superficiali", quindi l'open-source è più sicuro del software closed-source. Non trovo questa argomentazione particolarmente convincente dal momento che sono stati scoperti significativi buchi di sicurezza per mesi / anni in roba open source (ad esempio, Debian OpenSSL ). È anche peggio di come gli attaccanti possono leggere la fonte, cercare bug (o anche provare a introduce bug mascherati nella codebase ). Tuttavia, non credo che il software di tipo "close-sourced" sia intrinsecamente più sicuro - le persone continuano a commettere errori e puoi facilmente pagare qualcuno per introdurre buchi in una base di codice proprietaria (e con meno eyeballs potrebbe essere impossibile notare); chiaramente i bug e le backdoor di sicurezza esistono spesso in software di close-sourced e sono attaccati pure. (Considero questo più o meno un pareggio.)
risposta data 28.06.2012 - 19:01
fonte
5

Sospetto che la situazione di virus / malware su Linux sia praticamente quella che sarebbe "normale", e che la situazione di virus / malware su Windows sia un fenomeno statistico, più di un "Dragon King" che un Black Swan.

Windows ha un insieme insolitamente barocco di API, Win32, API nativa NT, e così via, e ci sono stati alcuni problemi tra loro, come il fatto che Win32 è fondamentalmente un'interfaccia ASCII mentre nativo NT è Unicode. Questo ha almeno facilitato il malware. Come esempio di un dettaglio Rococo, pensa ai nomi dei file di dispositivi magici, AUX, CON, LP che funzionano in qualsiasi directory.

L'API nativa di Windows non è mai stata realmente documentata, e questa mancanza di documentazione fluisce però su altre cose, quali: quale serie di estensioni dei nomi di file è per i file eseguibili? Perché il nome del file determina se un file è eseguibile o meno? Il worm NIMDA non si è diffuso attraverso alcuni problemi con i file ".eml", ad esempio. Nessuno sapeva che i file .eml erano eseguibili al momento.

Windows non ha una tradizione di separazione dei privilegi, anzi ha una tradizione di singolo utente root. Molte applicazioni lo assumono ancora. Windows non ha una tradizione di separazione dei dati dai file eseguibili. Fornisco macro di Word incorporate nel file .doc come esempio di dati e istruzioni non separati che hanno storicamente causato problemi di virus.

Linux ha almeno le tradizioni opposte a tutti i punti precedenti: controlli di accesso discrezionali di lieve efficacia, abbastanza semplici da essere applicati quotidianamente, ma abbastanza completi da tenere a bada i virus tradizionali di tipo file. L'interfaccia di chiamata di sistema è solo moderatamente complicata e poiché il codice sorgente è disponibile gratuitamente esistono più fonti di documentazione. Gli eseguibili in genere vivono nelle directory "bin" e i dati risiedono in un altro. Ogni eseguibile ha il proprio file di configurazione, piuttosto che condividere il vecchio registro. I file di dati sono contenuti in directory per utente e quasi mai contengono il tipo di macro onnipotenti contenute in Word, ecc. File di dati.

Inoltre, "linux" non esiste realmente come fa "Windows". Esistono centinaia di distro, ognuna personalizza quasi ogni aspetto dei dettagli di basso livello. Diverse versioni del compilatore, diversi kernel Linux, alcuni completamente modulari, alcuni senza moduli. Questo è vero praticamente per ogni aspetto del software di un sistema, dal kernel, ai client di posta elettronica. Laddove gli utenti "Windows" utilizzano e-large i client di posta elettronica di Outlook, gli utenti Linux utilizzano una serie di centinaia di client diversi, ciascuno in decine di versioni. Non esiste una base di utenti per una data versione di un dato software: la base di utenti non è solo fratturata, è in frantumi. Ciò rende molto più difficile trovare una vulnerabilità su un numero adeguato di host o scrivere un exploit che funzioni su un numero sufficiente di istanze di software.

    
risposta data 28.06.2012 - 21:27
fonte
4

IMHO, ci sono 3 ragioni principali:

  • Fino a poco tempo fa MSWindows non aveva una separazione dei privilegi effettiva.
  • Linux tende ad essere usato da persone tecnicamente più istruite (che saranno scettici riguardo alle e-mail che proclamano "I Love You")
  • Windows ha una maggiore penetrazione nel mercato.

Lasciando da parte il primo punto, è discutibile che Linux sia intrinsecamente più sicuro di MSWindows (IMHO lo è, ma è un argomento piuttosto lungo e noioso).

Dato che MSWindows ora ha una separazione dei privilegi migliore di quella abituale, è interessante notare che esiste una particolare distribuzione di Linux con una strong penetrazione del mercato, utilizzata dal proletariato e che ha un approccio molto insolito alla separazione dei privilegi - che sta attirando un sacco di sforzo di sviluppo di malware - Android.

Anche se non raccomanderei di non eseguire un antivirus e un firewall su una macchina MSWindows, la cosa più importante che si possa fare per mantenere pulito il computer è configurarla correttamente e aggiornarsi con le patch fornite dal fornitore .

    
risposta data 28.06.2012 - 10:20
fonte
3

Personalmente ritengo che questa nozione sia dovuta al fatto che Windows è molto più diffuso di Linux. Inoltre, Linux viene solitamente utilizzato in ambienti aziendali che dovrebbero avere una sicurezza migliore rispetto ai sistemi e alle reti domestiche. Questo potrebbe contribuire a pensare che Linux sia più sicuro di Windows.

Naturalmente, entrambi i sistemi possono essere vulnerabili se non configurati correttamente e corretti regolarmente. Entrambi i sistemi hanno anche il potenziale per essere sicuri se impostati correttamente.

    
risposta data 28.06.2012 - 08:30
fonte
-2

Molti programmi di malware attuali (virus, worm, Trojan, spyware) sono basati su un sistema basato su Windows, quindi ci sono più applicazioni antivirus e antimalware per Windows.

Ma se qualcuno vuole attaccare il tuo sistema Linux, è facile creare un programma dannoso usando lo script bash così come lo è usare gli script di Windows.

    
risposta data 28.06.2012 - 08:32
fonte
-3

"Linux più sicuro di Windows" non è necessariamente vero, perché Windows viene sempre fornito come un sistema operativo completo, mentre Linux ha molte versioni di distribuzione.

Ci sono tante funzionalità di sicurezza avanzate in Linux come in Windows, ma non tutte le distribuzioni Linux le stanno usando.

Alcune di queste distribuzioni sono altamente sicure e altre no - alcune non impongono il MAC o l'ingabbiamento dei metodi affidabile integrato per impostazione predefinita.

    
risposta data 28.06.2012 - 20:28
fonte

Leggi altre domande sui tag