Кінцевий посібник з безпеки настільних Linux


Захист робочого столу Linux, як правило, вважається більш надійним, ніж Windows. Однак це не означає, що ви можете «встановити та забути» про свій робочий стіл Linux. Він потребує захисту так само, як і будь-яка інша операційна система. У цій статті ми надамо кілька практичних порад, як це зробити.


Початок роботи, короткий огляд того, як замислювався та розроблявся Linux, допоможе зрозуміти, чому безпеку настільних Linux важче зламати, ніж деякі інші настільні операційні системи. 

Коротка історія Linux

На початку 90-х студент Фінського університету на ім’я Лінус Торвальдс розпочав роботу над ядром, схожим на Unix, після того, як його надихнула зменшена Unix-схожа операційна система під назвою MINIX. Ядро дозріло і в кінцевому підсумку стало ядром для таких операційних систем, як Android, ChromeOS та ОС настільних / серверів, які ми сьогодні називаємо Linux.

Linux належить лише до ядра операційної системи, з яким люди не взаємодіють. Все, що ви коли-небудь бачили на машині Linux, – це програма, а не Linux, але ця назва переважала, щоб означати всю операційну систему, що дуже нагадує жалобу Річарда Столмана та проекту GNU (Gnu’s Not Unix)..

Проект GNU розпочався, коли Торвальдсу було 14 років, і за 7 років до того, як було задумано ядро ​​Linux. Випускник MIT Річард Сталлман (RMS в хакерських колах) раніше визнавав це, щоб люди справді володіли своїми цифровими даними, все, що використовується для створення цих даних, включаючи операційну систему та всі її допоміжні компоненти, повинно бути невласницьким. З цією метою RMS заснував проект GNU і написав першу безкоштовну ліцензію на програмне забезпечення (як у непатентованій) ліцензії на програмне забезпечення, відому як Загальна публічна ліцензія GNU в 1989 році. До 1991 року проект GNU створив ряд утиліт, але досі не мав робоче ядро, яке отримало назву Hnd GNU. Ядро Linux Torvald стало більш життєздатною альтернативою Hurd, і оскільки Torvald випустив його за загальною ліцензією GNU, стало доцільніше поєднувати його з утилітами GNU. Таким чином, з’явилася перша невласна операційна система.

Фон:

Слово Безкоштовно в програмних колах відноситься до програмного забезпечення, яке не є власником, і його може використовувати будь-хто з будь-якою метою. Розмежування двох можливих значень слова вільний описується фразою Вільний, як у мовленні, або вільний, як у пиві. Намагаючись полегшити цю різницю, термін Free / Libre Open Source Software (F / LOSS або FLOSS, іноді просто FOSS) був придуманий як спосіб позбавити свободи та свободи. У будь-якому випадку винос – це слово, вільне в цьому контексті, означає, що програмне забезпечення не є власником, і вільне у використанні та зміні.

Проект GNU стверджує, що сьогоднішній Linux є дійсно програмним забезпеченням GNU, яке працює з ядром Linux, і тому його по праву слід називати GNU / Linux, щоб проект GNU отримав належний кредит на свої інструменти. На жаль, люди показали, що вони, ймовірно, не турбуються, намагаючись обмотати свої язики навколо фрази GNU / Linux, так що битва не втрачена.

Назад до ядра Торвальда: MINIX була навчальною операційною системою з голими кістками, написаною Ендрю Таненбаумом як навчальним інструментом для його текстової книги, яку Торвальдс використовував в університеті. MINIX існує і сьогодні і в основному спрямований на вбудовані системи з низькими ресурсами. Торвальдс використовував ці знання для створення власного ядра, і Linux народився.

Визначення

Ядро

Linux – це монолітне ядро. Не занурюючись у бур’яни, це по суті означає, що ядро ​​повністю працює в просторі ядра. Пам’ять комп’ютера доступна різними способами. Пам’ять, до якої користувачі можуть отримати доступ, називається простором користувача. Пам’ять, що лише привілейовані процеси, такі як необхідні операційній системі, доступні лише для ядра простору. Це означає, що користувацькі програми важко впливати на операційну систему, оскільки програми не мають доступу до процесів ядра.

Зловмисне програмне забезпечення

Зловмисне програмне забезпечення – це загальний термін для будь-якого типу програмного забезпечення, яке робить щось погано. Віруси, потенційно небажані програми (PUP) та шпигунські програми – все це приклади зловмисного програмного забезпечення.

Шпигунські програми

Шпигунські програми намагаються викрасти конфіденційну інформацію з вашого комп’ютера та передати її недоброзичливцю. Популярні методи шпигування – це кейлоггери, які передають кожну клавішу, яку ви натискаєте, та веб-переглядачі браузера, які відстежують відвідувані вами веб-сайти в Інтернеті..

Ботнет

