GNU/Linux >> Belajar Linux >  >> Linux

ssh - mengapa saya bisa masuk dengan kata sandi parsial?

Dalam obrolan, ternyata sistem menggunakan penyimpanan kata sandi tradisional (non-bayangan) dan algoritme hashing kata sandi Unix tradisional. Keduanya adalah pilihan yang buruk dalam lingkungan keamanan saat ini.

Karena algoritme hashing sandi tradisional hanya menyimpan dan membandingkan 8 karakter pertama sandi, hal itu menjelaskan perilaku yang diperhatikan dalam pertanyaan awal.

Output sshd yang diposting menyertakan baris:

Could not get shadow information for user

Saya akan menganggap ini berarti setidaknya sshd (atau mungkin perpustakaan penyimpanan kata sandi PAM Unix) pada sistem ini menyertakan fungsionalitas kata sandi bayangan, tetapi karena beberapa alasan, vendor sistem memilih untuk tidak menggunakannya.


Dalam distribusi berbasis BusyBox, seperti yang biasanya dibuat dengan Yocto, ini mungkin dapat diperbaiki dengan mengaktifkan opsi yang sesuai di konfigurasi BusyBox. Solusi ini mengasumsikan bahwa Anda memiliki resepnya dan mampu membangun citra OS Anda sendiri yang diadaptasi, atau setidaknya biner BusyBox yang sesuai. Ini juga membutuhkan algoritme hashing kriptografi lanjutan (setidaknya SHA-256, SHA-512 yang lebih baik) tersedia (dari libc).

Dalam konfigurasi BusyBox, atur

  • Utilitas Login/Pengelolaan Kata Sandi
    • Dukungan untuk sandi bayangan → diaktifkan
    • Gunakan fungsi crypt internal → dinonaktifkan
    • Metode enkripsi sandi defaultsha512 atau sha256

Selain itu isi dari /etc/passwd dan /etc/shadow harus disesuaikan, e. g. menggunakan alat baris perintah dari build BusyBox yang disempurnakan (passwd , mkpasswd , chpasswd ), atau menyetelnya selama pembuatan gambar dengan EXTRA_USERS_PARAMS :

EXTRA_USERS_PARAMS = " \
    usermod -p '\$6\$<salt>\$<encrypted_pwd>' root; \
    useradd -m -s /bin/sh -G … -u … -p '…' <username>; \
    "

Linux
  1. Cara Mengatur Login SSH Tanpa Kata Sandi

  2. Otomatisasi kata sandi SSH di Linux dengan sshpass

  3. Ssh – Perlu Tty Untuk Menjalankan Sudo Jika Saya Bisa Sudo Tanpa Kata Sandi?

  1. Cara Menonaktifkan Login SSH Dengan Kata Sandi

  2. Cara mengizinkan ssh dengan kata sandi kosong di Linux

  3. Perintah sshpass:Otentikasi Kata Sandi Non-interaktif dengan SSH

  1. Mengapa login SSH saya lambat?

  2. Bagaimana saya bisa menggunakan SSH dengan proxy SOCKS 5?

  3. Rsync dengan SSH meminta kata sandi jarak jauh