Czy mogę dostać wirusa za pomocą „sudo apt-get install”?


74

Chciałbym upewnić się, że pobieranie oprogramowania jest bezpieczne sudo apt-get install. Czy gdzieś są skanowane paczki? Czy wszystkie pakiety pobrane przy użyciu tego polecenia są wolne od wirusów?

Jeśli nie ma żadnej gwarancji, że nie są wolne od wirusów, czy po zainstalowaniu pakietu zawierającego wirusa atakujący byłby w stanie w pełni kontrolować moją maszynę? Czy jest jakiś sposób, aby sprawdzić wszystkie pakiety, które zostały zainstalowane przeze mnie na komputerze? (nie przez system automatycznie. Chciałbym je filtrować, aby zobaczyć wszystkie pakiety, które zostały zainstalowane przeze mnie ręcznie, a nie przez system).


8
Pytanie jest prawidłowe, ale zawiera nieporozumienia na temat wirusów. Czarna lista jako jedyny sposób uniknięcia infekcji jest bardzo złą metodą , pomimo jej wszechobecności dzięki odwróconemu modelowi zabezpieczeń systemu Windows. „Skanowanie” pakietu oprogramowania jest strasznym sposobem zapobiegania złośliwym działaniom.
Wildcard

2
Tomas, twój komentarz został usunięty przez moderatora. Proszę NIE publikować go w kółko.
jokerdino

Odpowiedzi:


108

aptw domyślnym systemie Ubuntu jest bardzo mało prawdopodobne, aby uzyskać wirusy. Nie oznacza to jednak, że nie jest to możliwe:

  • Złośliwe PPA
    Jedną z funkcji APT jest możliwość dodawania przez administratorów osobistych pakietów archiwów (PPA) lub innych źródeł oprogramowania do pamięci podręcznej APT. Te zewnętrzne źródła APT niekoniecznie są zaufane i mogą przenosić wirusy. Dodanie jednego z tych zainfekowanych źródeł wymagałoby jednak celowego działania administratora maszyny, co utrudniłoby samodzielne dodanie jednego z nich.
  • Zhakowane repozytorium
    Teoretycznie repozytorium oprogramowania może zostać zhakowane przez złośliwą stronę, powodując, że pobrane .debpliki mogą przenosić złośliwe ładunki. Jednak oficjalne repozytoria oprogramowania są bardzo uważnie obserwowane, a bezpieczeństwo tych repozytoriów jest dość ścisłe. Hakerowi trudno będzie usunąć jedno z oficjalnych źródeł oprogramowania Ubuntu, ale źródła oprogramowania innych firm (patrz wyżej) mogą być znacznie łatwiejsze.
  • Aktywne ataki MITM / ataki sieciowe
    Jeśli sieć zostanie naruszona wyżej (np. Przez Twojego dostawcę usług internetowych), możliwe jest zarażenie się wirusem z oficjalnych źródeł oprogramowania. Jednak atak tego kalibru wymagałby ogromnego wysiłku i zdolności do man-in-the-Middle wielu stron, w tym serwerów dystrybucji kluczy GPG i oficjalnych repozytoriów.

  • Luki w zabezpieczeniach dotyczące źle napisanego / złośliwego kodu istnieją w kodzie typu open source, sprawdzonym i utrzymywanym. Chociaż z definicji te rzeczy nie są technicznie uważane za „wirusy”, niektóre exploity ukryte lub nigdy nie ujawnione w kodzie mogą pozwolić złośliwemu atakującemu na umieszczenie wirusa w systemie lub jego uszkodzenie. Jednym z przykładów tego rodzaju problemu może być Heartbleed z OpenSSL lub znacznie nowsza Dirty CoW. Należy pamiętać, że programy z rep universelub multiverserepo są potencjalnymi zagrożeniami tego kalibru, jak wyjaśniono tutaj .

