Обновить

Операция Lahat: новая группа Hellhounds атакует российские организации через системы на базе Linux

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели21K
Всего голосов 25: ↑23 и ↓2+29
Комментарии27

Комментарии 27

НЛО прилетело и опубликовало эту надпись здесь

Группа действует достаточно аккуратно и оставляет минимальное количество следов на скомпрометированных хостах, но нам известно о случаях компрометации через публично доступные веб-сервисы, а также атакующие могут использовать украденные учетные записи для входа по протоколу SSH. Подробнее читайте в нашем полном отчете в разделе MITRE TTPs: https://www.ptsecurity.com/ru-ru/research/pt-esc-threat-intelligence/hellhounds-operaciya-lahat/

Подробнее читайте в нашем полном отчете в разделе MITRE TTPs

Там тоже нет ничего про векторы атаки или как вообще заразились системы.

А если нет информации насчет вектора атаки, то и никак нельзя сказать что:

Причины успешных атак — слабая защищенность Linux-систем

С какого перепуга? Там может идейный/коррумпированный сисадмин ручками установил. Причем здесь Linux???

написано открытым текстом: "мы весьма редко встречаем ... средства антивирусной защиты на хостах под управлением Linux". вот поэтому и попадает.

А зачем они там? На сервере никто браузером не пользуется, файлы им не качает, письма не открывает, бинари, скаченные с торрентов не запускает.

По факту, в статье рассказывают о том, что делают с машиной после взлома. Если тебя сломали, ну это всё уже. Трояны, не трояны, какая разница, что сделает взломщик с уже взломанным хостом?

Видимо, об автоматическом взломе червём через уязвимости в программном обеспечении, как это бывает в мире Windows, в том числе в серверной части этого мира, не идёт.

А зачем они там?

В привычном пользователю виде вряд ли нужны. Но в целом я знаю реальные случаи когда взламывали через redis и потом майнили на сервере, ну и в целом довольно много уязвимостей можно найти на серверах или необновленном ПО, скан таких уязвимостей вполне себе подходит антивирусную защиту, хоть и не в совсем привычном плане

У меня тут пара вопросов:
1. А что такое "взлом через redis"? Т.е. окей, у нас есть торчащий в мир инстанс или кластер. Предположим, что так надо. Предположим, что это всё под паролями. Т.е. мы говорим об использовании уязвимостей редиса, верно?
2. Если мы говорим об уязвимости ПО, то чем поможет антивирус? Скажет, что есть CVE и надо обновить пакет? Ну, спасибо, капитан, что ещё можно ответить. Вряд-ли это новость.
Накатит адпейты сам? Тогда вопрос механизма - наверняка он будет слабо отличаться от unattended-updates для security. Если же у него какие-то большие полномочия, то он сам становится неотличим от вируса и может расширять поверхность атаки на хост.

Лично я не вижу кейс, который покрывается антивирусом и не покрывается линукс хостом. Формально, наверное, можно только какой-нибудь Upload у битрикса мониторить, не положили-ли туда чего страшного в очередной раз.

Если мы говорим об уязвимости ПО, то чем поможет антивирус?

Антивирус читает все ново созданные файлы, анализирует их и если не понравятся – блокирует. (чем, к слову, и плох так как уменьшает производительность системы иногда на порядки) Этим и поможет – помешает взломщику поставить свои инструменты. Конечно условности здесь много – распознает ли правильно антивирус вредоносные файлы, сколько будут ложно положительные срабатывания.

Но да, если взломщик через уязвимость успеет приобрести частные ключи и/или пароли, а потом по ssh выключит антивирус и закачает свой руткит, то конечно антивирус никак не поможет.

Я именно поэтому и считаю антивирусы вредными – они создают ложное ощущение защищенности.

Ну, принцип работы антивируса я знаю, видел их. Тут базовый вопрос - а каким конкретно образом взломщик ставит вам свои инструменты?

На самом деле, если мы говорим не о случае попадания на хост, вам обычно хватит базовой гигиены, чтобы вам толком ничего не могли сделать.