Ботнети – це РоБОТ NETроботи, які використовуються для запуску розповсюджених атак на розповсюджені послуги (DDoS) на веб-сайти. Для того, щоб зруйнувати цільовий веб-сайт, зловмиснику, як правило, потрібні тисячі, якщо не сотні тисяч комп’ютерів, що є у його розпорядженні. Оскільки фактично не володіти чи брати напрокат багато комп’ютерів, погані хлопці користуються вашим комп’ютером.

Вони роблять це через хитрості, щоб встановити їх ботнет-код на комп’ютер, як правило, за допомогою стандартних фішинг-методів. Після встановлення зловмисного програмного забезпечення ботнету у вашій системі він повідомляє про поганого хлопця, як правило, на каналі IRC, а потім переходить у режим сну. Коли у поганого хлопця достатньо ботів, готових до роботи, він видає команди їм і боту на вашому комп’ютері та багатьох інших, оживають і починають надсилати зловживаний трафік на цільовий сайт. Ви, користувач, залишаєтесь невідомо, що ваш комп’ютер використовується таким чином.

Віруси та глисти

Вірус чи черв’як – це зловмисне програмне забезпечення, яке має додаткову характеристику здатності до реплікації. Більшість шкідливих програм встановлюється один раз, і якщо поганий хлопець хоче заразити інший комп’ютер, він повинен переконати власника цього комп’ютера також встановити свою шкідливу програму тощо. Навпаки, вірус чи черв’як встановить себе, а потім піде шукати інші комп’ютери, підключені до мережі, на які він може скопіювати.

Нещодавні спалахи WannaCry та інших нападів викупних програм були глистами. Одна людина в організації помилково натиснула фішинг-посилання, і хробака було встановлено на їхньому комп’ютері. Потім він переглянув мережу, щоб знайти інші комп’ютери, і за дуже короткий час кожен комп’ютер у мережі був заражений.

Шляхи, в яких Linux є більш безпечним, ніж Windows

Привілеї за замовчуванням

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

Для багатокористувацьких операційних систем другим не менш важливим принципом є Ізоляція. Принцип ізоляції застосовується багатьма способами. У цьому випадку найкраще використовувати для опису поділу користувачів. Діяльність одного користувача не повинна дозволяти впливати на інших, а дані, що належать одному користувачеві, повинні бути доступні іншому користувачеві, якщо спеціально не дозволено.

Linux був побудований як багатокористувацька операційна система з першого дня, і тому ці принципи запроваджені. Windows була розроблена як однокористувацька система настільних ПК і з часом додала до неї різні функціональні можливості для усунення недоліків оригінального дизайну Інтернет, підключений до світу.

Більш популярні дистрибутиви Linux створюють непривілейований обліковий запис користувача для щоденного використання, тоді як настільний користувач Windows, як правило, користувач на рівні адміністратора. Контроль облікових записів користувачів (UAC) був введений в Windows Vista, щоб створити більше бар’єру для встановлення, і вимагає від користувачів спеціально авторизувати певні дії, натиснувши кнопку ОК, коли з’явиться запит..

Вимагаючи прав адміністратора для встановлення програм, важче розгорнути зловмисне програмне забезпечення. Однак найслабшою ланкою в будь-якій ланцюжку безпеки є користувач. Незважаючи на те, що ці інструменти ескалації привілеїв зараз повністю функціонують у світі, багато користувачів просто введуть пароль свого адміністратора або натискають кнопку ОК, щоб дозволити діяти високопривілейовані дії щоразу, коли з’являється запит. Велика база користувачів, яка не має знань, щоб зрозуміти, чому їх спонукають надавати підвищені облікові дані, дуже важко зробити ці інструменти справді ефективними.

Усиновлення

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

Усі зловмисні програми не створюються рівними. Автори шкідливих програм пишуть свої програми з певною метою. Багато шкідливих програм використовуються для набору комп’ютерів, які нічого не підозрюють, щоб стати частиною ботнету. Деякі зловмисні програми написані для крадіжки даних для входу на чутливі сайти. Деякі написані, щоб просто зруйнувати комп’ютер, на якому він встановлений. У будь-якому з цих випадків автор шкідливих програм хоче бути ефективним. Мета полягає в тому, щоб написати код один раз, а потім повторно розгорнути його на якомога більше різних комп’ютерах. Зважаючи на цю мету, очевидно, що написання шкідливих програм для Windows – це краща мета, ніж написання шкідливих програм для Linux.

Виявити справжню швидкість прийняття Linux практично неможливо. Частина проблеми полягає в тому, що в Linux вбудовано стільки споживчих пристроїв, що навіть не зрозуміло, як рахувати пристрій як пристрій Linux. Іншим головним каменем спотикання є те, що настільний Linux – це програмне забезпечення FLOSS, тому немає торгових номерів, які можна використовувати. Все, що ми можемо реально зробити – це переглянути вторинні дані, такі як завантаження Linux, або попросити людей зареєструватися як користувачі Linux. Різні методології дозволяють прийняти Linux на робочому столі де-небудь від одного до 34 відсотків, що є настільки широким варіантом, що це зовсім не марно. Деякі інсайдери галузі відзначають, що показники майже у всіх дослідженнях орієнтовані на США, тому вони не відображають частку світового ринку і можуть становити до 12 відсотків у всьому світі.

