Posso omettere gli ultimi caratteri della mia password su Ubuntu 14.04


27

Abbiamo Ubuntu 14.04.3 LTS sui nostri PC da laboratorio nel mio college. Oggi ho notato un bug grave.

Posso saltare gli ultimi caratteri della mia password e continuare ad accedere senza problemi. Ad esempio, se la mia password è a1b2c3d4e5f6g7h8, posso digitare a1b2c3d4ee comunque accedere. Molte altre persone hanno notato questo errore.

Nota che la password non può essere completamente ignorata: il massimo che sono stato in grado di saltare è di 7 caratteri. Se provo ancora a saltare, viene visualizzato il messaggio " Password non valida, riprova ". Si noti inoltre che qualsiasi permutazione casuale di una sottostringa della password non funziona.

Questo succede anche se blocco manualmente lo schermo e inserisco di nuovo la password. Lo stesso bug è presente durante l'utilizzo sshe, bene, cercare su Google e cercare Stack Overflow non ha aiutato.

La mia domanda è: come posso risolvere questo bug, se posso risolverlo? Il nostro sistema non sarà disponibile prima di lunedì e questo mi preoccupa davvero.

IMPORTANTE: si noti che nessuno degli account degli studenti è nell'elenco dei sudoers, solo il sysadm ha accesso come root. Inoltre, quando compare sshnel mio account viene visualizzato quanto segue :

Welcome to Ubuntu 14.04.3 LTS (GNU/Linux 3.13.0-65-generic i686)

* Documentation:  https://help.ubuntu.com/

543 packages can be updated.
350 updates are security updates.

New release '16.04.1 LTS' available.
Run 'do-release-upgrade' to upgrade to it.

AGGIORNAMENTO: Sembra che il problema importante non sia il numero di caratteri omessi alla fine, ma il fatto che è possibile accedere con i primi otto o più caratteri della password.


2
Sospetterei che un'autenticazione esterna (LDAP, Active Directory, ecc.) Sia in errore e non convalidi le password in modo corretto. Parla con il tuo amministratore di sistema.
André Borie,

8
350 aggiornamenti di sicurezza sono disponibili. Uno di questi probabilmente risolve anche il bug Heartbleed
AnthumChris,

4
Il tuo amministratore di sistema non sembra essere disponibile da mesi ...
Michael Hampton,

Risposte:


28

Se non hai accesso come amministratore, non c'è molto che puoi fare.

Detto questo, ciò sembra essere dovuto all'incompetenza dell'amministratore. Questo sembra sospettosamente simile alla crittografia della password utilizzando la crypt(3)funzione classica . Da man 3 crypt:

crypt () è la funzione di crittografia della password. Si basa sui dati
Algoritmo standard di crittografia con variazioni previste (tra l'altro
cose) per scoraggiare l'uso di implementazioni hardware di una ricerca chiave.

chiave è la password digitata da un utente.

salt è una stringa di due caratteri scelta dall'insieme [a-zA-Z0-9./]. Questo
stringa viene utilizzata per perturbare l'algoritmo in uno di 4096 modi diversi.

Prendendo i 7 bit più bassi di ciascuno dei primi otto caratteri di
la chiave, si ottiene una chiave a 56 bit.   Questa chiave a 56 bit viene utilizzata per crittografare
ripetutamente una stringa costante (di solito una stringa composta da tutto
zeri). Il valore restituito punta alla password crittografata, una serie
di 13 caratteri ASCII stampabili (i primi due caratteri rappresentano
il sale stesso). Il valore restituito punta a dati statici il cui contenuto
viene sovrascritto da ogni chiamata.

Suona familiare?

Nessun sistema Ubuntu recente lo utilizza per impostazione predefinita. L'amministratore deve aver configurato manualmente la configurazione della password per utilizzare questo. Oppure potrebbero utilizzare l'autenticazione esterna (LDAP o simile) e non configurarla o meno in modo sicuro.

Vedi anche: Le password sui moderni sistemi Unix / Linux sono ancora limitate a 8 caratteri?


4
Quindi l'amministratore sta probabilmente usando LDAP ..... Proverò a contattarlo. Grazie!
Dimitri Markovich,

1
OP potrebbe ulteriormente confermarlo vedendo se capovolgere l'ottavo bit di uno dei primi 8 caratteri fa la differenza. Potrebbe essere difficile da fare in un ambiente UTF-8 però.
Jonas Schäfer,

@JonasWielicki: capovolgere l'ottavo bit di uno dei primi otto caratteri fa la differenza: la password viene visualizzata come non valida. Quindi posso usare solo i primi otto o più caratteri della mia password originale.
Dimitri Markovich,

@ die-policy137 Come accennato, immagino sia difficile capovolgere solo l'ottavo bit - con UTF-8, ciò comporterebbe l' utilizzo di due byte anziché uno per codificare il punto di codice. Quindi questo non è un test definito, sfortunatamente, a meno che uno non abbia un controllo molto stretto sulla codifica utilizzata dal terminale e / o sui dati inviati per l'autenticazione.
Jonas Schäfer,

7

C'è stato un tempo, in un millennio precedente, in cui tutti Unixen crittografavano le loro password in questo modo. Scarta tutto oltre l'ottavo personaggio, aggiungi sale, passa attraverso una funzione di hash e il gioco è fatto.

La grande domanda qui è se le password crittografate sono disponibili per i potenziali hacker. Se lo sono, questo è un grosso problema. Se non lo sono, non è davvero un grosso problema. La password di otto caratteri ha molte possibilità. Se devi fare un vero tentativo di accesso per controllare una potenziale password, il furto richiederà molto tempo. Inoltre, i tentativi attiveranno allarmi.

Quindi, la grande vittoria qui sono le password shadow. Tuttavia, la gente ha iniziato a pensare che questo non fosse abbastanza buono e ogni variante Unix ha implementato il proprio modo di estendere la lunghezza massima della password. Questi non erano più compatibili.

Per un po ', se volevi che più macchine con diverse varianti Unix usassero la stessa password, dovevi usare il vecchio tipo di crittografia.

È del tutto possibile che quando questi laboratori informatici sono stati istituiti per la prima volta fosse ancora così. E questo tipo di installazione ha inerzia. I nuovi client sono impostati per corrispondere al server. I nuovi server sono impostati per corrispondere ai client.

Oggi le cose vanno meglio. Ci sono meno varianti Unix in uso e collaborano meglio.

Non sono abbastanza competente per dirti come risolvere questo problema, ma è un compito per l'amministratore, non per te.


Ok allora .... Vorrei poter aver fatto qualcosa però.
Dimitri Markovich,

"Unixen" su "Unicies"? Non l'avevo mai sentito prima, bel tocco
gatto

1
@cat Apparentemente è un portmanteau di Unix e boxen .
Michael Hampton,

2
Poiché Unix è una parola inventata, anche il plurale può essere inventato :)
Thorbjørn Ravn Andersen,

Eight characters passwords has a lot of possibilities.Per l' entropia delle password , supponi che l'attaccante sappia come generare le password. Se usi parole a caso , otterrai al massimo 2 parole o 22 bit di entropia.
NonlinearFruit
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.