Quali vulnerabilità specifiche sto creando disabilitando la password sudo?


16

Ecco alcune istruzioni su come disabilitare la sudopassword. Questi portano il seguente avvertimento

Se disabiliti la sudopassword per il tuo account, comprometterai seriamente la sicurezza del tuo computer. Chiunque sieda sul tuo account incustodito e registrato avrà rootaccesso completo e gli exploit remoti diventeranno molto più facili per i cracker malevoli.

Non sono preoccupato per le persone che ottengono l'accesso fisico alla mia macchina. Quali exploit remoti sono resi possibili o più semplici se dovessi ignorare questo avviso e disabilitare la password?

Risposte:


23

Se si consente sudo senza password, chiunque riesca a eseguire codice sul proprio computer come utente può eseguire banalmente il codice come root. Questo potrebbe essere qualcuno che usa la tua console mentre sei loggato ma non davanti al tuo computer, di cui non sei preoccupato (comunque, qualcuno con accesso fisico può fare praticamente quello che vuole). Questo potrebbe anche essere qualcuno che accede al tuo account su un altro computer su cui hai installato il tuo computer. Ma potrebbe anche essere qualcuno che sfrutta una falla di sicurezza remota, ad esempio un sito Web che sfrutta un bug del browser per iniettare codice nell'istanza del browser.

Quanto è grande un affare? Non molto, per diversi motivi:

  • Un attaccante che ha trovato un buco remoto può probabilmente trovare anche un buco della radice locale.
  • Un certo numero di aggressori non si preoccupa dei privilegi di root. Tutto quello che vogliono è inviare spam e infettare altre macchine, e possono farlo come il tuo utente.
  • Un utente malintenzionato che ha accesso al tuo account può rilasciare un trojan che cattura le sequenze di tasti (inclusa la password) o che trasporta sulle spalle qualunque sia il mezzo che usi per ottenere il root per eseguire il comando da solo.
  • Se sei l'unico utente sul tuo computer, non c'è molto da proteggere che non sia accessibile come il tuo utente.

D'altro canto:

  • Se sei aggiornato con gli aggiornamenti di sicurezza, l'attaccante potrebbe non trovare un buco locale da sfruttare.
  • Un attaccante non root non può cancellare molto bene le sue tracce.
  • Dover digitare una password di tanto in tanto non è un peso.
  • Dover digitare una password ti ricorda che stai facendo qualcosa di pericoloso (come in: può perdere dati o rendere il tuo computer inutilizzabile). (Come utente non root, l'unico vero pericolo è quello di cancellare i dati per errore, ed è di solito ovvio quando stai cancellando qualcosa e dovresti stare molto attento.)

9

Penso che la password per sudo possa proteggerti solo da due cose:

  1. danno accidentale del proprio sistema (ad esempio eseguendo alcuni rm -rfcon percorso relativo dalla cronologia della shell in directory diverse rispetto a prima, o qualcosa del genere)
  2. esecuzione di script (dannosi) che invoca sudoe tenta di danneggiare il sistema (ma non credo che questo tipo di software dannoso sia molto popolare)

Se si desidera è possibile utilizzare NOPASSWDl'opzione solo per i comandi selezionati che non farà male il vostro sistema (per i redattori o per il riavvio dei servizi) e conservare la password per altri comandi.


-1 per il pericoloso suggerimento che consentire l'esecuzione di un editor come root non può danneggiare il sistema. A quel punto potresti anche lasciare che tutto funzioni come root perché una sessione dell'editor abilita comunque l'esecuzione di codice arbitrario.
Caleb,

2

Vale la pena notare che alcune organizzazioni competenti in realtà preferiscono il sudo senza password quando hanno utenti che hanno bisogno di accedere a molti host remoti diversi, in particolare se questo include host con diversi livelli di sicurezza.

Il problema con l'inserimento della password è che si sta fornendo la password a sistemi remoti su base regolare. Uno dei motivi per cui usiamo SSH è quello di evitare esattamente quel tipo di falla nella sicurezza. È una questione di compromessi: stai aumentando la probabilità che la password di un utente venga compromessa al fine di ridurre la probabilità che un utente malintenzionato che ha compromesso una sessione o una chiave sia in grado di ottenere l'accesso come root. In particolare, immagina il seguente scenario:

  • grande organizzazione
  • molti host
  • gli host hanno diversi livelli di sicurezza
  • l'accesso non root è già dannoso
  • le password degli utenti sbloccano molte cose

Nello scenario che ho descritto, sudo senza password può aumentare la sicurezza proteggendo la password dell'utente. Ciò è simile agli attacchi di riutilizzo delle password che sono diventati comuni su Internet, tranne per il fatto che la vulnerabilità deriva da un sistema di autenticazione unificato piuttosto che dall'effettivo riutilizzo delle password.

A meno che tu non sia un'azienda gigante, sudo con password probabilmente aumenterà la tua sicurezza, ma non necessariamente di una grande quantità. A meno che tu non sia davvero un professionista nella sicurezza dei sistemi, o sia un host con nulla di particolarmente prezioso, ti consiglierei di lasciarlo attivo.


-1

Se non lo hai sshdinstallato, è abbastanza sicuro, a meno che tu non rompa qualcosa da solo.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.