Aumenta la sicurezza senza utilizzare i moduli del kernel "dinamici"?

5

Recentemente ho letto che NON usare moduli kernel caricabili potrebbe aumentare la sicurezza. Nella mia interpretazione ciò consiste nel ricomporre il kernel con solo moduli kernel integrati. (come disabilitare il supporto dei moduli del kernel caricabili? - in vari sistemi operativi, come: debian, fedora, openbsd, ecc.)

Q: È vero? O ci sono soluzioni alternative per questo? Quali sono gli OS che potrebbero essere usati in questo modo?

ps .: link

    
posta LanceBaynes 26.07.2011 - 08:44
fonte

3 risposte

6

NOT using loadable kernel modules could increase security.

Sì, la teoria è la seguente:

  • Gli hacker vogliono cooptare il kernel; questo dà loro più potere e una migliore capacità di nascondersi
  • I kernel dinamici consentono l'inserimento di moduli dannosi, una comoda interfaccia per l'hacker per cooptare il kernel
  • Se il kernel è compilato staticamente, l'utente malintenzionato non può utilizzare questo vettore di attacco

Ci sono diversi compromessi che rendono questo aspetto meno attraente nella pratica:

  • I kernel dinamici hanno introdotto un'incredibile flessibilità, e non c'è modo migliore per imparare che cercare di definire la configurazione del kernel compilata staticamente che verrà effettivamente eseguita e fare ciò di cui hai bisogno. È un processo trial-and-error di grandi dimensioni.
  • I kernel statici non sono immuni dall'iniezione di codice dannoso, quindi disabilitare la funzionalità di caricamento dinamico non cancella completamente il vettore di attacco.

Penso che la compilazione di kernel statici per motivi di sicurezza fosse un'idea che aveva tempo, ma è passato del tempo e non è più una scelta di sicurezza economica per la maggior parte degli ambienti.

    
risposta data 26.07.2011 - 15:31
fonte
4

NOT using loadable kernel modules could increase security. Is this true?

Sì, ma così estrarrà la tua scheda di rete e riempiendo tutte le tue porte di I / O con resina epossidica [1 ]. Tuttavia, non penso che tu voglia farlo.

A seconda di come lo definisci, la maggior parte dei sistemi operativi moderni ha moduli del kernel dinamici. Penso che i driver in modalità kernel di Windows siano qualificati come Mac OS X ha le estensioni del kernel.

La triste realtà è che mentre i moduli / estensioni / driver del kernel presentano vulnerabilità, è molto più probabile che il tuo computer venga compromesso usando lo stesso nome utente e la stessa password sul tuo computer locale che usi su [Facebook, google, stackexchange, ecc. ], o non disattivare un servizio di accesso remoto come tftp, rdp, ard, ftp, WebDAV, ecc. Ci sono certamente molti problemi di sicurezza sui sistemi di computer commerciali standard, ma mi piacerebbe assicurarmi di aver risolto i problemi più comunemente sfruttati prima cercando di liberare il mio sistema dai moduli dinamici del kernel.

[1] Sì, alcune aziende effettivamente lo fanno, vedi Pod Slurping: misure aggiuntive , Protezione delle porte USB e Norme di utilizzo accettabili: paragrafo 6 .

    
risposta data 26.07.2011 - 10:08
fonte
1

Se la sicurezza informatica fosse semplicemente una questione di non fare cose pericolose, allora avremmo risolto il problema ormai. Ma questo include lo spegnimento di Internet, che è la cosa più pericolosa di tutte, quindi forse un piccolo pericolo non è poi così male.

Se un hacker ha già violato la tua macchina Linux, un modo in cui può elevare i privilegi è attraverso i moduli del kernel caricabili. Ma ci sono anche molti altri modi. Cercando di sbarazzarsi di questo (che davvero non puoi, pratico), l'hacker sceglierà semplicemente un altro modo. Se chiudi tutte le strade, avrai un mattone inutilizzabile di un sistema.

Invece di casi rari e bizzarri come questo, dovresti preoccuparti dei casi più comuni. Ad esempio il modo in cui lasci sempre un # root prompt sul sistema.

    
risposta data 27.07.2011 - 01:47
fonte

Leggi altre domande sui tag