Чи можу я заразитися вірусом, використовуючи "sudo apt-get install"?


74

Я хотів би переконатися, що завантажувати програмне забезпечення безпечно sudo apt-get install. Чи пакети десь відскановані? Чи всі пакети, завантажені за допомогою цієї команди вірусу, безкоштовні?

Якщо немає гарантії, що вони не містять вірусів, після встановлення пакета, що містить вірус, зловмисник зможе повністю контролювати мою машину? Чи є спосіб перевірити всі пакунки, які я встановив на комп’ютері? (не системою автоматично. Я хотів би відфільтрувати їх, щоб побачити всі пакунки, встановлені мною вручну, а не системою.)


8
Питання справедливе, але містить помилкові уявлення про віруси. Чорний список як єдиний засіб уникнення зараження - це дуже поганий метод , незважаючи на всю його повсюдність завдяки перевернутій системі безпеки Windows. "Сканування" програмного пакету - жахливий спосіб запобігти шкідливим діям.
Wildcard

2
Томаш, ваш коментар модератор видалив. Будь ласка, НЕ публікуйте її знову і знову.
jokerdino

Відповіді:


108

aptза замовчуванням система Ubuntu буде малоймовірною для отримання вірусів. Однак це не означає, що це неможливо:

  • Шкідливий PPA
    Однією з особливостей APT є можливість адміністраторів додавати особисті архіви пакетів (PPA) або інші джерела програмного забезпечення в кеш APT. Цим стороннім джерелам APT не обов’язково довіряти, і вони можуть переносити віруси. Однак, адміністратору машини потрібно буде навмисно додати одне з цих заражених джерел, що робить його досить важким для додавання себе.
  • Зламаний сховище
    Теоретично сховище програмного забезпечення може бути зламане зловмисною стороною, внаслідок чого завантажені .debфайли можуть нести зловмисні корисні навантаження. Однак офіційні сховища програмного забезпечення дуже ретельно стежать, і безпека цих сховищ досить жорстка. Хакеру важко буде зняти одне з офіційних джерел програмного забезпечення Ubuntu, але сторонні джерела програмного забезпечення (див. Вище) можуть бути порушені набагато простіше.
  • Активні MITM / Network Attacks
    Якщо мережа порушена вище (скажімо, ваш Інтернет-провайдер), вірус можна отримати з офіційних програмних джерел. Однак атака цього калібру вимагатиме надзвичайних зусиль та можливостей на багатьох сайтах Man-In-The-Middle, включаючи сервери розподілу ключів GPG та офіційні репости.

  • Уразливості слабкого письма / зловмисного коду існують у відкритому коді, рецензованому та підтримуваному коді. У той час як ці речі технічно не вважаються "вірусами" за визначенням, певні подвиги, приховані або ніколи не виявлені в коді, можуть дозволити зловмиснику занести вірус або запустити вашу систему. Одним із прикладів такого типу випуску може послужити Heartbleed від OpenSSL, або набагато новішої брудної корівки. Зауважте, що програми з universeабо multiverseрепостів є потенційними загрозами цього калібру, як пояснено тут .

apt(зважаючи на його важливість для систем Linux) досить сильно захищений від майже всіх цих типів атак як на стороні клієнта, так і на сервері. Хоча вони можливі, адміністратор, який знає, що робить і вміє читати журнали помилок, зможе запобігти будь-якій з цих атак.

Крім того, aptтакож застосовується перевірка підпису, щоб гарантувати, що завантажені файли є законними (та завантажуються правильно ), що ще більше ускладнює проникнення зловмисного програмного забезпечення apt, оскільки ці цифрові підписи неможливо підробити.


Що стосується реагування на інцидент зараження зловмисним програмним забезпеченням, то найпростіший шлях - спалити систему на землю та почати заново з недавньої (і відомої - чистої) резервної копії. Зважаючи на характер Linux, зловмисне програмне забезпечення може виявитись так легко в системі так глибоко, що його ніколи не можна знайти або витягти. Однак пакети, як clamavі rkhunterможуть бути використані для сканування системи на наявність інфекцій.


6
"спалити систему до землі" - для справді добре написаного вірусу це майже буквально правда. Фізичне знищення апаратури буде безпечним; нічого менш буде важкою роботою (наприклад, якщо вбудована програма мікропроцесора).
Мартін Боннер

2
Варто зазначити, що ці три приклади не є взаємовиключними. Ви можете додати сторонні PPA, які були зламані за допомогою MITM.
el.pescado

