Masuk ke sudo dengan kata sandi hash

0

Saya ingin tahu apakah saya dapat meneruskan sudo password meminta password hashed sha512 (?) Dan masuk untuk me-root seperti itu. Jadi mungkin terlihat seperti ini:

[user@device ~]$ sudo su -
[sudo] password for user: 'some hashed password from shadow file' 

Apakah ini mungkin? Jika demikian, adakah cara mudah untuk mendapatkan kata sandi hash ini?

pengguna3119546
sumber

Jawaban:

0

Itu akan mengalahkan tujuan menyimpan kata sandi hash.

Saya yakin Anda tahu, tetapi kalau-kalau ide di balik hashing cukup sederhana - Anda menemukan fungsi yang mudah untuk menghitung dalam satu arah tetapi sangat sulit untuk menghitung di arah lain. Sebut saja fungsi itu hash.

Sekarang, ketika Anda pertama kali membuat kata sandi, katakan hunter2sistem akan berjalan hash('hunter2')dan menyimpan hasilnya dalam file shadow.

Kemudian ketika Anda masuk ke sistem Anda mengklaim bahwa kata sandi Anda hunter4dan sistem memeriksa ini dengan membandingkan hash('hunter4')dengan nilai yang disimpan dalam file bayangan. Jika hash adalah sistem yang sama akan membiarkan Anda masuk, jika tidak maka sistem akan menolak Anda.

Keuntungan dari hal ini adalah bahwa bahkan jika seseorang berhasil mendapatkan akses ke file bayangan Anda, mereka masih tidak tahu kata sandi Anda dan tidak dapat masuk seperti Anda karena meskipun mereka tahu hash, sangat sulit untuk menentukan kata sandi yang dihasilkan hash ini.

Singkatnya, tidak ada hash yang disimpan dalam /etc/shadowtidak dan tidak dapat digunakan sebagai pengganti kata sandi pengguna.

Akinos
sumber
Ini masuk akal, dan itulah yang saya harapkan. Saya hanya mencoba memanggil perintah dengan sudo tanpa harus 'menggema' kata sandi di jaringan. Pikiran tentang bagaimana saya bisa melakukan ini dengan cara yang lebih aman? Saya berpikir bahwa mungkin saya bisa melewatkan hash sebagai 'kata sandi' dan kemudian mereka dapat membandingkan hasil dari saya menjalankan 'hash (' hunter2 ')' dengan yang disimpan dalam file bayangan. Tapi saya mengerti mengapa mereka ingin menghilangkan opsi itu jika seseorang yang tidak sah mendapatkan akses ke file shadow.
user3119546
0

Tidak secara langsung pada baris perintah karena sudo mengharapkan kata sandi dalam plaintext.

Anda dapat menggunakan --askpassopsi untuk meminta sudo memanggil program pembantu untuk mendapatkan kata sandi untuknya, tetapi meskipun hal itu akan mencegah kata sandi muncul pada baris perintah, masih memerlukan kata sandi plaintext untuk meneruskan ke sudo

Anda bisa mendapatkan kata sandi hash dengan melihat file / etc / shadow sebagai pengguna root.

ztk
sumber
terima kasih, pada dasarnya saya ingin memanggil file dengan sudo tapi saya tidak ingin menggemakan kata sandi plaintext melalui jaringan. Saran?
user3119546
Gunakan ssh (atau protokol terenkripsi lainnya) untuk koneksi jaringan, yang akan mencegah siapa pun membacanya saat transit.
ztk