Небезпечні вразливості linux

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

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

Що таке вразливість і їх види

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

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

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

Також всі уразливості можна поділити на локальні, які працюють тільки якщо у хакера є доступ до локального комп`ютера і віддалені, коли досить доступу через інтернет. А тепер перейдемо до списку вразливостей.

1. Dirty COW

Першою в нашому списку буде свіжа уразливість, яка була виявлена ​​цієї осені. Назва Dirty COW розшифровується як Copy on Write. Помилка виникає в файлової системі під час копіювання при записі. Це локальна уразливість, яка дозволяє отримати повний доступ до системи будь-якого звичайним користувачем.

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

Уразливість була в ядрі близько 10 років, але після виявлення була швидко усунена, хоча залишилися ще мільйони пристроїв Andoid в яких ядро ​​не оновлювалося і не думає і де цю уразливість можна експлуатувати. Уразливість отримала код CVE-2016-5195.

2. Уразливість Glibc

Уразливість отримала код CVE-2015-7547. Це була одна з найбільш обговорюваних вразливостей серед проектів з відкритим вихідним кодом. У лютому 2016 з`ясувалося, що бібліотека Glibc має дуже серйозну уразливість, яка дозволяє зловмисникові виконати свій код на віддаленій системі.

Важливо зауважити що Glibc - це реалізація стандартної бібліотеки Сі і С ++, яка використовується в більшості програм Linux, в тому числі сервісів і мов програмування таких як PHP, Python, Perl.




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

Уразливість була в бібліотеці ще з 2008 року, але після виявлення досить швидко були випущені патчі.

3. Heartbleed

У 2014 році була виявлена ​​одна з найсерйозніших за масштабом і наслідками вразливість. Вона була викликана помилкою в модулі heartdead програми OpenSSL, звідси і назва Heartbleed. Уразливість дозволяла зловмисникам отримати прямий доступ до 64 кілобайтам оперативної пам`яті сервера, атаку можна було повторювати, поки вся пам`ять не буде прочитана.

Незважаючи на те, що виправлення було випущено дуже швидко, постраждало дуже багато сайтів і додатків. Фактично уразливими були всі сайти, які використовують HTTPS для захисту трафіку. Зловмисники могли отримати паролі користувачів, їхні особисті дані і все що знаходилося в пам`яті в момент атаки. Уразливість отримала код CVE-2014-0160.

4. Stagefright

Якщо вразливість отримала кодове ім`я, це однозначно означає, що вона заслуговує на увагу. Уразливість Stagerfight не виняток. Правда, це не зовсім проблема Linux. Stagefright - це бібліотека для обробки мультимедійних форматів в Android.

Вона реалізована на C ++, а значить обходить всі захисні механізми Java. У 2015 році було виявлено цілу групу вразливостей, які дозволяли виконати віддалено довільний код у системі. Ось вони CVE-2015-1538, CVE-2015-1539, CVE-2015-3824, CVE-2015-3826, CVE-2015-3827, CVE-2015-3828 і CVE-2015-3829.




Зловмиснику було досить відправити MMS на уразливий смартфон із спеціально модифікованим медіафайлів, і він отримував повний контроль над пристроєм з можливістю записувати і читати дані з карти пам`яті. Уразливість була виправлена ​​розробниками Android але до сих пір мільйони пристроїв залишаються уразливими.

5. Уразливість нульового дня ядра

Це локальна уразливість, яка дозволяє підвищити права поточного користувача до root через помилки в системі роботи з криптографічними даними ядра, які зберігаються в пам`яті. Вона була виявлена ​​в лютому 2016 року і охоплювала всі ядра починаючи від 3.8, а це значить що уразливість існувала 4 роки.

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

6. Уразливість в MySQL

Ця вразливість отримала код CVE-2016-6662 і зачепила всі доступні версії сервера баз даних MySQL (5.7.15, 5.6.33 і 5.5.52), бази даних Oracle і клони MariaDB і PerconaDB.

Зловмисники могли отримати повний доступ до системи через SQL запит передавався код, який дозволяв замінити my.conf на свою версію і перезавантажити сервер. Також була можливість виконати шкідливий код з правами суперкористувача.

