Perché qualcuno non dovrebbe usare le password nella riga di comando?


33

Perché le persone hanno paura di scrivere password nella riga di comando?

Il file della cronologia si trova in ~/.history, quindi è disponibile solo per l'utente che ha eseguito i comandi (e root).


2
È possibile evitare di registrare alcuni comandi nel file della cronologia. Vedi le risposte in Evita di mantenere il comando nella storia
Luc M

5
Che schiffo! Anche se definisci la password con export mypass=secrete utilizzi a_command --password=$mypass, vedrai secretnella pstabella.
Luc M,

Risposte:


51

Le righe di comando non sono disponibili solo nella cronologia. Sono inoltre disponibili, ad esempio, nell'output del file system ps -ocmdo attraverso di esso /proc. ( /proc/<pid>/cmdline) che è dove psli legge.

Inoltre, le home directory degli utenti sono spesso leggibili in tutto il mondo o in gruppo; puoi rendere il file cronologico solo leggibile dall'utente, ma ciò potrebbe non sopravvivere alla cancellazione e alla ricreazione.


17

Le password sulla riga di comando sono solo una cattiva idea. Oltre ai metodi discussi nelle altre risposte:

  • / proc
  • elenco dei processi ( ps)
  • file cronologico dell'utente

I comandi utente possono essere visualizzati anche in queste posizioni:

  • registri di controllo
  • / Var / log / *

Inoltre, i comandi dell'utente possono anche essere visualizzati quando gli utenti accedono tra i sistemi, quindi in generale è una cattiva pratica e dovrebbe essere evitata in ogni momento.


3
+1 per il riferimento / var / log - nota che spesso i registri di sistema importanti possono essere inviati altrove e non rimangono necessariamente sullo stesso sistema. Pertanto, le password potrebbero essere inavvertitamente trasmesse anche attraverso la rete in formato testo.
Mark Glossop,

11

Il problema è la visibilità dei parametri (nella maggior parte dei casi agli altri utenti, anche per root) mentre il comando è in esecuzione. Vedi l'output di

ps -eo pid,user,args
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.