11
Як це можливо (3)? Пакети підписані, і відкритий ключ для офіційного репорта Ubuntu надходить з інсталяційного носія Ubuntu. Я не думаю, що ви можете заразитися, якщо не почнете з підробленого інсталяційного носія.
Федеріко Полоні

6
Вам слід додати параметр № 4: Код невмілого користування в офіційному пакеті. Помилки, як серце, свідчать про те, що серйозні помилки можуть існувати роками навіть відкрито у сильно підтримуваному програмному забезпеченні з відкритим кодом. Тому завжди є можливість зловмисника ввести зловмисний код у сховище таким чином, щоб він міг пережити експертну перевірку. У цьому випадку ви просто завантажите backdoor як повністю підписаний пакет з оригінального сервера.
Фалько

22
Зауважте, що ситуація, безумовно, не краща, ніж це в системах, що не є Linux. Адже навпаки, насправді. Стандартний спосіб отримання програмного забезпечення в Windows досить буквально завантажити його з якогось випадкового сайту і сподіваємось, що нічого поганого не сталося. Те, що ви описуєте, - це найкраще, що ви можете зробити з точки зору надійної установки програмного забезпечення. (Я думаю, що це варто чітко згадати у відповіді, оскільки той, хто задає це питання, знаходиться на рівні початківців і може не усвідомлювати цього.)
jpmc26

16

apt-getбуде встановлюватися лише з офіційних сховищ Ubuntu, які перевірені, або із сховищ, які ви додали до своїх джерел. Якщо ви додасте кожне сховище, можливо, у кінцевому підсумку буде встановлено щось неприємне. Не робіть цього.


1
Є випадки, коли вам потрібно встановити * .deb з інших веб-сайтів, але вони також мають перевірочні / хеш-суми, я вважаю. Бувають випадки, коли вам потрібно додати ppa для завантаження з інших сховищ, але команда apt-get все ще використовується. Було б чудово перевірити, чи не вдалося
зібрати

8
Контрольна сума захищає від випадкової корупції, але не навмисного підробки - саме підписи OpenPGP захищають від підробок.
Чарльз Даффі

1
Якщо припустити, що ви довіряєте особі, яка підписала пакунок, і ви можете перевірити ключ на надійний спосіб. Чесно кажучи, кожна людина іноді завантажує програмне забезпечення з Інтернету. Сховища великі, але не нескінченні. Ідеальна безпека та довіра - це мрія.
Андреа Лацаротто

Але ви не можете додати додаткові сховища?
Джеремі

"Якщо ви додасте кожен сховище, яке ви зіткнетеся, ви можете встановити щось неприємне. Не робіть цього."
Марк

5

Завантажені файли sudo apt-getпорівнюються з контрольною сумою / хеш-сумою для цього файлу, щоб переконатися, що він не був підроблений та не захищений від вірусів.

Дійсно, з проблемами, з якими стикаються люди, коли ви перебуваєте в Google "sudo apt get hash sum" - це занадто велика безпека від вірусів.

Linux не є повністю вільним від будь-яких засобів, проте випадків, ймовірно, в 1000 разів менше, ніж Windows.

Потім, судячи з мого екранного імені, я можу бути упередженим :)

У коментарі 28 листопада 2017 року згадується, як у Windows є на 1000 більше робочих станцій, ніж у Linux, тож навіщо турбуватися злом Linux. Це свідчить про те, що Linux працює на всіх 500 швидших суперкомп'ютерів зараз, а більшість веб-серверів працює під управлінням Linux, що робить його найкращим способом зламати всі робочі станції Windows, які підключаються до Інтернету.

Google Chrome, Android та Windows 10 надають користувачам широкі можливості одночасно віддати свою конфіденційність та, можливо, певну безпеку.


4
Так? Проблеми контрольної суми полягають не в тому, щоб уникнути навмисних модифікацій, як випадкової пошкодження - якщо на ній немає підпису (і так, пакети Debian також мають підписи OpenPGP), контрольна сума може бути змінена так само, як і самі вихідні дані. . Якщо контрольна сума на пакеті не відповідає тому, що було в часі збирання, немає обґрунтованих очікувань, що цей пакет може бути вилучений, щоб отримати потрібний оригінальний вміст.
Чарльз Даффі

