Темная сторона Linux. Разбираем угрозы и реальные попытки атак
Небо голубое, вода мокрая, а Linux — самая защищенная операционная система. С этим не поспоришь.
В систему встроено много функций, которые работают на ее безопасность. Ограничение прав доступа — в их числе. К тому же на страже Linux стоит крепкое сообщество пользователей. Они регулярно тестируют систему на уязвимости и выпускают патчи.
Однако утверждать, что защита здесь работает на 100%, нельзя. Как минимум никто не застрахован от проблем с обновлением системы и ошибками конфигураций.
В этой статье, которую мы подготовили вместе с частным детективом Юрием Вербицким, разберем:
почему, как и кто атакует компании, использующие Linux,
каким образом можно отследить попытки атак, рассмотрим технические подробности на примере сработавших сигнатур в NGFW.
Чего нет в этой статье >>
Мы сознательно обошли темы, связанные с атаками:
на Docker-окружение,
supply-chain с использованием зависимостей PyPi- и NPM-репозиториев,
на приложения и сервисы, которые работают на базе ядра Linux.
Сначала о фактах
Сегодня ядро Linux используется на огромном количестве платформ, в том числе на встроенных и портативных устройствах. Существуют сотни дистрибутивов, заточенных под любые задачи и уровень компетенций пользователя (кстати, если вы новичок в ИБ, то рекомендуем как можно дальше держаться от дистрибутива BlackArch).
Итак, на ядре Linux сейчас работают:
две трети веб-серверов в мире. Как сообщает W3Techs (Web Technology Surveys), Linux как платформу используют более 40% сайтов, по которым есть соответствующие данные. Если взять топ-1000, то цифра еще выше — 47,4%,
космические технологии. В частности, 32 миссии были совершены с применением Linux. Операционная система встроена в марсоход Curiosity, а SpaceX использует Linux на Dragon и Falcon9,
интернет вещей, а точнее — встраиваемые и мобильные устройства (камеры, освещение, дверные замки, умные телевизоры, датчики движения, динамики, термостаты и т.д.),
многие популярные коммутаторы, маршрутизаторы, межсетевые экраны,
решения для виртуализации и облачных вычислений. На ядре Linux строятся практически все продукты, в том числе VMware, Citrix, Docker,
суперкомпьютеры. Пример — суперкомпьютер для метеорологического агентства Великобритании GAEA. Он тоже спроектирован на базе Linux,
зловредное ПО :)
Linux обладает высокой гранулярностью, а значит, почти бесконечными возможностями настроек, управления и контроля. Что касается Windows NT, здесь вы можете отслеживать только то, что позволяет корпорация Microsoft.
Она, как вы знаете, постепенно закручивает гайки в отношениях с российскими компаниями. Именно поэтому многие клиенты Microsoft теперь присматриваются к другим операционным системам. И Linux здесь — первый кандидат.
А что не так?
Компании часто верят в сверхзащищенность GNU/Linux. Многие вовсе не задумываются о рисках при работе с системой. А о мерах, которыми эти риски нужно минимизировать, — тем более.
Криминалисты годами видят на практике, как к компрометации инфраструктуры на Linux приводят »детские» проблемы ИБ:
слабые пароли аутентификации,
непропатченные уязвимости (например, администраторы и разработчики настраивают сервер и забывают про него, ведь он же годами работает стабильно, да и «прошивка» не требует особой заботы),
ошибки конфигурирования.
Получается, что Linux можно считать самой безопасной операционной системой. Но только в теории. А на практике компании расслабляться нельзя.
Кто и как атакует
Исторический факт: самой первой угрозой ядру Linux принято считать так называемый «червь Морриса». Напомним, этим зловредом 2 ноября 1988 года атаковали сеть ARPANET. Программа использовала механизмы автоматического распространения по сети и вызвала первый в истории «отказ в обслуживании». Воды с тех пор утекло много, но принципы той вирусной атаки актуальны до сих пор.
А теперь давайте вернемся в настоящее. Атак на Linux-системы становится существенно больше. По данным Лаборатории Касперского, только за последний год их количество возросло на 126%.
За атаками стоят зловреды всех мастей: от ботнетов и майнеров, которые инфицируют абсолютно всё, что доступно и не защищено в Сети, до более уточненных решений. Последние используют высококвалифицированные специалисты, которые более избирательно и тщательно планируют свои действия. Атаки на Linux-инфраструктуру с их вредоносным ПО обычно приводят к полному уничтожению, шифрованию или захвату чувствительной информации. Кроме того, мотивом преступников также становится кибершпионаж.
При этом злоумышленники чаще демонстрируют изощренные подходы к разработке вредоносов. Например, вымогатели HelloKitty нацелены на обе платформы (Windows+Linux). А недавно исследователи обнаружили решения для шифрования гипервизоров первого уровня ESXi.
Если система скомпрометирована, то злоумышленники быстро достигают своей цели. В частности, чтобы уничтожить информацию в Linux, достаточно воспользоваться командой shred #, которая удаляет данные и перезаписывает их N-ое количество раз. Говорят, что даже ИБ-криминалист с большим опытом не сможет восстановить удаленные данные. Другой вариант — использовать команду dd с аргументом if=/dev/{u}random.
Что еще мы можем сказать об атаках на Linux-системы:
растет интерес преступников к облакам. Пример — киберкриминальная группировка TeamTNT, которая нацелена на Linux-подобные облачные и контейнерные инфраструктуры. Злоумышленники используют продвинутые трояны для удаленного доступа к скомпрометированной среде. Одним из таких инструментов является CHAOS RAT,
разработка вредоносов сложнее, чем для Windows NT,
набор ПО для атак становится все более разнообразным, распространенным и трудно обнаруживаемым. Пример — бесфайловые атаки с использованием инструмента Ezuri, который разработан на языке программирования Golang,
вымогатели DarkSide использовали в своих атаках алгоритмы шифрования Salsa20 и RSA-1024. Они одинаково хорошо справляются как с Windows, так и с Linux.
Технические подробности
Наиболее частыми и актуальными мотивами заражения инфраструктуры с Linux остаются:
организация ботнет-сети для последующей сдачи в аренду с целью проведения массированных DDoS, а также использование взломанных маршрутизаторов и IoT в качестве прокси для сокрытия атакующей инфраструктуры в целевых атаках. Во многом на ситуацию повлияло то, что в 2016 году исходный код Mirai был выложен в открытый доступ, чем и успели воспользоваться все, кто хотел,
добыча криптовалюты. Обычно такие атаки связаны с Monero, в том числе из-за особенностей архитектуры blockchain этой криптовалюты.
Именно с этими случаями инженеры ИБ чаще встречаются на практике. Обнаружить их несложно, если в компании есть NGFW с регулярным обновлением сигнатур систем обнаружения вторжения (они же IDS/IPS). И если инженер вовлечен в анализ сигнатур, то может обнаружить много всего интересного и полезного.
Взглянем на некоторые сигнатуры повнимательнее (данные собраны с одного хорошо настроенного периметрового FortiGate).
Пример 1. Сигнатура об удаленном выполнении произвольного кода в бесплатном фреймворке ThinkPHP для HTTP-сервера Apache2:
На самом деле это старая уязвимость — ей уже больше пяти лет. Однако она до сих пор широко используется в «дикой» среде.
Благодаря NGFW мы видим, как именно работает эксплойт и — что самое важное в нашем случае — полезную вирусную нагрузку, а также ее запуск. Предпринята попытка скачать исполняемый файл. Но оказывается, что образец просто так получить нельзя. Сервер, на котором размещен вредоносный код, сбрасывает соединение. Причина — не те HTTP-заголовки:
Пример 1а. Аналогичная попытка заражения, но уже с другой полезной нагрузкой:
Получаем данные и отправляем их на Virustotal. Там видим рейтинг вредоносности 38/62. На этом моменте сразу становится ясно: перед нами очередная разновидность ботнета Mirai.
Пример 2. Сигнатура об удаленном выполнении кода в прошивке устройств D-Link DSL-2750B класса Small Office\Home Office.
Уязвимость датируется 2020 годом. Эксплойт доступен в известном всем фреймворке Metasploit. Если в предыдущем случае был исполняемый ELF, то теперь при анализе мы видим shell-скрипт с расширением .sh.
Путем нехитрых манипуляций добываем сам скрипт. Наблюдаем такую картину:
Скрипт оказывается загрузчиком вредоносных исполняемых файлов для разнообразных микропроцессорных архитектур.
Чтобы понять это, мы использовали инструмент strings. С его помощью можно определить часть функционала практически любого скомпилированного вирусного софта. Инструмент предназначен для извлечения символов ASCII и UNICODE из любого файла. Практика повсеместно применяется в работе криминалистов и актуальна для Windows, Linux и Mac.
Образец под архитектуру x86 (UnHAnaAW.x86) содержит большое количество информации, которая может натолкнуть технического специалиста на размышления. На наш взгляд, вот самые занятные строки:
Жонглируя парой техник OSINT, мы нашли github-репозиторий этого вредоносного ПО. И не только его. Но не будем об этом :)
Пример 3. Сигнатура Multiple.CCTV.DVR.Vendors.Remote.Code.Execution
Здесь мы видим одноранговый ботнет Mozi, который функционирует как минимум с 2019 года. Зловред умеет эксплуатировать уязвимость от 2016 года в устройствах видеонаблюдения многочисленных (!) вендоров. Важно подчеркнуть, что он именно «умеет», но не ограничивается только этим оборудованием. Код эксплойта можно найти в свободном доступе на популярных ресурсах типа Exploit-DB и Vulners.
Выдержка из кода публичного эксплойта, которая прекрасно коррелирует с тем, что мы наблюдаем в теле сигнатуры:
Это еще не конец
Пока мы разбирали сработавшие сигнатуры, появилась идея развернуть honeypot («приманка»). Напомним, такие решения используют, чтобы заставить атакующего поверить в то, что он взаимодействует с реальной системой.
Какой именно honeypot выбрали, удалось ли приманить хакеров и чем все завершилось, расскажем в следующий раз. Следите за публикациями в нашем блоге, а лучше подпишитесь — так пропустить новую статью будет сложнее;)