Компания Vigilant применила теорию информации для борьбы с угрозами

Компания Vigilant применила теорию информации для борьбы с угрозами

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

Так, если последующий фрагмент полностью предсказуем на основании сведений о предыдущих, то можно говорить, что энтропия в рассматриваемом случае имеет нулевое значение. При равновесном выборе из двух вариантов (как в общеизвестном примере с подбрасыванием монеты) степень случайности соответствует одному биту энтропии, и так далее. В защите информации энтропию можно привлекать, скажем, для оценки надежности паролей: если абсолютно случайное кодовое слово, состоящее из восьми произвольных и ни разу не повторяющихся символов, может характеризоваться 52 битами энтропии, то при использовании определенных слов степень неопределенности пароля снижается в среднем до 18 битов - а, следовательно, взломщик может испробовать не все 252 комбинаций, а лишь наиболее вероятные 218 (существенно снизив тем самым время подбора).

Vigilant, однако, использует энтропию для других целей, а именно - для выявления атипичных образцов данных, которые могут быть соотнесены с вредоносным кодом. Похожая тактика успешно применяется в службах защиты от спама: если одна учетная запись отправляет письма на тысячи адресов, не имеющих никакой явной связи ни с ней, ни друг с другом, то можно с высокой степенью уверенности заключить, что рассылка является нежелательной. Эксперты компании уверены, что расчет показателя энтропии может быть столь же эффективно использован для отсеивания вредоносных объектов (поскольку многие инфекции генерируют случайные имена файлов), а также доменов. В частности, по данным Vigilant, степень неопределенности обычного доменного имени изменяется в пределах от 2,5 до 3,9 битов; следовательно, если энтропия превышает уровень в 4 бита, то перед нами, скорее всего, продукт работы вредоносного генератора случайных имен.

Еще один вариант применения соответствующих расчетов - борьба с программными шпионами, которые используются в долговременных атаках повышенной сложности (APT). Чтобы скрыть факт утечки сведений, шпионы часто шифруют информацию перед ее отправкой хозяину, но при передаче используют стандартный протокол HTTP, а не защищенное соединение. Обычный текст на естественном языке имеет невысокие показатели энтропии (например, для английского языка - от 0,6 до 1,5 бит); напротив, шифртекст по самой своей сущности должен характеризоваться как можно более высокой степенью непредсказуемости. Соответственно, если по обычному исходящему соединению вдруг начинают идти потоки данных с высоким показателем энтропии, то это явственно сигнализирует о попытке передать криптованные сведения - что, в свою очередь, вызывает обоснованные подозрения.

PC World

Письмо автору

Популярную ИИ-библиотеку LiteLLM заразили бэкдором через PyPI

В экосистеме ИИ-разработки всплыла неприятная история: исследователи из Endor Labs обнаружили, что популярная Python-библиотека LiteLLM, у которой больше 95 млн загрузок в месяц, была скомпрометирована в репозитории PyPI. Через заражённые версии злоумышленники распространяли многоступенчатый бэкдор.

Речь идёт о версиях 1.82.7 и 1.82.8. Причём в официальном GitHub-репозитории проекта такого вредоносного кода не было.

Проблема возникла именно в пакетах, опубликованных в PyPI: туда попал файл с закладкой, который декодировал и запускал скрытую нагрузку сразу после импорта библиотеки.

Во второй заражённой версии, 1.82.8, схема стала ещё жёстче. Пакет устанавливал .pth-файл в директорию site-packages, из-за чего вредоносный код мог запускаться вообще при любом старте Python, даже если сам LiteLLM никто не импортировал.

После запуска зловред начинал искать самое ценное: SSH-ключи, токены AWS, GCP и Azure, секреты Kubernetes, криптокошельки и другие конфиденциальные данные. Если заражение происходило в контейнерной или кластерной среде, вредонос пытался двигаться дальше по инфраструктуре, в том числе через развёртывание привилегированных подов на узлах Kubernetes.

Для закрепления на хосте атакующие, как сообщается, ставили systemd-бэкдор sysmon.service, который регулярно связывался с командным сервером и мог получать новые команды или дополнительные вредоносные модули.

Специалисты считают, что за атакой стоит группировка TeamPCP, которая в последнее время явно разошлась: до этого её уже замечали в инцидентах, затронувших GitHub Actions, Docker Hub, npm и OpenVSX.

Украденные данные, по информации исследователей, шифровались и отправлялись на сервер атакующих. Для маскировки использовались домены, внешне похожие на легитимные, например models.litellm[.]cloud и checkmarx[.]zone.

Сейчас разработчикам и DevOps-командам советуют как можно быстрее проверить окружение. Последней известной чистой версией LiteLLM считается 1.82.6. Если в системе использовались 1.82.7 или 1.82.8, нужно проверить наличие файла litellm_init.pth, артефактов вроде ~/.config/sysmon/sysmon.py и сервиса sysmon.service.

RSS: Новости на портале Anti-Malware.ru