Потому я тоже соглашусь с вашим последним тезисом - антивирусы, как системы, в текущем виде дают только ощущение, а не пользу.

В остальном достаточно некоторой тулзы, которая скажет «эй, парень, закрой в sshd доступ для рута и по паролю. Сгенерь ключики и приватный никому не показывай, лучше даже ssh агенту. Прикрой входящие порты, которые не пользуешь. Там, где торчит listener дальше хоста, прикрой правилом для подсети, а лучше запароль и траффик зашифруй.

И права 777 не раздавай, обычно хватит чего-то типа 750, а может и 640. А может и 400.

Отдаёшь http? Проверь заголовки и прикрой скрытые файлы.

секреты где попало не храни, как и бекапы.

Пользуешь sql? Покажи запросы, посмотрим на предмет иньекций»

И потом следить за пакетами, ставить их, проверять службы на портах и вот это всё. Типа помощник по внимательности. Тогда да, можно говорить о пользе.

НЛО прилетело и опубликовало эту надпись здесь

но auditd настроить и банальную проверку бинарей на соответствие тем, что установлены из пакетов дистра реализовать же не сложно, верно?

Привет, установка и настройка auditd — несложный процесс, но без выстроенного процесса мониторинга на его основе это бесполезно, а сам по себе процесс мониторинга подразумевает сбор данных и их экспертный анализ, для чего нужны аппаратные, программные и человеческие ресурсы.

НЛО прилетело и опубликовало эту надпись здесь

На самом деле смена ssh порта это штука бесполезная. Смените и натравите на хост nmap, поймёте, что это дело секунд.

Закрывать тоже дело такое. В смысле хорошая практика, сделать белый список или убрать в подсеть и цепляться через jump host, но если он ожидает ключи, а не пароли, взламывать вас будет тем ещё делом

Трояны, не трояны, какая разница, что сделает взломщик с уже взломанным хостом?

Скомпрометировав хотя бы один хост корпоративной инфраструктуры, злоумышленники могут развивать атаку, дальше продвигаться внутри сети и реализовывать поставленные цели (осуществлять шпионаж, похищать данные, проводить атаки на другие сети или предпринимать деструктивные действия — шифровать или выводить инфраструктуру из строя).

А зачем они там? На сервере никто браузером не пользуется, файлы им не качает, письма не открывает, бинари, скаченные с торрентов не запускает.

Привет, после успешной эксплуатации уязвимости в веб-сервисе или при боковом продвижении по хостам внутри сети злоумышленники могут устанавливать образцы вредоносного программного обеспечения на зараженные хосты для получения контроля над ними.
Поэтому мы рекомендуем выполнять расширенный аудит всех хостов корпоративной инфраструктуры и использовать на них средства антивирусной защиты.

после успешной эксплуатации уязвимости в веб-сервисе или при боковом
продвижении по хостам внутри сети злоумышленники могут устанавливать
образцы вредоносного программного обеспечения на зараженные хосты для
получения контроля над ними.

ЧатГПТ пишет что ли ? если да то можно это убрать ?

мы рекомендуем выполнять расширенный аудит всех хостов корпоративной
инфраструктуры и использовать на них средства антивирусной защиты.

сигнатурный антивирус бесполезен, т.к. тривиально обходится.

поведенческий антивирус потребляет много ресурсов.

любой антивирус создает канал утечки (вспоминем за что наехали на касперского в США) и увеличивает поверхность атаки.

про аудит ничего не скажу, зависит от методов.

поэтому я рекомендую хардэндить каждый хост по идеологии zero trust и не заниматься сомнительными практиками.

ps: против уязвимых веб-приложений поможет бить по рукам веб-кодеров (программистами называть это я не буду) и WAF, но последнее не точно.

НЛО прилетело и опубликовало эту надпись здесь

можно же взломать Windows и с него, сперев пароли/ключи, залезть на соседний Linux :)

А ещё можно найти дырку в сервисе, смотрящем наружу.

Если это таргетрованная атака, то сначала всегда разведка, а дальше атакуется то, что нашли.