apt(ze względu na znaczenie w systemach Linux) jest dość mocno chroniony przed prawie wszystkimi tego rodzaju atakami zarówno po stronie klienta, jak i serwera. Chociaż są one możliwe, administrator, który wie, co robią i wie, jak czytać dzienniki błędów, będzie w stanie zapobiec wystąpieniu któregokolwiek z tych ataków.

Ponadto aptwymusza również weryfikację podpisów, aby upewnić się, że pobrane pliki są prawidłowe (i zostały pobrane poprawnie ), co jeszcze bardziej utrudnia przekradanie się złośliwego oprogramowania apt, ponieważ tych podpisów cyfrowych nie można sfałszować.


Jeśli chodzi o reagowanie na incydent związany z infekcją złośliwym oprogramowaniem, absolutnie najłatwiejszą ścieżką jest spalenie systemu na ziemię i rozpoczęcie od nowej (znanej i czystej) kopii zapasowej. Ze względu na naturę Linuksa złośliwe oprogramowanie może przejawiać się tak głęboko w systemie, że nigdy nie można go znaleźć ani wyodrębnić. Jednak pakiety takie jak clamavi rkhuntermogą być używane do skanowania systemu w poszukiwaniu infekcji.


6
„spal system na ziemię” - w przypadku naprawdę dobrze napisanego wirusa jest to prawie dosłownie prawda. Fizyczne zniszczenie sprzętu będzie bezpieczne; cokolwiek mniej będzie ciężką pracą (np. jeśli oprogramowanie wewnętrzne dysku twardego zostało zrootowane).
Martin Bonner,

2
Warto zauważyć, że te trzy przykłady nie wykluczają się wzajemnie. Możesz dodać PPA innej firmy, która została zaatakowana przez MITM.
el.pescado

11
Jak to możliwe (3)? Pakiety są podpisane, a klucz publiczny do oficjalnych repozytoriów Ubuntu pochodzi z nośnika instalacyjnego Ubuntu. Nie sądzę, że możesz się zarazić, chyba że zaczniesz od fałszywego nośnika instalacyjnego.
Federico Poloni

6
Powinieneś dodać opcję 4: Kod podstępny w oficjalnym pakiecie. Błędy takie jak heartbleed pokazują, że poważne błędy mogą istnieć latami nawet otwarcie w dobrze utrzymanym oprogramowaniu open source. Dlatego zawsze istnieje możliwość wstrzyknięcia złośliwego kodu do repozytorium w sposób, który może przetrwać recenzowanie. W takim przypadku wystarczy pobrać backdoora jako w pełni podpisany pakiet z oryginalnego serwera.
Falco

22
Zauważ, że sytuacja na pewno nie jest lepsza niż na systemach innych niż Linux. Wręcz przeciwnie, naprawdę. Standardowym sposobem uzyskania oprogramowania w systemie Windows jest dosłownie pobranie go z jakiejś przypadkowej strony i mam nadzieję, że nic złego się nie wydarzyło. Opisujesz, co możesz zrobić, jeśli chodzi o bezpieczną instalację oprogramowania. (Myślę, że warto o tym wyraźnie wspomnieć w odpowiedzi, ponieważ ktoś, kto zadaje to pytanie, jest na poziomie początkującym i może nie zdawać sobie z tego sprawy).
jpmc26,

16

apt-getzainstaluje się tylko z oficjalnych sprawdzonych repozytoriów Ubuntu lub z repozytoriów dodanych do twoich źródeł. Jeśli dodasz każde repozytorium, na które natrafisz, możesz skończyć instalowaniem czegoś nieprzyjemnego. Nie rób tego


1
Są przypadki, kiedy trzeba zainstalować * .deb z innych stron internetowych, ale mają one również sumy kontrolne / sumy kontrolne. Czasami musisz dodać ppa, aby pobrać z innych repozytoriów, ale polecenie apt-get jest nadal używane. Byłoby miło porównać ppa z listą znanych „złych stron”, gdyby to było możliwe ...
WinEunuuchs2Unix

8
Suma kontrolna chroni przed przypadkowym uszkodzeniem, ale nie umyślnym manipulowaniem - to sygnatury OpenPGP chronią przed manipulacją.
Charles Duffy,

