Dlaczego źle jest działać jako root?


9

Często natrafiam na posty na forach lub innych stronach internetowych, na których widzisz ludzi żartujących w taki sposób na temat uruchamiania / logowania jako root, jakby to było coś okropnego i każdy powinien o tym wiedzieć. Jednak niewiele można znaleźć w tej sprawie. Być może jest on powszechnie znany ekspertom Linuksa, ale tak naprawdę nie wiem dlaczego. Pamiętam, że zawsze działałem jako root, kiedy po raz pierwszy wypróbowałem Linuksa lata temu (Redhat i Mandrake) i nie pamiętam, żeby z tego powodu miałem problemy. W rzeczywistości istnieją niektóre dystrybucje, które mają jaskrawoczerwone tło ze znakami ostrzegawczymi jako tapetę dla użytkownika root (Suse?). Nadal używam konta „Administrator” do regularnego używania w mojej instalacji Windows i nigdy nie miałem żadnych problemów.

Odpowiedzi:


9

Ci użytkownicy mają dostęp administracyjny do systemu, poziom uprawnień, który pozwala im, oraz uruchamiane przez nich aplikacje, w celu obejścia mechanizmów ochronnych (takich jak uprawnienia systemu plików), pozwalając im robić wszystko w systemie. Złośliwe oprogramowanie uwielbia nieograniczony dostęp.

Jako prosty przykład

sudo rm -rf *

usunie prawie wszystko z systemu Linux, jeśli jesteś w katalogu głównym. Nie musi to być tak oczywiste, ani nawet złośliwe. Coś w rodzaju niespodziewanie niezdefiniowanych zmiennych w skryptach wymagających uprawnień roota może powodować poważne problemy:

rm -rf $destinationDir/*

# if the variable is undefined and the shell doesn't care, the result is:
rm -rf /*

Czasami jest to prosta literówka w skrypcie, która usuwa połowę twojego systemu.

Dlatego ogólne zalecenie to używanie programów wykonawczych tylko z podwyższonymi uprawnieniami, jeśli jest to naprawdę konieczne.


3
Krótko mówiąc: robi się niebezpiecznie.
digitxp

Samo spojrzenie na to polecenie wywołuje u mnie dreszcze.
Paul Lammertsma,

4

Root w systemie Linux jest jeszcze potężniejszy niż konto administratora w systemie Windows. Jest to porównywalne z kontem SYSTEM w systemie Windows, który zwykle nie jest dostępny.


0

Byłoby to równoznaczne z całkowitym wyłączeniem UAC i działaniem jako administrator dla wszystkich użytkowników w oknie systemu Windows. Złośliwe oprogramowanie może łatwiej zainstalować, napędy pobrane są bardziej skuteczne, jeśli przenikają, są teraz bogiem na twoim komputerze. Po prostu skutecznie usuwasz uprawnienia użytkownika (ogólnie złe praktyki). imho, jeśli nie miałeś problemu, albo miałeś dużo szczęścia, masz niewiarygodnie bezpieczne nawyki przeglądania, albo najprawdopodobniej ... miał problem i nie wiedział o tym.


Jakie problemy mogłem mieć (i mieć teraz w systemie Windows) i o których nie wiedziałem?
Mussnoon

Możesz nie wykryć niektórych rodzajów rootkitów, które nie powodują dużego obciążenia procesora lub dysku (np. Sondowanie strony internetowej z pojedynczym pobieraniem / wysyłaniem co 2 minuty, aby być częścią DDoS). Inne możliwości obejmują powolne przeszukiwanie dysku w poszukiwaniu danych związanych z PCI (numery kart kredytowych)
RobotHumans

0

Napisałem (przynajmniej dwa razy) skrypty, które miały przeglądać strukturę katalogów w określony sposób i uruchamiać je rm -rf *w jakimś katalogu. Wystąpił błąd, a skrypt ostatecznie znalazł się w "/"katalogu (root) i uruchomił się rm -rf *. Jest to oczywiście przykład najgorszego rodzaju, ale nawet mniejsze złe skrypty lub polecenia mogą spowodować poważne uszkodzenie systemu, jeśli działają jako root.


W przypadku skryptów (zwłaszcza tych, które muszą być uruchamiane z uprawnieniami roota) należy używać sieci bezpieczeństwa, takich jak „rm -rf / full / path / to / target / dir / *” lub „cd / some / nonexisting / directoy / | exit 1” .

0

Oprócz mocy, które się z tym wiążą, a tym samym skutków błędów, pojawia się również bez ostrzeżeń. I to ostrzeżenia ostrzegają o nieoczekiwanych rzeczach.

Na przykład podczas uruchamiania GUI jako root: skąd miałbyś wiedzieć, że niektóre złośliwe oprogramowanie próbowało się zainstalować?


0

Masz smutne nieszczęście Microsoft i antywirusów zajmujących się tym problemem. Konto administratora (root) ma mieć nieograniczony dostęp (jak twierdzą wszyscy). Może nie tylko modyfikować pliki systemowe, co powoduje, że komputer nie może się uruchomić, ale może uzyskiwać dostęp do innych danych użytkownika (uprawnienia użytkownika nie wystarczą, aby zabezpieczyć dostęp do danych i modyfikację, gdy fizyczny dostęp do komputera jest dostępny). Teraz przejdź do tego, czego „nie widzisz”.

Niefortunną praktyką było zawsze uruchamianie komputera z systemem Windows jako Administrator. Istnieją ku temu dobre powody, takie jak możliwość zostania innym użytkownikiem w trakcie zasysanej sesji (instalacja programu wymagałaby wylogowania i zalogowania się jako administrator i zainstalowania aplikacji, co może wymagać nawet uruchomienia administratora). W rezultacie Twój komputer przyzwyczaja się do rzeczy, których się nie spodziewałeś, nawet jeśli nie zainstalowałeś aplikacji.

W rezultacie ludzie nie odchodzą od pracy jako administrator, ale Microsoft rozszerza kontrolę uprawnień na podkreślającą strukturę systemu operacyjnego UAC. Oznacza to, że zostaniesz poproszony o zgodę na uruchomienie aplikacji bez względu na to, kim jesteś. Vista była naprawdę zła, ponieważ miała dwie warstwy dla administratorów: „Czy chcesz uruchomić ten program?”, „Ok, teraz, kiedy uruchamiasz ten program, czy chcesz pozwolić mu działać?”

W Linuksie widzisz zupełnie inną filozofię. Po pierwsze, system operacyjny robi to, co mu powiesz, bez podwójnego sprawdzania, czy naprawdę chciałeś uruchomić aplikację. Po drugie, użytkownik nie może nic zrobić w systemie. Oznacza to, że system jest bezpieczny przed błędami użytkownika, ale użytkownik może zawsze zwiększyć swoje uprawnienia do odpowiedniego poziomu, jeśli chce. Microsoft zasadniczo zbudował warstwę eskalacji uprawnień oddzielną od warstwy użytkownika, czy Linux / Unix zawsze miał projekt eskalacji uprawnień, które działały z użytkownikami.


0

W Linuksie głównie powstrzymuje cię (lub aplikację działającą w twoim imieniu) przed przypadkowym zrobieniem czegoś głupiego.

W systemie Windows nie można zainstalować wielu rodzajów oprogramowania bez uruchamiania konta jako administrator, ponieważ nie masz dostępu do zapisu do plików programów ani folderów systemu Windows. Najgorsze rodzaje złośliwego oprogramowania muszą być w stanie pisać w tych obszarach, aby dostać się do twojego systemu.

Jeśli nie działasz jako administrator i odwiedzasz zaatakowaną witrynę, która próbuje zainstalować coś takiego, jak ukryty keylogger w celu kradzieży haseł, informacji bankowych lub numerów kart kredytowych, instalacja prawdopodobnie się nie powiedzie. Jeśli pracujesz jako administrator, ta instalacja ma znacznie większą szansę powodzenia. Ta sama zasada obowiązuje w systemach Linux.

Kluczem tutaj jest to, że oprogramowanie antywirusowe nawet się nie wchodzi. Obecnie oprogramowanie antywirusowe jest ostatnią linią obrony, a nie pierwszą. Kolejność, według której oceniam środki bezpieczeństwa, jest następująca:

  1. Popraw system (w tym oprogramowanie)
  2. Nie uruchamiaj jako administrator
  3. Używaj innych bezpiecznych nawyków internetowych
  4. Uruchom zaporę ogniową
  5. Zrób dobrą kopię zapasową offline (w tym przypadku offline oznacza „niedostępny dla twojego normalnego systemu plików”, co może w rzeczywistości oznaczać korzystanie z usługi online)
  6. Uruchom oprogramowanie antywirusowe

W rzeczywistości, jeśli robisz wystarczająco dużo innych rzeczy poprawnie, oprogramowanie antywirusowe wcale nie jest konieczne. Ale ważną rzeczą jest to, że działanie jako administrator jest nie-nie.

Na szczęście jest to teraz domyślny stan w systemie Windows 7. Nawet jeśli Twoje konto ma uprawnienia administratora, nadal działa w trybie „piaskownicy” i jedynie daje ci prawo do podniesienia uprawnień dla określonej aplikacji na żądanie.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.