шеллкод, полностью написанный на языке ассемблера и использующий только системные вызовы Linux.

Может кто-нибудь объяснить для такого необразованного виндузятника как я, что здесь написано?
В моем понимании, шеллкод - это инструкции для shell, командного интерпретатора (их много, я в курсе). Как он может быть написан на ассемблере - языке для управления ЦП? mov ax, sdt_in?
Системные вызовы Linux - это на целый слой абстракций ниже шеллкода, но всё еще на пару слоев выше *ассемблера. Как, манипулируя регистрами, кому-то удалось сделать системный вызов? Реально ли вообще такие прыжки в абстракциях в одном коде?

Я не понимаю, как такое возможно, и предполагаю свою необразованность. Было бы интересно почитать об этих техниках (на уровне "для чайников", не совсем хардкор).

НЛО прилетело и опубликовало эту надпись здесь

дополню, простейшие статьи по таким методикам написания можно посмотреть на форуме wasm.in (не реклама), где собственно и кучкуются любители создавать, анализировать и ломать такого вида код. как минимум, для самообразования, можно по диагонали посмотреть. ранее на wasm.ru был раздел со статьями, сейчас это в виде постов на форуме.

сам, просто как безопасник, по диагонали посматриваю такие сайты.

есть и другие форумы, но там более неадекватные для новичков товарищи, да и везде сейчас - смотря на кого нарвёшься.

Может кто-нибудь объяснить для такого необразованного виндузятника как я, что здесь написано?В моем понимании, шеллкод - это инструкции для shell, командного интерпретатора (их много, я в курсе). Как он может быть написан на ассемблере - языке для управления ЦП? 

Привет!

Шелл-код — это двоичный исполняемый код. Свое название он получил из-за того, что обычно передает управление командной оболочке (shell на английском). Но в общем смысле это некий двоичный код, на который передается управление.

У шелл-кода нет таблицы импортов, поэтому для взаимодействия с Linux у него есть два пути:

  1. Самостоятельно получить адреса необходимых функций;

  2. Использовать системные вызовы. Авторы данного вредоносного ПО выбрали второй вариант. На языке ассемблера системный вызов выглядит следующим образом:

Заранее известны machine-id, утечка от поставщика...

измененной сигнатурой 37 13 03 00

00031337 же

в разных системах по разному, little-endian, big-endian...
поэтому сигнатуры обычно записывают в исходниках в элементах структуры типа как char[4]="\0x37\0x13\0x03\0x00";

Такая запись, может, и корректнее, но писатели явно leet-speak имели в виду

Сколько можно: каждый раз, когда я читаю подобные новости, пишут какой де линукс слабый, да незащищенный, бла-бла-бла. Рассказывают, как он прячется от дебага и как он реплицируется, кто там его написал или выложил и прочее, когда всегда и везде важен самый главный мать вашу вопрос - каким образом зловред попал на хост жертвы? Да вообще по-барабану друзья, насколько он хорошо маскируется, как прячется под легитимные юниты sustemd, или может он даже сам себя грузит в ядро как модуль и радостно правит балом - вообще пофиг. Пусть он хоть на баше написан и храниться в каталоге /usr/sbin/viruses/super_virus.sh, ты делаешь man supervirus и справка говорит тебе что это !очень! важная программа и ее нужно обязательно запустить от рута, или весь линукс поломается. Важнее всего только то, как он попал на машину и как был установлен/запущен. Все остальное по большому счету не важно. Одно дело - это открыть картинку в галерее смартофона, недоумевая, откуда она взялась там (придомовые чаты ватсап, например), и открыв картинку получить RAT на всю жизнь, который не лечиться даже вайпом data, system, user, radio и т.д. Вот это - да, действительно интересно, как хацкерам удалось провернуть такое. Или как крякается защита какой-нибудь Playstation 5, например. А тут же банальщина какая-то.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Информация

Сайт
www.ptsecurity.com
Дата регистрации
Дата основания
2002
Численность
1 001–5 000 человек
Местоположение
Россия