1
Zakładając, że ufasz osobie, która podpisała paczkę, i możesz sprawdzić klucz w wiarygodny sposób. Szczerze mówiąc, każda osoba czasami pobiera oprogramowanie z Internetu. Repozytoria są duże, ale nieskończone. Idealne bezpieczeństwo i zaufanie to trochę marzenie.
Andrea Lazzarotto,

Ale czy nie możesz dodać dodatkowych repozytoriów?
Jeremy

„Jeśli dodasz każde repozytorium, na które natrafisz, może się okazać, że instalujesz coś paskudnego. Nie rób tego”.
Marc

5

Pobrane pliki sudo apt-getsą porównywane z sumą kontrolną / sumą kontrolną dla tego pliku, aby upewnić się, że nie został zmieniony i jest wolny od wirusów.

Rzeczywiście problemy, z jakimi spotykają się ludzie, gdy wyszukujesz w Google „sudo apt get hash sum”, to zbyt duże zabezpieczenie przed wirusami.

Linux nie jest w żaden sposób całkowicie wolny od wirusów, jednak incydenty są prawdopodobnie 1000 razy mniejsze niż Windows.

Znowu sądząc po nazwie ekranu, mogę być stronniczy :)

W komentarzu z 28 listopada 2017 r. Wspomniano o tym, że system Windows ma 1000 stacji roboczych więcej niż Linux, więc po co zawracać sobie głowę hackowaniem Linuksa. Podnosi fakt, że Linux działa teraz na wszystkich 500 szybszych superkomputerach, a większość serwerów WWW działa pod Linuksem, co sprawia, że ​​jest to najlepszy sposób na zhakowanie wszystkich stacji roboczych Windows podłączonych do Internetu.

Google Chrome, Android i Windows 10 daje użytkownikom wiele okazji do ujawnienia swojej prywatności i zapewne bezpieczeństwa w tym samym czasie.


4
Co? Problemy z sumą kontrolną polegają nie tylko na uniknięciu celowej modyfikacji, ale na przypadkowym uszkodzeniu - chyba że jest na niej podpis (i tak, pakiety Debiana mają również podpisy OpenPGP), sumę kontrolną można modyfikować tak samo, jak same surowe dane . Jeśli suma kontrolna na pakiecie nie zgadza się z tym, co było obecne podczas kompilacji, nie ma uzasadnionych oczekiwań, że pakiet ten może zostać wyodrębniony w celu uzyskania pożądanej oryginalnej zawartości.
Charles Duffy,

@Jeremy Yet Linux obsługuje 500 najlepszych superkomputerów i większość serwerów sieciowych, co jest świetnym sposobem na zhakowanie wszystkich podłączonych klientów Windows.
WinEunuuchs2Unix

3

Chociaż apt-get będzie instalował się tylko z oficjalnych repozytoriów Ubuntu, nie gwarantuje 100%, że otrzymany pakiet jest czysty.

Jeśli repozytorium zostanie zhakowane, haker może wstrzyknąć kod szkodliwy do pakietów. Serwer Linux Mint jako przykład został zhakowany, a haker wstrzyknął złośliwe oprogramowanie do swoich plików ISO. http://www.theregister.co.uk/2016/02/21/linux_mint_hacked_malwareinfected_isos_linked_from_official_site/


3
Ostatnio włamano się nawet do giełd NSA, DNC i bitcoin. Myślę, że można bezpiecznie powiedzieć, że repozytoria Ubuntu są wolne od wirusów w 99,99999%, co jest duchem pytania i naszych odpowiedzi. Rzeczywiście, nikt tak naprawdę nie ujawnił wirusa Ubuntu w tym pytaniu. Istnieje od dawna wirus / złośliwe oprogramowanie dla systemu Linux, które naprawia KASLR, o którym większość ludzi nawet nie wie, a ja czytam tylko na alternatywnej stronie internetowej innej niż MSM, która nie jest oparta na Linuksie i oparta wyłącznie na wiadomościach globalnych. Chciałbym powiedzieć, że Linux ma znacznie mniej wirusów niż Windows, a aktualizacja Ubuntu jest bezpieczna. Jednak jak zawsze uważaj na strony internetowe.
WinEunuuchs2Unix

