È più sicuro per ssh come utente privilegiato rispetto a ssh e sudo?

22

Mi sono imbattuto in questo vecchio documento, discutendo sulla possibilità di divulgare informazioni sulla lunghezza della password quando si utilizza SSH: Analisi dei tempi delle sequenze di tasti e degli attacchi a tempo su SSH . Il documento è stato discusso qui prima .

Questo mi ha fatto meravigliare: l'inserimento delle password su SSH dovrebbe essere generalmente evitato? In questo caso, non sarebbe preferibile connettersi come utente privilegiato (utilizzando una chiave SSH) piuttosto che connettersi come utente non privilegiato e successivamente sudo nell'account root? Usando il metodo precedente, non verrebbe trasferita alcuna password, mentre con quest'ultimo potrebbe essere possibile indovinare la password. Anche se ssh è configurato per consentire solo il login senza password, questo potrebbe essere usato per leggere / inviare mail o accedere a qualsiasi altro servizio disponibile all'utente.

Questo ragionamento suona? Ho avuto una premessa sbagliata da qualche parte?

    
posta tarleb 01.12.2015 - 12:07
fonte

4 risposte

19

È una questione di valutazione del rischio.

Da un lato hai un articolo speculativo in cui basi le informazioni effimere su alcuni tempi imprecisi.

D'altra parte si ha la capacità di connettersi a ssh come utente (idealmente usando le chiavi ssh), quindi di fare un sudo (possibilmente senza password, dipende dal caso specifico). Sei in un ambiente altamente standard, con le migliori pratiche in atto.
Anche se usi ssh con una password, digita una password per sudo - ti trovi nel regno delle best practice di cui sopra.

La compromissione delle email tramite gli attacchi temporali è IMHO non realistica (ciò che ottieni è, best case, alcune lunghezze di "roba".) Con fortuna e ambienti specifici puoi correlare questa lunghezza con le password).

    
risposta data 01.12.2015 - 12:44
fonte
12

"connettersi come utente non privilegiato e successivamente sudo nell'account root" è in genere il modo consigliato di utilizzare i sistemi UNIX. Molte distribuzioni sono configurate di default per non consentire accessi con root e si aspettano che gli utenti a sudo quando hanno bisogno dei privilegi di root. Ma la ragione che hai dato non è tra le principali.

  • Su un sistema con più amministratori, non è necessario condividere la stessa password di root tra più persone, perché ogni sudoer può avere una password di root diversa.
  • Su un sistema con più amministratori, sudo può registrare quale utente esegue un comando. Quando tutti gli amministratori utilizzano l'account root , tutte le voci del registro verranno visualizzate come root dell'utente e non è possibile stabilire chi l'ha effettivamente fatto.
  • Gli aggressori che tentano di indovinare la password devono anche indovinare un nome utente valido.
  • Impedisce alle persone di utilizzare i privilegi di root per le attività che non lo richiedono, perché digitare sudo davanti a ogni comando è un lavoro aggiuntivo.
risposta data 01.12.2015 - 12:58
fonte
4

Un'altra cosa da considerare se accedi come un normale utente e poi usi sudo è che chiunque rompa il tuo normale account utente può modificare il tuo ambiente in modo che la prossima volta che accedi e provi a usare sudo intercettano la richiesta e catturino la tua password e / o esegui il loro software malvagio come root.

Nel complesso, mentre scoraggerei accessi basati su password come root, penso che gli accessi alla ssh key come root non siano nel complesso più rischiosi rispetto ad altre opzioni per ottenere l'accesso root e sono molto più convinenti di dover usare sudo.

    
risposta data 01.12.2015 - 16:27
fonte
3

Altri motivi per non ssh come root:

  • sudo può accedere ogni volta che viene utilizzato in modo da poter tenere traccia di chi ha fatto cosa quando
  • digitazione errata di un comando per cui non hai bisogno di privilegi è molto meno probabile che faccia gravi danni
  • puoi avere una password chiave diversa dalla tua password utente, il che significa che un utente malintenzionato dovrebbe avere la chiave AND 2 password diverse per compromettere quel sistema
  • migliori registri ssh in modo da poter sapere che john ha effettuato l'accesso a ssh e poi a linda al posto della misteriosa radice.
  • se sei preoccupato che gli attacchi temporali possano essere usati per individuare una password, dovresti essere più preoccupato di riutilizzare una password con altri server / servizi. Sarebbe meglio applicare una politica di non riutilizzo delle password poiché è molto più probabile che un utente malintenzionato abbia trovato il nome utente e la password da un altro servizio piuttosto che un utente malintenzionato abbia accesso alla rete sufficiente a determinare la velocità con cui i tasti vengono effettivamente utilizzati che.
  • se utilizzi un gestore di password e devi copiare / incollare le password nel tuo terminale, non puoi calcolare il tempo necessario perché le tue dita si spostino da una chiave all'altra.
risposta data 01.12.2015 - 17:22
fonte

Leggi altre domande sui tag