Однак ми знаємо, що навряд чи існує більше робочих столів Linux, ніж робочих столів Windows. Як автор шкідливого програмного забезпечення, було б більше сенсу писати код Windows, оскільки це забезпечить більш широку базу атак для роботи.

Відкрите джерело

Методика розробки програмного забезпечення з відкритим кодом – це протилежне тому, як зазвичай розроблялося програмне забезпечення. Більшість програмних програм створюються власноруч, а вихідний код є власником і приховано від будь-кого за межами компанії. Навпаки, програмне забезпечення з відкритим кодом саме те – відкрите. Він публікується в публічних сховищах кодів, щоб кожен міг бачити код, переглядати його на наявність помилок і навіть модифікувати його та внести свої зміни назад до основного проекту.

Прихильники з відкритим кодом використовують Закон Лінуса, щоб проілюструвати, чому це краща методологія розвитку.

Закон Лінуса:

якщо дано достатню кількість очних яблук, всі клопи дрібні.

Опоненти з відкритим кодом використовують спостереження Роберта Гласа, що оскільки кількість виявлених помилок у коді не лінійно масштабується із кількістю рецензентів, закон є помилковим. Здається, в цьому є певна заслуга. Є приклади проектів з відкритим кодом, які виявили помилки через роки після їх введення.

AppArmor

Додатокприв’язка Броня – функція обов’язкового контролю доступу на рівні ядра (MAC), яка обмежує додатки доступу до класів комп’ютерних ресурсів. Наприклад, AppArmor може дозволити текстовому процесору читати і записувати файли на локальний жорсткий диск, але заборонити йому доступ до Інтернету для надсилання повідомлень.

Нагадаємо, що після написання зловмисного програмного забезпечення, наступне найважче завдання поганих хлопців – це обдурити людей розгортати їх у своїх системах. Поширений спосіб зробити це – вставити зловмисне програмне забезпечення в якийсь абсолютно інший тип файлів, наприклад, файли субтитрів фільму. Таку програму, як AppArmor, можна налаштувати, щоб заборонити цим файлам будь-які можливості запису чи Інтернет, оскільки файл субтитрів не потребує цих функцій. При цьому будь-яке зловмисне програмне забезпечення у файлі не зможе скопіювати себе або зателефонувати додому, як щойно набраний член ботнету.

AppArmor був введений в ядро ​​Linux 2.6.36 (жовтень 2010 р.) І вперше з’явився в OpenSUSE Linux і його включено за замовчуванням в Ubuntu з 7.10. AppArmor, ймовірно, не потребує великої настройки для стандартної системи настільних ПК, оскільки його налаштування за замовчуванням досить хороші, щоб відстояти більшість спроб зловмисного програмного забезпечення. Більш глибоке пояснення того, як працює AppArmor і як його можна налаштувати, знаходиться на вікі Ubuntu.

SELinux

Sбезпека Епохитнувся Linux це ще одна система MAC, яка передує AppArmor на кілька років. Агентство національної безпеки США (NSA) створило SELinux як серію патчів ядра та інструменти для користувальницького простору. Вперше він був включений до тестової версії 2.6.0 ядра Linux (2003).

Більшість користувачів настільних комп’ютерів вважають SELinux складним у налаштуванні, а також потрібна файлова система, яка підтримує мітки, тоді як AppArmor не переймається типом файлової системи. З цих причин AppArmor перейшов у якості переважаючої системи MAC для настільних систем Linux.

Як захистити вашу машину Linux

Антивірус

В Інтернеті є статті, які стверджують, що антивірус просто не потрібен на робочому столі Linux. Цей короткозорий погляд на світ сприяє поширенню шкідливих програм. Кожен комп’ютер, підключений до Інтернету, бере участь у цій мережі та має можливість отримувати шкідливі файли. Запускати антивірус в Linux буквально нічого не варто, тому таємниця, чому деякі письменники вважають, що не використовувати антивірус Linux не варто. Існує багато свідчень про наявність зловмисного програмного забезпечення Linux.

Важливо запустити антивірус на машині Linux, навіть якщо ви відчуваєте, що не ризикуєте заразитися. Більшість настільних ПК Linux є частиною домашньої або офісної мережі, яка також включає комп’ютери Windows. Хоча навряд чи машина Linux може бути заражена вірусом Windows, вона може легко транспортувати зловмисне програмне забезпечення на машини Windows. Що ще гірше, сервери Linux часто використовуються як файлові сервери або поштові сервери в офісних середовищах, а значить, вони постійно обмінюються файлами з іншими комп’ютерами в офісі. Шкідливий файл, що зберігається на машині Linux, який надсилається на робочі станції Windows – це погано, що антивірус допоможе виявити.