2
Istnieje duża różnica między wstrzykiwaniem złośliwego kodu do ISO a serwerami apt. ISO nie są w pełni podpisane - dostępne jest nowoczesne narzędzie, które może być użyte do takiego podpisywania (podpisywanie EFI w celu ochrony bootloadera, sprawdzanie poprawności GRUB OpenPGP w celu ochrony jądra i initrd, dm-verity w celu ochrony głównego systemu plików), ale dm -verity nie jest jeszcze powszechnie używany poza ChromeOS. Z drugiej strony zawartość serwerów apt ma podpisy OpenPGP - aby je sfałszować, musisz włamać się do stacji roboczej jednego z zaufanych programistów.
Charles Duffy,

1
Wstrzykiwanie ISO i podawanie zainfekowanych pakietów apt są zupełnie inne. Serwer może zostać zhakowany, a zainfekowane ISO może być obsługiwane, ale apt nie może być dystrybuowany w ten sposób. istnieją podpisy, które temu zapobiegną
Anwar

-4

zależy od twoich uprawnień sudo. dostęp do roota? wszystkie zakłady są wyłączone - ipso faktycznie ufasz ekosystemowi apt-get, który może, ale nie musi, być bezpieczny. Myślę, że to okropny pomysł, ale robię to cały czas, ponieważ jest to jedyny wybór. Jeśli prowadzisz wrażliwą instalację, w której bezpieczeństwo jest na najwyższym poziomie, to uruchamianie sudo na czymś, czego nie do końca kontrolujesz, jest prawdopodobnie szalone. jeśli jesteś zwykłym schmoe, prawdopodobnie nic ci nie jest.


Pytanie brzmi: czy i w jakim stopniu ekosystem apt-get jest rzeczywiście bezpieczny, czego nie jestem pewien, ta odpowiedź dotyczy bezpośrednio. Jeśli chodzi o „okropny pomysł” - poza dystrybucją kluczy OpenPGP posiadanych przez zaufanych programistów za pomocą systemu operacyjnego (jak już zostało to zrobione) i wymaganiem wyraźnej akcji użytkownika w celu włączenia dodatkowych kluczy (jak podczas dodawania PPA), jakie dodatkowe środki byłyby lub mogłyby dodajesz, jeśli budujesz własny system dystrybucji oprogramowania?
Charles Duffy,

nie, pytanie jest bardzo wyraźne. po prostu przeczytaj op. „Czy mogę dostać wirusa?” tak, jednoznacznie. zbudowanie własnego systemu dystrybucji oprogramowania to zupełnie inna kwestia.
mobileink

ps. Powiedziałem „Myślę, że” to okropny pomysł, którego nie można podważyć. W rzeczywistości jest to straszny pomysł, aby systemy dystrybucji oprogramowania wymagały sudo.
mobileink

6
Twierdzę, że jeszcze straszniejszym pomysłem jest zezwolenie nieuprzywilejowanemu użytkownikowi na instalowanie oprogramowania w lokalizacjach, w których jest on domyślną ścieżką dla innych nieuprzywilejowanych użytkowników. Homebrew jest tutaj poważnym przestępcą - jak tylko przeprowadzi się konfigurację, każdy zaatakowany proces działający pod odpowiednim UID może zainstalować oprogramowanie /usr/local/binbez konieczności potwierdzania przez użytkownika, że ​​zamierza zezwolić na działania administracyjne.
Charles Duffy,

3
Teoretycznie możliwe, ale znacznie mniej prawdopodobne. I to nie jest Security SE, gdzie zajmujemy się teorią - to Ask Ubuntu, skoncentrowany na użytkownikach końcowych z pytaniami opartymi na praktyce.
Charles Duffy
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.