Neden biri komut satırında parola kullanmamalı?


33

İnsanlar neden komut satırına şifre yazmaktan korkuyor?

Geçmiş dosyası içinde bulunur ~/.history, bu nedenle yalnızca komutları (ve kökü) uygulayan kullanıcılar tarafından kullanılabilir.


2
Geçmiş dosyanızda bazı komutları kaydetmekten kaçınabilirsiniz. Tarihte emri tutmaktan kaçınmak
Luc M

5
Yuk! Eğer şifrenizi tanımlamak bile export mypass=secretve kullanmak a_command --password=$mypassgörürsünüz secretde psmasaya.
Luc M,

Yanıtlar:


51

Komut satırları sadece tarihte mevcut değildir. Bunlar ayrıca örneğin dosya sisteminin çıktısında ps -ocmdveya bu /procsistemde bulunur. ( /proc/<pid>/cmdline) psonları okuduğu yer.

Ayrıca, kullanıcıların ana dizinleri genellikle dünya veya grup tarafından okunabilirdir; tarihçe dosyasını yalnızca kullanıcı tarafından okunabilir hale getirebilir, ancak silme ve yeniden oluşturmaya devam edemez.


17

Komut satırındaki şifreler, başından beri kötü bir fikirdir. Diğer cevaplarda tartışılan yöntemlere ek olarak:

  • / proc
  • işlem listesi (ps )
  • kullanıcının geçmiş dosyası

Kullanıcı komutları aşağıdaki konumlarda da görünebilir:

  • denetim günlükleri
  • / Var / log / *

Ek olarak, kullanıcıların komutları, kullanıcılar sistemler arasında oturum açtığında da görünebilir, bu nedenle genel olarak kötü bir uygulamadır ve her zaman kaçınılması gerekir.


3
/ Var / log başvurusu için +1 - önemli sistem günlüklerinin sıklıkla başka yerlere gönderilebileceğini ve mutlaka aynı sistemde kalmayacağını unutmayın. Böylece şifreleriniz istemeden de olsa ağ üzerinden açık metin biçiminde iletilebilir.
Mark Glossop

11

Sorun, komut çalışırken parametrelerin görünürlüğüdür (çoğu durumda diğer kullanıcılar için, hatta root için). Çıktısını görmek

ps -eo pid,user,args
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.