Рішення MariaDB і PerconaDB випустили патчі досить оперативно, Oracle відреагував, але набагато пізніше.

7. Shellshock

Ця вразливість була виявлена ​​в 2014 році перед тим як проіснувала 22 роки. Їй було присвоєно код CVE-2014-6271 і кодове ім`я Shellshock. Ця вразливість порівнянна за небезпекою з уже відомою нам Heartbleed. Вона викликана помилкою в інтерпретаторі команд Bash, який використовується за умовчанням в більшості дистрибутивів Linux.

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

Уразливості були піддані всі версії Bash, включаючи і 4.3, правда після виявлення проблеми розробники дуже швидко випустили виправлення.

8. Quadrooter

Це ціла серія вразливостей в Android, яка була виявлена ​​в серпні 2016. Вони отримали коди CVE-2016-5340, CVE-2016-2059, CVE-2016-2504, CVE-2016-2503. Помилку схильні до більш 900 мільйонів Android пристроїв. Всі уразливості були виявлені в драйвері ARM процесора Qualcomm і всі вони можуть використовуватися для отримання root доступу до пристрою.

Як і DirtyCOW тут не потрібно ніяких повноважень, досить встановити шкідливий додаток і воно зможе отримати всі ваші дані і передати їх зловмиснику.

9. Уразливість в OpenJDK

Це дуже серйозна уразливість linux 2016 Java машині OpenJDK з кодом CVE-2016-0636, вона зачіпає всіх користувачів, що працюють з Oracle Java SE 7 Update 97 і 8 Update 73 і 74 для Windows, Solaris, Linux і Mac OS X. Ця вразливість дозволяє зловмисникові виконати довільний код за межами Java машини, якщо ви відкриєте спеціальну сторінку в браузері з вразливою версією Java.

Це дозволяло зловмисникові отримати доступ до ваших паролів, особистих даних, а також запускати програми на вашому комп`ютері. У всіх версіях Java помилка була дуже оперативно виправлена, вона проіснувала з 2013 року.

10. Уразливість протоколу HTTP / 2

Це ціла серія вразливостей, яка була виявлена ​​в 2016 році в протоколі HTTP / 2. Вони отримали коди CVE-2015-8659, CVE-2016-0150, CVE-2016-1546, CVE-2016-2525, CVE-2016-1544. Вразливостям були піддані всі реалізації цього протоколу в Apache, Nginx Microsoft, Jetty і nghttp2.

Всі вони дозволяють зловмисникові дуже сильно уповільнити роботу веб-сервера і виконати атаку відмова від обслуговування. Наприклад, одна з помилок приводила до можливості відправки невеликого повідомлення, яке на сервері розпаковувати в гігабайти. Помилка була дуже швидко виправлена ​​і тому не викликала багато шуму в співтоваристві.

А ви в безпеці?

У цій статті ми розглянули найнебезпечніші уразливості Linux 2016, 2015 і 2014 років. Більшість з них могли завдати серйозної шкоди системам якби не були вчасно виправлені. Завдяки відкритому вихідному коду такі уразливості Linux ефективно виявляється і швидко виправляються. Тільки не забувайте оновлювати свою систему. Проблема залишається тільки з Android. Деякі пристрої вже не отримують оновлень і цю проблему поки немає рішення.

Поділися в соціальних мережах:

Схожі
Віртуальна флешка в linuxВіртуальна флешка в linux
Фахівцями google виявлена ​​критична уразливість в ос windowsФахівцями google виявлена ​​критична уразливість в ос windows
Пошук вразливостей на сайті 2017Пошук вразливостей на сайті 2017
Найстабільніші дистрибутиви linuxНайстабільніші дистрибутиви linux
Безпека php на серверіБезпека php на сервері
Чим відрізняється unix від linuxЧим відрізняється unix від linux
5 Міфів про контейнерах linux5 Міфів про контейнерах linux
У новій версії adobe flash player усунені критичні уразливостіУ новій версії adobe flash player усунені критичні уразливості
7 Міфів про linux7 Міфів про linux
Віруси і linuxВіруси і linux
» » Небезпечні вразливості linux