W rzeczywistości plik / etc / shadow został utworzony, aby umożliwić odejście od publicznie czytelnej listy nazw użytkowników i haseł.
Trzymaj się, to będzie trochę lekcja historii, zanim dojdziemy do właściwej odpowiedzi. Jeśli nie interesuje Cię historia, po prostu przewiń w dół.
W dawnych czasach uniksopodobne systemy operacyjne, w tym Linux, ogólnie zachowywały hasła w / etc / passwd. Ten plik był czytelny na całym świecie i nadal jest, ponieważ zawiera informacje umożliwiające mapowanie na przykład między numerycznymi identyfikatorami użytkowników a nazwami użytkowników. Informacje te są bardzo użyteczne nawet dla zwykłych użytkowników w całkowicie uzasadnionych celach, więc możliwość odczytu świata plików była bardzo korzystna dla użyteczności.
Nawet wtedy ludzie zdali sobie sprawę, że posiadanie haseł w postaci zwykłego tekstu w pliku w znanej lokalizacji, którą każdy, kto mógłby się zalogować, mógł swobodnie czytać, było złym pomysłem. W pewnym sensie hasła zostały zaszyfrowane. Jest to stary mechanizm mieszania haseł „szyfrowania”, który prawie nigdy nie jest używany w nowoczesnych systemach, ale często obsługiwany do starszych celów.
Spójrz na / etc / passwd w swoim systemie. Widzisz to drugie pole, które mówi x
wszędzie? Kiedyś przechowywał zaszyfrowane hasło do danego konta.
Problem polegał na tym, że ludzie mogli pobrać plik / etc / passwd, a nawet go nie pobrać, i pracować nad złamaniem haseł. Nie był to duży problem, gdy komputery nie były szczególnie wydajne (Clifford Stoll, w „ The Cuckoo's Egg” , jak pamiętam, daje czas na zaszyfrowanie jednego hasła w systemie klasy IBM PC w połowie lat 80. XX wieku ), ale stał się problemem wraz ze wzrostem mocy obliczeniowej. W pewnym momencie, przy porządnej liście słów, złamanie tych haseł stało się zbyt łatwe. Z przyczyn technicznych ten schemat nie obsługuje także haseł dłuższych niż osiem bajtów.
Dwie rzeczy zostały zrobione, aby rozwiązać ten problem:
- Przejście do silniejszych funkcji skrótu. Stara krypta () przeżyła swój okres użyteczności i opracowano bardziej nowoczesne schematy, które były zarówno przyszłościowe, jak i silniejsze obliczeniowo.
- Przenieś hashowane hasła do pliku, który nie był czytelny dla nikogo. W ten sposób, nawet jeśli funkcja skrótu hasła okazała się słabsza niż oczekiwano, lub jeśli ktoś miał słabe hasło na początku, istniała inna przeszkoda dla atakującego w uzyskaniu dostępu do wartości skrótu na początku. Nie był już dostępny dla wszystkich.
Ten plik to / etc / shadow.
Oprogramowanie współpracujące z / etc / shadow jest na ogół bardzo małe, wysoce skoncentrowane i zwykle poddawane jest dodatkowej kontroli w recenzjach ze względu na potencjalne problemy. Działa również ze specjalnymi uprawnieniami, które pozwalają mu czytać i modyfikować / etc / shadow, jednocześnie uniemożliwiając zwykłym użytkownikom przeglądanie tego pliku.
Więc masz: uprawnienia do / etc / shadow są restrykcyjne (choć, jak już wspomniano, nie tak restrykcyjne, jak twierdzisz), ponieważ celem tego pliku jest ograniczenie dostępu do poufnych danych.
Skrót hasła powinien być silny, ale jeśli twoje hasło znajduje się w 500 najlepszych hasłach na listach internetowych , każdy, kto ma dostęp do skrótu, będzie mógł szybko znaleźć hasło. Ochrona skrótu zapobiega temu prostemu atakowi i podnosi poprzeczkę dla udanego ataku, od zwykłego zerkania do wymagania, aby albo był administratorem systemu na hoście, albo najpierw przeszedł atak eskalacji uprawnień. Zwłaszcza w prawidłowo administrowanym systemie dla wielu użytkowników oba są znacznie trudniejsze niż tylko przeglądanie pliku czytelnego dla świata.
/etc/shadow
są600
?