ClamAV – це звичайна антивірусна програма F / LOSS, яку можна легко встановити з сховищ Ubuntu. У статті, до якої я посилався, є детальні інструкції щодо встановлення та налаштування ClamAV.

Установка його на штам Debian, такий як сам Debian, або будь-який з варіантів Ubuntu, як правило, такий же простий, як і використання apt-get.

sudo apt-get update && sudo apt-get install clamav clamtk

Ця команда повинна встановити clamav, freshclam (оновлення підписів) та графічний інтерфейс користувача (clamtk). Ви хочете оновити ClamAV відразу після встановлення, щоб переконатися, що у вас є найновіші підписи. Це можна зробити на панелі налаштувань в інтерфейсі користувача ClamTK.

ClamTK-потрібне оновлення

Або ви можете зробити це з командного рядка, використовуючи команду freshclam.

$ sudo freshclam
Процес оновлення ClamAV розпочався з 16 липня 08:58:18 2017
main.cld оновлений (версія: 58, sigs: 4566249, f-level: 60, builder: sigmgr)
daily.cld оновлений (версія: 23568, sigs: 1740160, f-level: 63, builder: neo)
bytecode.cld оновлений (версія: 306, sigs: 65, f-level: 63, builder: raynman)

Далі переконайтесь, що ClamAV сканує всі типи шкідливих програм у налаштуваннях.

ClamTK-select-all-options-1

Нарешті, має сенс встановити графік сканування, який також можна виконати на панелі “Планувальник”.

ClamTK-графік-набір

ClamAV можна встановити в дистрибутивах на базі Redhat Packagmage Manager (RPM) за допомогою yum або диспетчера специфічних для дистрибутива пакетів.

sudo yum встановити clamav clamd

Rootkits

Rootkits – це ще одна небезпека, і антивірусні програми можуть виявити їх не в змозі. Оскільки вірус може по-справжньому заразити систему лише тоді, коли ним керує користувач root або адміністратор, загальний вектор атаки для Linux полягає в тому, щоб обманути користувача встановити один з цих руткітів. Руткіт – це зловмисне програмне забезпечення, яке може отримати дозволи на кореневому рівні у вікні Linux, не знаючи про це користувача. Rootkits, як правило, поєднується з іншим, законним виглядом, програмним забезпеченням, яке спонукає користувача стати корінним для встановлення. У той час, rootkit також встановлюється, і оскільки встановлення було виконано як користувач root, тепер rootkit має і права доступу до root. Руткіти дуже важко виявити, оскільки вони мають можливість змінювати будь-який файл у системі, а значить, вони здатні прикрити свої доріжки. Деякі погані хлопці неохайні, але сканування руткітів за допомогою такої програми, як chkrootkit, іноді може виявити це. Якщо ваша система була заражена руткітом, ваш найкращий спосіб дії – припустити, що вся система порушена і форматувати її. Ви також повинні насторожено встановлювати будь-які програми із резервної копії після перевстановлення системи, якщо ви не в змозі визначити, звідки в першу чергу походить руткіт. Ви можете перевстановити rootkit.

Chkrootkit можна встановити з сховищ Ubuntu за допомогою apt-get.

$ sudo apt-get install chkrootkit

Конгруентною командою в системі на основі RPM є:

$ sudo yum встановити chkrootkit

Щоб побачити тести, які може виконувати ckrootkit, використовуйте перемикач -l (L):

$ chkrootkit -l
/ usr / sbin / chkrootkit: тести: інопланетяни asp bindshell lkm rexedcs sniffer w55808 wed scalper slapper z2 chkutmp OSX_RSPLUG amd basename biff chfn chsh cron crontab date du dirname echo egrep env find fingerd gpm grep hd gd hdcon hdcon hdspgd hdspgd hdspgd hdspgd hdspgd hdspgd hdspgd hdspgd hdspgd hdspgd hdspgd hdspgd hdfgd hdspgd hdspgd hdpgd hdspgd hdfd hdpd hdfd gd hdfd hdcon hdconft lsof пошта mingetty netstat з ім’ям passwd pidof pop2 pop3 ps pstree rpcinfo rlogind rshd слоган sendmail sshd syslogd tar tcpd tcpdump top telnetd приурочений traceroute vdir w write

Команду sudo chkrootkit можна запустити без будь-яких опцій, які запускають усі тести. Вихід з цього виду перевірки дуже багато. Критичність кожного результату знаходиться в правій колонці і може варіюватися від можливого руткіта до підозрілих файлів і нічого не знайдено.

Шукає Linux / Ebury – Операція Windigo ssh … Можливий Linux / Ebury – Операція Windigo installetd

Пошук 64-розрядного Linux Rootkit … нічого не знайдено

Пошук підозрілих файлів та файлів може зайняти деякий час … Знайдено такі підозрілі файли та каталоги:
/usr/lib/python3/dist-packages/PyQt4/uic/widget-plugins/.noinit