@Jeremy Тим не менш, Linux працює з топ-500 суперкомп'ютерів і більшості веб-серверів, що є прекрасним способом зламати всіх доданих клієнтів Windows.
WinEunuuchs2Unix

3

Хоча apt-get буде встановлюватися лише з офіційних сховищ Ubuntu, він не гарантує 100% упаковку, яку ви отримали.

Якщо сховище зламано, хакер може ввести код шкоди в пакети. Наприклад, сервер Linux Mint був зламаний, і хакер ввів зловмисне програмне забезпечення у свої файли ISO. http://www.theregister.co.uk/2016/02/21/linux_mint_hacked_malwareinfected_isos_linked_from_official_site/


3
Нещодавно навіть зламані біржі NSA, DNC та біткойнів були зламані. Я думаю, що можна впевнено сказати, що в сховищах Ubuntu немає 99,99999% вірусів, що є сутністю питання і наших відповідей. Дійсно, ніхто не з'явився з вірусом Ubuntu в цьому запитанні. Існує давній вірус / зловмисне програмне забезпечення Linux, яке KASLR виправляє, про що більшість людей навіть не знає, і про це я читаю лише на альтернативному веб-сайті, що не є MSM, який базується не на Linux, а базується лише на глобальних новинах. Я хотів би сказати, що в Linux є набагато менше вірусів, ніж Windows, і Ubuntu Update є безпечним. Однак як завжди будьте уважні до веб-сайтів.
WinEunuuchs2Unix

2
Існує велика різниця між введенням шкідливого коду в ISO та в підходящі сервери. ISO не повністю підписані - доступні сучасні інструменти, які можна використовувати для такого підписання (підписання EFI для захисту завантажувача, перевірка GRUB OpenPGP для захисту ядра та initrd, dm-verity для захисту кореневої файлової системи), але dm -verity ще не широко використовується поза ChromeOS. З іншого боку, вміст підходящих серверів має підписи OpenPGP - вам потрібно буде прорватися на робочу станцію одного з надійних розробників, щоб виправити їх.
Чарльз Даффі

1
Введення ін'єкційних ISO та подача заражених пакетів apt абсолютно різні. Сервер може бути взламаний і заражений iso може бути поданий, але підходящий неможливо поширити таким чином. є підписи, які це заважають
Anwar

-4

залежить від вашого дозволу на судо. кореневий доступ? всі ставки вимкнено - ви ipso facto довіряєте екосистемі apt-get, яка може бути, а може і не бути захищеною. Я думаю, що це жахлива ідея, але я це роблю постійно, тому що це єдиний вибір. Якщо ви працюєте на чутливій установці, де безпека є преміальною, то запуск судо на мурашник, який ви не повністю контролюєте, напевно, божевільний. якщо ти просто звичайний шмо, то ти, мабуть, добре.


Тут питання полягає в тому, чи справді безпечна екосистема є надійною, і я не впевнений, що ця відповідь спрямована вперед. Що стосується "жахливої ​​ідеї" - крім розповсюдження ключів OpenPGP, що належать довіреним розробникам в операційній системі (як це вже зроблено), і вимагає явної дії користувача для включення додаткових ключів (як при додаванні PPA), які додаткові заходи могли б чи могли б ви додаєте, якщо ви будували власну систему розповсюдження програмного забезпечення?
Чарльз Даффі

ні, питання дуже явне. просто прочитайте оп. "Чи можу я отримати вірус?" так, однозначно. побудова власної системи розповсюдження програмного забезпечення - це зовсім інше питання.
mobileink

пс. Я сказав "Я думаю" це жахлива ідея, яку неможливо оскаржити. Насправді це жахлива ідея для систем розподілу програмного забезпечення вимагати sudo.
mobileink

6
Я можу стверджувати, що ще страшніша ідея дозволити непривілейованому користувачеві встановлювати програмне забезпечення в тих місцях, де це PATH за замовчуванням для інших непривілейованих користувачів. Homebrew тут є серйозним правопорушником - як тільки він виконує його налаштування, будь-який компрометований процес, що працює під відповідним uid, може встановлювати програмне забезпечення, /usr/local/binне вимагаючи від користувача підтвердження, що вони мають намір дозволити адміністративну діяльність.
Чарльз Даффі

3
Теоретично можливо, але набагато менш вірогідно. І це не безпека SE, де ми займаємося теоретичною справою - це Ask Ubuntu, орієнтований на кінцевих користувачів з питаннями, обґрунтованими на практиці.
Чарльз Даффі
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.