Перевірка `chfn ‘… не заражена

Грамотному системному адміністратору потрібно буде оцінити ці повідомлення. За своєю природою кореневища дуже важко виявити, тому chkrootkit зазвичай може повідомити вас лише тоді, коли він бачить щось не зовсім правильно. Сисадміну потрібно буде дослідити кожен випадок, щоб визначити, чи існує фактичний ризик чи є хибним позитивом.

Tripwire

Важко вести дискусію про безпеку Linux, якщо Tripwire не з’являється. Tripwire – це система виявлення вторгнень на основі хоста. Це просто означає, що він встановлений на хості (комп’ютері) замість мережі, і він може виявити, чи змінив файли зловмисник.

Я згадую лише в цій статті, щоб зазначити, що Tripwire призначений для використання на серверах, а не на настільних комп’ютерах. Теоретично це можливо встановити на робочий стіл, хоча це не його цільове призначення.

Брандмауер

Ми всі вже знайомі зі словом брандмауер на даний момент, але може бути не зрозуміло, що це робить. Справжній фізичний брандмауер – це вогнестійка стіна, яка зупиняє пожежу в одній кімнаті від поширення в іншу кімнату. Справжні брандмауери поширені в офісних будівлях та квартирних комплексах. Беручи цю концепцію до Інтернету, брандмауер – це програмне забезпечення, яке не дозволяє трафіку з одного сегмента мережі перейти в інший сегмент. Зокрема, він зупиняє трафік з Інтернету, який надходить у вашу домашню мережу, якщо спеціально не вимагається.

У більшості будинків, мабуть, є маршрутизатор сьогодні, і маршрутизатор виконує деякі основні функції брандмауера. Маршрутизатор взагалі не повинен налаштовуватись на прийняття вхідних з’єднань, але краще завжди перевіряти інструкції маршрутизатора. Хороший подвійний перевір на відкриті вхідні порти – щит Gibson Research’s Shield’s Up! порт-перевірка.

Варіанти Ubuntu поставляються із встановленим Ultimate Firewall (UFW) або у сховищах. Щоб побачити, чи встановлено він, введіть ufw у командному рядку. Якщо ви отримаєте щось на зразок $ ufw
ПОМИЛКА: недостатньо аргументів, тоді вона встановлена. Якщо він не встановлений, apt-get зробить це за вас. За бажанням встановіть gufw, якщо ви хочете, щоб графічний інтерфейс користувача налаштував UFW, хоча з ним надзвичайно просто працювати з оболонки.

$ sudo apt-get install ufw gufw

UFW не активується після установки.

$ sudo ufw статус
Статус: неактивний

Вам потрібно спершу скласти правило або два, після чого його можна активувати. Щоб дозволити тільки мій IP-доступ через SSH, команда виглядає так (використовуйте власний IP, а не 11.22.33.44):

$ sudo ufw дозволяє proto tcp з 11.22.33.44 на будь-який порт 2222

Щоб перевірити, чи минуло це, скористайтеся статусом:

$ sudo ufw статус
Статус: активний

До дії від
— —— —-
2222 ДОБАВИТИ 11.22.33.44

Щоб видалити правило, найпростіше це зробити за номером. Запустіть статус за допомогою цього параметра, а потім видаліть це правило:

$ sudo ufw статус пронумерований
Статус: активний

До дії від
— —— —-
[1] 2222 ДОБАВИТИ 11.22.33.44 $ sudo ufw delete 1
Видалення:
дозволяти з 11.22.33.44 до будь-якого порту 2222 протоколу tcp
Продовжуйте роботу (y | n)?

Щоб активувати брандмауер, використовуйте:

$ sudo ufw enable
Команда може порушити існуючі ssh-з’єднання. Продовжувати роботу (y | n)? у
Брандмауер активний та увімкнено при запуску системи

Щоб відключити його, використовуйте відключення:

$ sudo ufw відключити
Брандмауер зупинився та вимкнено під час запуску системи

UFW насправді просто передній для IPTables, як ви можете бачити, якщо ви запускаєте sudo iptables -L, коли UFW увімкнено. На IPTables є багато передніх кінців, або IPTables можна використовувати безпосередньо, але UFW робить це дуже просто.

Графічний інтерфейс дозволяє всі ті ж функції.

UFW-enable

Оновлення

Деякі з найбільш легко використовуваних векторів атак у будь-якому програмному забезпеченні відомі слабкі місця. Хакерською мовою, термін [нульовий день експлуатування] (https://en.wikipedia.org/wiki/Zero-day_ (обчислення) (або просто 0-денний) позначає вибух, який був виявлений, але ще не відомий від виробника програмного забезпечення. Фактично це дає продавцю нульові дні, щоб виправити його, як тільки вони про це дізнаються. Це означає, що нульові дні є найнебезпечнішим з усіх подвигів, тому що погані хлопці активно експлуатують його, поки постачальник скаче. Рано чи пізно постачальник виправить його та випустить оновлення для свого продукту, яке закриє цю експлуатацію..

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

З цього можна зробити висновок, що очікування оновлення програмного забезпечення на вашому комп’ютері просто залишає вашу систему відкритою протягом більш тривалого періоду часу, коли її можна буде успішно атакувати. Важливо застосувати оновлення, принаймні оновлення безпеки до вашої системи, як тільки вони практичні після їх отримання.

Як надзвичайно наочний приклад небезпеки 0 днів, нещодавня атака викупових програм WannaCry, яка заразила понад чверть мільйона комп’ютерів у понад 150 країнах, використовувала 0-денний подвиг у протоколі Microsoft Server Server Block (SMB) протоколу EternalBlue. У цьому випадку EternalBlue не був новим; загальновизнано, що це було виявлено Агенцією національної безпеки США років тому. Замість того, щоб повідомити Microsoft про вразливість свого часу, NSA про це мовчали і використовували її для атаки на комп’ютери у всьому світі роками. NSA розкрила вразливість до Microsoft лише після того, як викрадений у них хакерською групою The Shadow Brokers і опублікований у всьому світі.

Інтернет

Інтернет – це найефективніша система доставки зловмисного програмного забезпечення, коли-небудь задуманого людьми. Будь-хто та будь-де може надсилати вам зловмисне програмне забезпечення за допомогою звичайних щоденних методів, таких як електронна пошта. Якщо ви потрапили на нього і встановите зловмисне програмне забезпечення, то ваш комп’ютер може негайно почати надсилати дані поганому хлопцеві через Інтернет. У випадку з вимогами, досить швидко стане очевидним, що ваш комп’ютер заразився. Однак якщо зловмисне програмне забезпечення призначене для вербування вашого комп’ютера до ботнету або мовчки ввійти в систему всі ваші імена користувачів та паролі, ви, можливо, ніколи не помітите, що воно встановлено, якщо ви не використовуєте захист від антивірусу та зловмисного програмного забезпечення..

Недоброму хлопцеві може бути важко потрапити через брандмауер, маршрутизатори та антивірус. Атакувати зсередини простіше, обманувши вас на запущені програми. Хоча багато хто з нас стають кмітливими до фішинг-електронних листів, набагато складніше виявити атаки завантаження за допомогою драйву. Атаки, що наводяться напрокат, стосуються сайтів, які завантажують у ваш браузер шкідливий Javascript або інший виконуваний вміст, не знаючи про це. З багатьох способів зробити це, Javascript та Flash – найгірші правопорушники.

Javascript

Серфінг в Інтернеті з включеним Javascript – це запрошення до атаки. Є багато людей, які скажуть, що Інтернет повністю порушений без Javacript, а тому вимкнути його не практично, але це неправда. Використання плагіна на зразок ScriptBlock для Chrome або NoScript для Firefox дозволить вам отримати доступ одним натисканням кнопки, щоб увімкнути Javascript для тих сайтів, які потребують цього. Позиція за замовчуванням – відключити Javascript, а потім увімкнути його на кожному сайті. Це означає, що майбутні відвідування сайтів, яким ви вже довіряли, дозволять запускати Javascript.

Спалах

Adobe Flash настільки небезпечний, що я написав цілу статтю на предмет вразливості Flash. Flash має один з найвищих критичних показників вразливості будь-якого програмного забезпечення, про яке я знаю.

NoScript для Firefox блокує Flash, а також Javascript, а Chrome має Flash вимкнено за замовчуванням. Вам потрібно буде перейти з http: // chrome / settings / content, щоб увімкнути Flash у Chrome. Якщо вам потрібно зробити це, ви можете використовувати плагін типу Flashcontrol, щоб контролювати, які сайти можуть виконувати Flash.

Віртуальні приватні мережі (VPN)

OpenVPN-логотип

VPN – це стандартний рівень безпеки, про який знають більшість людей із безпеки та конфіденційності. Робочий стіл Linux – це ще одна машина, підключена до Інтернету, і, як така, не має спеціального захисту від проникнення мережі. Тому використання VPN на машині Linux так само важливо, як і використання VPN з будь-якою іншою операційною системою.

Під час використання VPN мережевий трафік, який залишає ваш робочий стіл, шифрується і не розшифровується, поки не досягне VPN-сервера, який ви використовуєте. Вхідний трафік шифрується на сервері VPN і розшифровується лише тоді, коли він надходить на вашу машину. Це означає, що ви дещо захищені від прокрадання з боку свого провайдера. Якщо у вас ситуація, коли ви користуєтесь ненадійною мережею, наприклад загальнодоступною мережею Wi-Fi, то VPN є важливим, оскільки шифрування не дозволить поганим хлопцям у цій самій мережі прочитати ваші пакети.

У наші дні зростає підтримка VPN, які підтримують Linux. Якщо у вас є технологія, ви можете створити власний VPN-сервер, використовуючи примірник Amazon EC2. Якщо ви хочете просто мати щось, що не працює, Comparitech підтримує список постачальників VPN Linux тут.

OpenVPN – найпоширеніший протокол VPN в Linux, і багато пропозицій постачальників фактично використовують OpenVPN під кришкою. OpenVPN популярний тим, що використовує надійний протокол SSL, може працювати на будь-якому порті та підтримує Perfect Forward Secrecy. Якщо ви використовуєте VPN, що постачається постачальником, шукайте той, який використовує OpenVPN.

Завантажте цілісність

Фішингові електронні листи, як правило, намагаються змусити вас зробити одне з двох речей: підманути вас увійти на підроблений сайт, щоб поганий хлопець міг вкрасти ваше ім’я користувача та пароль або надумав вас встановити на вашу систему якесь програмне забезпечення, яке принесе користь поганому хлопцеві якимось чином. Коли ефективність фішинг-листів знижується, погані хлопці повинні знайти інші способи, як нас обдурити. Один із таких способів – зробити так, щоб їх зловмисне програмне забезпечення виглядало як хороше програмне забезпечення, і ми встановлюємо його спеціально.

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

Джерело завантаження

Важливо бути обережними, що саме ви завантажуєте і звідки це завантажуєте. Наприклад, завантаження антивірусної програми з законного веб-сайту постачальника, ймовірно, нормально. Завантажити його з якогось стороннього веб-сайту з доменним іменем, яке, схоже, не пов’язане з постачальником, напевно, не нормально. Це стосується також репозиторіїв дистрибутивів Linux, які розглянуті далі в цій статті.

Файл контрольних сум

Деякі програми не дуже сприятливі для завантаження з одного місця, наприклад веб-сайту постачальника. Багато додатків, особливо програми безпеки та конфіденційності, поширюються за допомогою інших методів, таких як торенти. Без єдиного ідентифікуючого джерела завантаження важче визначити, чи можна повністю довіряти програмі. Один із методів, якими користуються деякі автори програмного забезпечення, – це забезпечити математичну контрольну суму їх застосування. Потім користувачі можуть запустити ту саму математичну функцію щодо завантаженого ними файлу, і якщо ці дві суми збігаються, ймовірно, що файл не був змінений.

MD5

Незважаючи на те, що MD5 досить надійно застаріла як надійна контрольна сума, вона все ще широко використовується. Використовуючи chkrootkit як приклад, я бачу, що підпис MD5 для zip-файлу публікується на сайті chkrootkit як a6d7851f76c79b29b053dc9d93e0a4b0. Я маю змогу довіряти цьому, оскільки він надходить безпосередньо за посиланням на офіційному сайті chkrootkit.

Потім я отримую копію того ж zip-файлу з торрента чи іншого джерела та запускаю md5sum проти мого щойно завантаженого файлу:

$ md5sum chkrootkit-m.zip
a6d7851f76c79b29b053dc9d93e0a4b0 chkrootkit-m.zip

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

Той самий процес з більш сильним алгоритмом забезпечить більш високий рівень впевненості, що завантаження не було змінено. Використання підпису SHA256 для завантаження OpenOffice – один із прикладів. Підпис OpenOffice SHA256 знаходиться на сторінці завантаження OpenOffice “

f54cbd0908bd918aa42d03b62c97bfea485070196d1ad1fe27af892da1761824 Apache_OpenOffice_4.1.3_Linux_x86_install-deb_en-GB.tar.gz

Мені потрібен як файл контрольної суми SHA256, так і моє завантаження однойменного файлу, щоб зробити цю роботу:

$ ls -l Apache_OpenOffice *
-rw-rw-r– 1 xxx xxx 145578419 16 липня 10:11 Apache_OpenOffice_4.1.3_Linux_x86_install-deb_en-GB.tar.gz
-rw-rw-r– 1 xxx xxx 125 16 липня 10:11 Apache_OpenOffice_4.1.3_Linux_x86_install-deb_en-GB.tar.gz.sha256
$
$ sha256sum -c Apache_OpenOffice_4.1.3_Linux_x86_install-deb_en-GB.tar.gz.sha256
Apache_OpenOffice_4.1.3_Linux_x86_install-deb_en-GB.tar.gz: OK

ОК у кінці останнього рядка означає, що контрольна сума SHA256 файлу tar.gz збігається.

Довірені репости

Перший шлях установки для більшості користувачів Linux – це сховища дистрибуції. Використання таких інструментів, як yum або apt-get, – це зручний спосіб встановити програмне забезпечення, яке, як відомо, сумісне з вашим конкретним дистрибутивом. Ці репортажі перевіряються та перевіряються диспетчерами з дистрибуції, тому існує досить високий рівень впевненості, що програми у репортах безпечні. Хоча може виявитись, що у програми є якась притаманна вада в дорозі, комусь буде важко зловмисно змінити програму в репо-рене і отримати це зміна повз воротарів.

Сказавши це, існує багато неофіційних репостів, і вони взагалі не охороняються. В Ubuntu програмне репо можна додавати, використовуючи apt-get та ім’я особистого архіву пакетів (PPA), подібне до цього, та замінюючи REPOSITORY_NAME на відповідний репо.

sudo apt-add-repository ppa: REPOSITORY_NAME

Зауважте, що ви повинні використовувати команду sudo, щоб додати сховище. Це ознака того, що, дотримуючись цього, ви довіряєте програмному забезпеченню в цьому PPA. Ви також будете використовувати sudo для встановлення програмного забезпечення з цього PPA, коли прийде час, тому важливо бути впевненим, що ви йому довіряєте.

Багато PPA розробники Ubuntu надаються як спосіб запропонувати більш сучасне програмне забезпечення, яке не включене в Ubuntu, або забезпечити програмне забезпечення, яке взагалі не включене в Ubuntu. Однак ви по суті встановлюєте програмне забезпечення з невідомого джерела, тому слід враховувати ті ж заходи безпеки, що й при завантаженні з веб-сайту..

Опсек

Практика операційної безпеки (OpSec) в Linux не відрізняється, ніж у будь-якій іншій операційній системі. OpSec – це практика, яку супротивник може використовувати для збору великої кількості начебто тривіальної та непов’язаної інформації про вас, а потім зібрати її разом, щоб зробити якусь дуже нетривіальну та згубну справу. Класичні приклади намагаються використовувати методи соціальної інженерії, щоб отримати інформацію про відновлення пароля, наприклад, дівочі імена матері та імена перших домашніх тварин, а потім використовувати цю інформацію для входу в обліковий запис Amazon або Apple. Звідти можна отримати дати народження, поштові адреси та, можливо, інформацію про кредитну карту, що дозволяє ще більше підняти атаку на ще важливіший рівень, такий як банківські перекази.

Важливими щоденними міркуваннями OpSec є такі речі, як:

  • Не використовуйте повторно паролі на сайтах. Понад 50 мільйонів облікових записів було взломано та продано з моменту початку роботи I Have Bew Pwned. Ці смітники – це золото для поганих хлопців, оскільки вони знають, що багато з цих комбінацій імен користувача та пароля працюватимуть на багатьох сайтах.
  • Використовуйте двофакторну автентифікацію, коли вона доступна. Двофакторна автентифікація (2FA) означає, що вам потрібно надати два типи аутентифікації, щоб увійти у свій обліковий запис. Перший, як правило, ваш пароль. Другий, як правило, є числовим кодом, який надається додатком аутентифікатора, таким як Google Authenticator, або надсилається через SMS-повідомлення на ваш телефон. Чисельні коди змінюються, як правило, щохвилини або кожного використання. Перевага в безпеці полягає в тому, що якщо поганий хлопець зміг отримати ваше ім’я користувача та пароль, все одно неможливо буде увійти до свого облікового запису без цього коду 2FA. Наразі лише невелика кількість веб-сайтів підтримує 2FA, але ви повинні ввімкнути це, де це можливо.
  • Прагніть уникати публікації в Інтернеті особистих даних, таких як ваша адреса чи дата народження. Інформацію про адресу зазвичай легко знайти, оскільки так багато організацій публікують такі речі, як списки членів або записи про пожертви.
  • Шифрування: Принаймні, використовуйте шифрування диска і переконайтеся, що ваш комп’ютер вимкнено, коли ви не використовуєте його. Це зашифрує ваш жорсткий диск, тому навіть якщо його вкрадуть, відновити дані з нього буде важко. На вищих рівнях використовуйте шифрування файлів для ваших більш чутливих файлів, щоб вони були зашифровані навіть під час роботи комп’ютера або в режимі очікування.
  • Використовуйте менеджер паролів. Дотримуватися правила №1 (не використовувати повторно паролі) майже неможливо без використання менеджера паролів. Кількість паролів, необхідних для навігації в Інтернеті, швидко перевершить можливості користувачів керувати ними вручну. Крім того, більшість менеджерів паролів мають функцію приміток. Це корисно, оскільки немає причин використовувати фактичні реальні відповіді на питання відновлення пароля. Створення неправдивих відповідей та зберігання їх як приміток у вашому менеджері паролів може зіпсувати поганих хлопців, навіть якщо їм вдалося отримати правильні відповіді..

На завершення, безпека – цілодобова робота. Немає сенсу, коли ви будете впроваджені достатньою безпекою, і ви зробите захист свого комп’ютера. Виконуючи основи, які я виклав тут, зроблять вас високими висячими фруктами та важче проникнути випадковим хакерам. Однак загрози розвиваються щодня, і вам може знадобитися змінити практику, щоб не відставати. Також найкраще планувати заздалегідь. Подумайте, що ви будете робити, коли вас зламують, а не якщо вас зламають. Невелика підготовка може зробити цей день набагато менш напруженим.

Kim Martin Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map